計算機作業系統 概述

2022-07-17 20:18:09 字數 1379 閱讀 4976

併發是指巨集觀上在一段時間內能同時執行多個程式,而並行則指同一時刻能執行多個指令。

並行需要硬體支援,如多流水線、多核處理器或者分布式計算系統。

作業系統通過引入程序和執行緒,使得程式能夠併發執行。

共享是指系統中的資源可以被多個併發程序共同使用。

有兩種共享方式:互斥共享和同時共享。

互斥共享的資源稱為臨界資源,例如印表機等,在同一時刻只允許乙個程序訪問,需要用同步機制來實現互斥訪問。

虛擬技術把乙個物理實體轉換為多個邏輯實體。

主要有兩種虛擬技術:時(時間)分復用技術和空(空間)分復用技術。

多個程序能在同乙個處理器上併發執行使用了時分復用技術,讓每個程序輪流占用處理器,每次只執行一小個時間片並快速切換。

虛擬記憶體使用了空分復用技術,它將物理記憶體抽象為位址空間,每個程序都有各自的位址空間。位址空間的頁被對映到物理記憶體,位址空間的頁並不需要全部在物理記憶體中,當使用到乙個沒有在物理記憶體的頁時,執行頁面置換演算法,將該頁置換到記憶體中。

非同步指程序不是一次性執行完畢,而是走走停停,以不可知的速度向前推進。

程序控制、程序同步、程序通訊、死鎖處理、處理機排程等。

記憶體分配、位址對映、記憶體保護與共享、虛擬記憶體等。

檔案儲存空間的管理、目錄管理、檔案讀寫管理和保護等。

完成使用者的 i/o 請求,方便使用者使用各種裝置,並提高裝置的利用率。

主要包括緩衝管理、裝置分配、裝置處理、虛擬裝置等。

如果乙個程序在使用者態需要使用核心態的功能,就進行系統呼叫從而陷入核心,由作業系統代為完成。

linux 的系統呼叫主要有以下這些:

task

commands

程序控制

fork(); exit(); wait();

程序通訊

pipe(); shmget(); mmap();

檔案操作

open(); read(); write();

裝置操作

ioctl(); read(); write();

資訊維護

getpid(); alarm(); sleep();

安全chmod(); umask(); chown();

大核心是將作業系統功能作為乙個緊密結合的整體放到核心。

由於各模組共享資訊,因此有很高的效能。

由於作業系統不斷複雜,因此將一部分作業系統功能移出核心,從而降低核心的複雜性。移出的部分根據分層的原則劃分成若干服務,相互獨立。

在微核心結構下,作業系統被劃分成小的、定義良好的模組,只有微核心這乙個模組執行在核心態,其餘模組執行在使用者態。

因為需要頻繁地在使用者態和核心態之間進行切換,所以會有一定的效能損失。

由 cpu 執行指令的內部事件引起,如非法操作碼、位址越界、算術溢位等。

在使用者程式中使用系統呼叫。

計算機作業系統概述

計算機系統 電子數字計算機,是一種能夠自行按照已設定的程式進行資料處理的電子裝置,是軟體與硬體相結合 面向系統 側重應用的自動化求解工具,計算機技術迅猛發展,從科學計算 資料處理等應用領域,迅速擴充套件到實時控制 輔助設計 智慧型模擬等諸多領域,今天計算機無所不在,深入社會生活的各個領域,深深改變了...

計算機作業系統概述

三層結構概念 作業系統 linux,windows,mac.計算機硬體 cpu,記憶體,顯示器.例子 我們雙擊開啟乙個檔案,其實是作業系統把檔案內容從硬碟載入到記憶體中,關閉檔案,內容又寫回硬碟存著了,其實,這個檔案就是作業系統提供給應用程式 使用者操作硬碟的一種功能 明白點 作業系統提供了檔案這個...

計算機作業系統 作業系統概述

最近在學習計算機作業系統,記錄一些筆記在部落格上,以供再次學習 1.計算機硬體 軟體資源的管理者 2.使用者使用計算機硬體 軟體的介面 提高計算機資源利用率和系統效能 方便使用者,人機互動 物理器件發展 cpu的位寬度 快速外存 光器件等,以及計算機體系結構的不斷發展。1.多個使用者分時 單個使用者...