-----------------------siwuxie095
計算機和作業系統基礎知識
1、作業系統(operating system,簡稱 os),是管理計算機硬體與
軟體資源的電腦程式,同時也是計算機系統的核心與基石
作業系統需要處理如管理與配置記憶體、決定系統資源供需的優先次序、
控制輸入與輸出裝置、操作網路與管理檔案系統等基本事務。作業系統
也提供乙個讓使用者與系統互動的操作介面 2
、作業系統位於底層硬體與使用者之間,是兩者溝通的橋梁。使用者可以
通過作業系統的使用者介面,輸入命令。作業系統則對命令進行解釋,驅
動硬體裝置,實現使用者要求。以現代標準而言,乙個標準pc的作業系統
應該提供以下的功能:
(1)程序管理(processing management)
(2)記憶體管理(memory management)
(3)檔案系統(file system)
(4)網路通訊(networking)
(5)安全機制(security)
(6)使用者介面(user inte***ce)
(7)驅動程式(device drivers) 3
、指令集架構(instruction set architecture,簡稱 isa),又稱指令
集 或 指令集體系,是計算機體系結構中與程式設計有關的部分,包含了
基本資料型別,指令集,暫存器,定址模式,儲存體系,中斷,異常處理
以及外部 i/o
指令集架構包含一系列的
opcode
即操作碼(機器語言),以及由特定
處理器執行的基本命令 4
、指令是由指令集架構定義的單個的 cpu 操作。在更廣泛的意義上,
指令可以是任何可執行程式的元素的表述,如:位元組碼
指令分為特殊指令和普通指令,只有作業系統才能執行特殊指令(也稱
特權指令),應用程式只能執行普通指令。應用程式要想執行特殊指令,
必須通過系統呼叫 5
、兩種呼叫:
(1)系統呼叫(system call)
(2)庫呼叫(library call) 6
、兩種使用者介面(user inte***ce,簡稱 ui):
(1)圖形使用者介面(graphical user inte***ce,簡稱 gui)
(2)命令列介面(command line inte***ce,簡稱 cli) 7
、兩種介面:
了應用程式(或者其他型別)和作業系統之間或其他應用程式的低階介面
它就是軟體系統不同組成部分銜接的約定,即 是作業系統 或 庫提供給應用
程式呼叫使用的**
abi
不同於 api,api 定義了源**和庫之間的介面,因此同樣的**可以
在支援這個 api 的任何系統中編譯,然而 abi 允許編譯好的目標**在使
用相容 abi 的系統中無需改動就能執行 8
、作業系統分類
(1)windows
(2)unix-like
(類 unix) 1
)linux 2
)minix 3
)macos
(macos 的由來:從 mac os x,改為 os x,再改為 macos。
截止 2018/08/26,再未變動)
(3)unix 1
)unix system
(截止 2018/05/31,最新版是 unix system v release 4,
包含 aix、solaris、hp-ux 等) 2
)bsd unix
(分為三種:freebsd、netbsd、openbsd)
「簡單來說,分為 system(嫡出) 和 bsd(庶出)」 附:
關於 macos 到底是 unix 還是 unix-like,這個問題一直存在爭議,不過爭論
(a)(b)
(c) 9
、程式執行空間:
(1)核心空間(kernel space):核心、核心擴充、驅動程式執行在核心空間上
(2)使用者空間(user space):應用程式執行在使用者空間上
「執行空間(space)也可以理解為執行模式(mode)」 10
、可移植作業系統介面(portable operating system inte***ce,
簡稱 posix),是 ieee 為要在各種 unix 作業系統上執行軟體,而
定義 api 的一系列互相關聯的標準的總稱
「最後乙個 x 表明了其對 unix api 的傳承」 11
、兩種格式:
(1)可移植可執行(portable executable),也就是 pe 格式,是一種用
於可執行檔案、目標檔案和動態鏈結庫的檔案格式,主要使用在 windows
作業系統上 pe
檔案格式主要用於exe檔案、dll檔案、.sys(驅動程式)和其他檔案 型別
(2)可執行和可鏈結格式(executable and linkable format),也就是
elf 格式,是一種用於可執行檔案、目標檔案、共享庫和核心轉儲的標準文
件格式不同作業系統上應用程式和庫的格式
應用程式格式 庫
windows pe
格式(portable executable)
dll(dynamic link library),動態鏈結庫
linux/unix
elf格式(executable and linkable format) so
(shared object) 12
、計算機的五大組成:
運算器、控制器、儲存器、輸入裝置、輸出裝置
13、六種開源協議的異同如下圖所示:bsd、apache、gpl、lgpl、mit、mozilla
《計算機基礎知識REVIEW》 作業系統 排程演算法
排程演算法是根據系統的資源分配策略所規定的資源分配演算法。排程演算法必須實現幾個相互衝突的目標 程序響應的時間盡可能快,後台作業的吞吐量盡可能高,程序的飢餓現象盡可能避免,低優先順序和高優先順序程序的需要盡可能調和等等。目前存在以下幾種排程演算法,適用於不同的系統,以實現不同資源管理目標 1 先來先...
計算機基礎知識 計算機基礎知識彙總
計算機專業的那六大件 組成原理,作業系統,資料庫,編譯原理,計算機網路,資料結構,其次還得加上分布式的基礎知識,因為現在的系統都變成分布式的了。如果你是做應用層開發的,那幾門課程中的有些內容和日常工作關聯度不大,我挑那些最重要的來說一說,也算是乙個最小集合吧!1,計算機組成原理 如果你不是做作業系統...
計算機基礎 作業系統
作業系統是控制計算機整體執行的軟體。它為使用者提供了可以儲存和檢索檔案的方法,可與請求執行程式的介面,以及執行被請求程式所必須的環境。作業系統用來協調計算機內部活動以及與外部世界的通訊。將計算機硬體轉化為有用的工具。軟體型別 系統軟體提供了應用軟體所需要的基礎架構。作業系統元件 使用者介面 完成與使...