作業系統基本概念

2021-09-29 19:47:12 字數 696 閱讀 8084

為什麼要提供系統呼叫,這是因為要將系統資源交由作業系統來進行乙個統一的協調的管理。

對於程式語言來講,作業系統提供的系統呼叫被封裝成為了乙個個的庫函式,為程式設計人員遮蔽了下層的細節。

對於有一些操作(計算機指令的執行)來說,他是危險的。所以不能讓所有的應用程式都可以執行,那麼就可以輕易的造成破壞。

所以就將指令劃分稱為特權指令和非特權指令。並且規定特權指令只能夠在核心態裡面才能夠執行。這樣就將危險操作和普通操作隔離開來了。

同時在cpu中,使用某個暫存器的乙個狀態標誌位來表示當前cpu時處於使用者態還是核心態。

所以我們很容易明白,計算機的執行實際上是不停的在使用者態和核心態之間切換。畢竟像是,作業系統資源,程序間通訊這種事情都應該是在核心態下完成的。

眾所周知的,作業系統提供為其他的應用軟體提供下層建築的基礎。而核心更是作業系統的基礎核心。

核心按照功能的整合程度可以分為大核心和微核心。

核心所必須要提供的功能有時鐘管理,中斷管理,以及原語(原子級操作)。

對於大核心來說,對比微核心的區別就是他不僅僅提供這些基礎功能,並且還提供了系統資源的管理:裝置管理,程序管理,儲存器管理。

由於核心始終是工作在核心態的,那麼大核心比之微核心的優點就是由於系統資源的管理整合在核心中,而核心又是始終工作在核心態的。所以就可以大大減少cpu在核心態和使用者態之間切換的頻率。可以提高系統的效能。

然後缺點也很明顯,混亂,難以管理。

作業系統基本概念

一.程序的基本狀態 1.初始態 2.就緒態 3.執行態 4.等待態 5.終止 相互轉換關係如下 二.執行緒和程序區別 程序 是作業系統分配資源的最小單位 執行緒 是排程的基本單元,共享所在程序的檔案資料 有自己的棧和程式計數器 一般對於許多相同或相似的任務,傾向於將他們設計為多執行緒模型。因為程序占...

作業系統 基本概念

本文為自己學習 unix環境高階程式設計 而來的學習記錄 我的學習方 是將此書作為工具書來使用,當實際工作中遇到相關的問題針對性地學習知識圓點。基礎概念從嚴格意義上說,可講作業系統定義為一種軟體,它控制計算機硬體資源,提供程式執行環境。系統呼叫 共用函式庫 shell 應用程式 unix系統登陸 a...

作業系統基本概念

1 桌面作業系統 macos linux 2 伺服器作業系統 windows server 3 嵌入式作業系統 linux 4 移動裝置作業系統 iosandroid 基於linux 1965 年之前的時候,電腦並不像現在一樣普遍,它可不是一般人能碰的起的,除非是軍事或者學院的研究機構,而且當時大型...