01計算機操作系統-啓動和中斷,異常,系統調用

操作系統運行的基礎常識

主要講解了操作系統的作用,以及操作系統是怎樣提供服務的

操作系統的作用

主要分爲:控制軟件,管理應用程序,爲應用程序提供服務,殺死應用程序;資源管理,管理外設,分配資源
操作系統作爲介質有(進程->CPU 文件->磁盤 地址空間->內存),操作系統是應用程序和計算機硬件的紐帶
操作系統分爲:shell和kernel。
kernel是負責CPU的調度,物理內存管理,虛擬內存管理,文件系統管理,中斷處理與設備驅動
OS kernel 具有併發的特性,即在一顆CPU上跑多個程序,這裏就涉及到保持與恢復機制
併發與並行的區別,併發是一個時刻只有一個程序,並行需要多個CPU,在一個時刻有多個程序在運行

OS啓動

首先Bios將Bootloader從disk引導到相應扇區,然後Bootloader將os的代碼和Data拷貝到內存,並跳轉到操作系統的起始地址。
內存空間的變化大體上像這樣:
(Bios Data->Bootloader->free space->Bios Rom->free space)
(Bios Data->Bootloader->free space->Bios Rom->OS->free space)

中斷,異常和系統調用

中斷:就是OS與外部設備交互的,它是異步完成的,並且是透明的,對應用程序透明
異常:是與軟件交互的,當應用程序發生處理錯誤的時候,OS會決定殺死應用程序,還是重新執行;它是同步的;
系統調用:是爲應用程序提供服務的,它可以是異步或者同步,對響應是等待和持續的

中斷異常處理機制

其核心的就是保存與恢復機制
其中硬件需要設置中斷標記(這部分是由CPU初始化完成的)。1.需要將內部與外部事件設置中斷標記,2.形成中斷標記的ID
軟件1.保存當前的處理狀態,2.中斷服務程序處理,3.消除中斷標記,4.恢復之前的狀態

異常

保存現場——》異常處理(kill or recall)——》恢復現場

系統調用(system call)

應用程序與OS Kernel交互,主要是提供系統提供的API實現的。
win32 API——>win
Posix API——>Posix based sys
Java API——>java 虛擬機(是基於上面兩個中的一個)

OS爲了保證操作系統的安全,會將應用程序與內核隔離,他們分別跑在不同的堆棧區,也涉及到用戶態與內核態的轉變,這裏會影響效率,但是這是值得的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章