提到計算機,就離不開硬件和軟件,簡單點講,也是一對矛盾的統一體。一方面,硬件的發展能在很大程度上制約着軟件的運行效果,同時硬件的發展又極大促進軟件運行效果的提升;另一方面,軟件的發展又能反作用在硬件的發展速度上。軟硬件之間即相互制約又能互相促進,確實是挺有意思的:
計算機的硬件發展
個人印象里,計算機(硬件)就是是由運算器、控制器、存儲器、輸入設備和輸出設備等部分組成,之前是遙不可及,如今卻能融入到我們生活、工作的多個角落的實用工具。再次致敬喬幫主等高人為此做出的卓越貢獻。
回顧歷史,計算機的發展經歷了結繩計數、算籌、算盤等手動處理階段;帕斯卡加法器、萊布尼斯步進輪等半自動機械處理階段;而馬克1號是承接電動計算機與電子計算機的時代產物;埃尼阿克的出現,正式代表了現代電子計算機的起步。從晶體管的順利應用,電子計算機從發展到應用,實現了真正意義上的騰飛,每一代計算機的出現,都展現出了,前所未有的強大計算和數據處理能力。
電子管數字機:
應用領域局限在高機密領域和方向。硬件方面,邏輯元件采用的是真空電子管,主存儲器采用汞延遲線、陰極射線示波管靜電存儲器、磁鼓、磁芯;外存儲器采用的是磁帶。軟件方面采用的是機器語言、匯編語言。
在實際使用過程中,當時的電腦運行需要程序員提前將程序寫入到插電板上,然后,在允許使用的時間內(當時的計算機,太少,需求量太大),由程序設計工程師占用計算機,當程序運行中出現問題,需要調試,從這個層面上講在當時計算機的使用效率較低。
代表產品:ENIAC,EDSAC(Electronic Delay Storage Automatic Calculator,愛達賽克)和EDVAC(Electronic Discrete Variable Automatic Computer,愛達瓦克),IBM701,IBM709
晶體管數字機:
回顧歷史,計算機在數據存儲,數據處理,數據傳輸幾大方向上的每一次更新迭代,都會給計算機生產和應用體系帶來質的飛躍。展望未來,新型計算機技術的發展和逐步成熟也讓人感到欣喜。功能上進一步全面和強大,體積上進一步精簡和縮小,應用上進一步智能化,數據傳輸上進一步網絡化,技術上進一步跨領域跨學科融合發展。
納米計算機、分子計算機、光子計算機、量子計算機、雲計算機、生物計算機……未來的計算機雛形在今天已經上演爭奇斗艷,計算機的世界未來可期。
現代計算機的主要硬件功能
- CPU
- 負責運算和控制
- 主要參數,主頻、緩存、核數
- 分類方式:
- 常見廠商:Inter(穩定)、Amd(快)
- 接口方式:PGA針式接口,LGA觸點式:新式接口類型 現在Intel的CPU基本使用該接口
- 常見故障
- 溫度過高,散熱不良導致死機、重啟
- 內存
- 負責存儲數據,隨機存儲的高速存儲設備
- 分類
- 按品牌
- 按容量大小
- 主要參數:
- 容量
- 頻率
- 常見異常
- 兼容性問題,在擴展完內存后出現藍屏,換品牌和頻率相同的內存
- 接頭氧化,出現電腦啟動以后,屏幕不亮,用橡皮或紙巾擦一下內存接頭
- 當正常情況下,內存的使用率達到了70%以上,則說明內存不夠用了,需要加內存。
- 硬盤
- 永久存儲的設備。
- 分類:
- 按存儲方式,機械硬盤、固態硬盤
- 按應用方向,普通硬盤、企業硬盤、監控硬盤、NAS硬盤等
- 接口
- IDE、scsi、sata、sas
- 主要參數:
- 容量
- 緩存
- 機械硬盤,轉速,讀寫速率
- 固態硬盤,讀寫速度
- 常見故障
- 機械硬盤,盤片損壞
- 顯卡
- 負責顯示
- 主要指標
- 顯存
- 位寬,處理速率
- 頻率
- 顯卡分類
- 根據接口分類
- 根據應用場景分類
- 聲卡
- 網卡
- 一般主板自帶千兆網卡
- 主板
- 負責將所有的設配連接起來
- 參考指標
- 大板、小板
- 接口數量
- 支持cpu類型
- 是否繼承了三卡
- 南北橋
- 機箱、電源
- 主要參數
- 材質
- 抗靜電
- 散熱
- 空間
- 主要參數
- 鍵盤、鼠標
- 顯示器
- 音箱、耳麥
計算機軟件
計算機軟件,簡單點說是電腦運行程序、相關規程和文檔的集合。
計算機軟件的主要特點可以總結為:1,不是實體的物理存在,具體的存在效果只能通過運行過程才能了解。2,是腦力勞動的成果,和人類的邏輯能力、思維水平直接關聯。3,在創建和使用過程中,因為沒有物理實體所以就不存在磨損等情況,但需要根據實際情況即使調整即需要更新和維護。4,運行過程依賴於硬件系統。5,可以完全復制。
計算機軟件的分類,常見的分類方式有應用層面的和授權層面的。個人感覺,授權層面會隨着發展不斷淡化。應用層面,可以大致把軟件分為系統軟件和應用軟件。
系統軟件主要包括操作系統和運行開發環境兩大部分,操作系統是實現管理計算機硬件與軟件資源的程序,同時也是計算機系統的內核與基石。操作系統身負諸如管理與配置內存、決定系統資源供需的優先次序、控制輸入與輸出設備、操作網絡與管理文件系統等基本事務。運行開發環境,或者稱為支撐軟件,它主要包括環境數據庫、各種接口軟件和工具組(基本的工具組包括,比如編譯器、數據庫管理、存儲器格式化、文件系統管理、用戶身份驗證、驅動管理、網絡連接等方面)。起到了支撐各種軟件的開發與維護的作用。
應用軟件是為了某種特定的用途而被開發的軟件。它可以是一個特定的程序。也可以是一組功能聯系緊密,可以互相協作的程序的集合。
從授權層面,可以把軟件大致分為專屬軟件、自由軟件、共享軟件、免費軟件和公共軟件。
軟件的生命周期,是指從軟件定義、開發、使用、維護到報廢為止的整個過程,一般包括問題定義、可行性分析、需求分析、總體設計、詳細設計、編碼、測試和維護。
軟件的常見幾種生命周期模型或過程模型,有瀑布模型(自上而下環環相扣),原型+瀑布模型(迭代建立原型,瀑布模型實施),增量模型(先實現核心功能,主要功能、輔助功能可以在之后的更新版本中逐批次添加),迭代模型。
軟件的開發語言即編程語言,可大致分為機器語言、匯編語言、高級語言。其中機器語言最接近底層硬件系統,編制專業度高、編制效率低、運行效率高;匯編語言和高級語言相比,比較接近底層硬件系統編制專業度較高、編制效率較低、運行效率較高;高級語言最接近人類語言,相對來說編制效率高,但執行效率低。其中,在高級語言中,又可以簡單分出編譯型高級語言、解釋型高級語言等。編譯型高級語言在開發完成后需要經過編譯過程,能生成獨立運行的二進制碼形式存在的執行程序,所以一旦開發完成,運行效率比較高。解釋型語言,開發完成后,執行過程是通過解釋器,邊編譯邊執行。解釋型語言相對來說開發效率比較高,跨平台性能好,但執行效率相對較低。
編譯型語言代碼——》一次性把代碼交給編譯器——》匯編語言——》及其語言
解釋型語言代碼——》邊執行邊編譯(解釋器或者虛擬機)——》機器語言
編譯型的語言的可移植性,分為硬件的跨平台和軟件上的跨平台。硬件上的跨平台主要是考慮CPU不同的指令集,比如,intel,amd 是復雜指令集,高性能高功耗。而ARM,代表的是精簡指令集,性能精簡,功耗低。支持復雜指令集的軟件,不能完全支持精簡指令集,反之亦然,所以現在手機上的軟件和電腦上的軟件不能通用。軟件平台的可移植性,主要是在不同的操作系統之間的兼容型。
解釋型語言在跨平台方面表現良好,主要是跨平台的相關任務,基本上交給了解釋器或虛擬機。在編寫程序過程中,基本上不用過多地考慮軟件的跨平台。
計算機常見故障排查
- 定位問題
- 顯示 “ 正在啟動 ” 等自檢過程,但是啟動不起來,則是系統有問題。BIOS芯片在電腦啟動時,進行硬件檢測。如果檢測不通過,則是硬件出現問題了。
- 排除法查看硬件故障
- 主板問題
- CPU
- 內存問題
- 顯卡問題
- 硬盤
- 電源
- PE備份數據,然后重裝系統