Computer:现代计算机操作系统的四大基本特性(并发/共享/虚拟/异步)
Computer:現(xiàn)代計(jì)算機(jī)操作系統(tǒng)的四大基本特性(并發(fā)/共享/虛擬/異步)
導(dǎo)讀:現(xiàn)代操作系統(tǒng)都具有并發(fā)、共享、虛擬和異步的特性,其中并發(fā)是其它三個(gè)特征的前提。共享和并發(fā)是操作系統(tǒng)的兩個(gè)最基本的特征,虛擬以并發(fā)和共享為前提,異步是并發(fā)和共享的必然結(jié)果。
目錄
現(xiàn)代計(jì)算機(jī)操作系統(tǒng)的四大基本特性(并發(fā)/共享/虛擬/異步)
1、并發(fā)性
1.1、并發(fā)與并行區(qū)別
2、共享性
3、虛擬性
4、異步性
現(xiàn)代計(jì)算機(jī)操作系統(tǒng)的四大基本特性(并發(fā)/共享/虛擬/異步)
1、并發(fā)性
1.1、并發(fā)與并行區(qū)別
? ? ? 并發(fā)是指宏觀上在一段時(shí)間內(nèi)能同時(shí)運(yùn)行多個(gè)程序,而并行則指同一時(shí)刻能運(yùn)行多個(gè)指令。并發(fā)需要硬件支持,如多流水線或者多處理器。
- 并發(fā)性是指兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生;操作系統(tǒng)通過(guò)引入進(jìn)程和線程,使得程序能夠并發(fā)運(yùn)行。在多道程序環(huán)境下,并發(fā)性是指在一段時(shí)間內(nèi)宏觀上有多個(gè)程序同時(shí)運(yùn)行,但在單處理機(jī)系統(tǒng)中,每一時(shí)刻只能由一道程序執(zhí)行,所以微觀上程序是分時(shí)地交替執(zhí)行的。
- 并行性是指兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生。
? ? ? 舉個(gè)栗子:在8ms內(nèi),0-2ms程序A1運(yùn)行; 2-4ms程序A2運(yùn)行;4-6ms程序A3執(zhí)行;6-8ms程序A4運(yùn)行。可知,在8秒的間隔內(nèi),宏觀上有4個(gè)程序在同時(shí)運(yùn)行,但是在微觀上,程序A1、A2、A3、A4是分時(shí)交替執(zhí)行的。
1.2、單核和多核的并發(fā)與并行
? ? ? ? ?一個(gè)單核處理機(jī)(CPU)同一時(shí)刻只能執(zhí)行一個(gè)程序,因此操作系統(tǒng)會(huì)負(fù)責(zé)協(xié)調(diào)多個(gè)程序交替執(zhí)行(這些程序微觀上是交替執(zhí)行的,但宏觀上看起來(lái)就像在同時(shí)執(zhí)行)。
? ? ? ? ?當(dāng)今計(jì)算機(jī)一般是多核?CPU,比如4核或8核?CPU,這意味著同一時(shí)刻可以有四個(gè)程序并行執(zhí)行,但是操作系統(tǒng)的并發(fā)性依然必不可少。
??
1.3、引入進(jìn)程實(shí)現(xiàn)并發(fā)
? ? ? ? ?在一個(gè)未引入進(jìn)程的系統(tǒng)中,屬于同一個(gè)應(yīng)用程序的計(jì)算程序和I/O程序之間只能是順序執(zhí)行;并且當(dāng)其中一個(gè)程序執(zhí)行時(shí),另一個(gè)程序不能執(zhí)行。
? ? ? ? ?如果為兩個(gè)進(jìn)程分別建立一個(gè)進(jìn)程(Process),這兩個(gè)進(jìn)程便可以并發(fā)執(zhí)行了。實(shí)行這種方式,極大的提高了系統(tǒng)資源的利用率,增加了系統(tǒng)的吞吐量。多個(gè)進(jìn)程之間可以并發(fā)執(zhí)行和交換信息。
2、共享性
共享是指系統(tǒng)中的資源可以被多個(gè)并發(fā)進(jìn)程共同使用。
有兩種共享方式:互斥共享和同時(shí)共享。
互斥共享的資源稱為臨界資源,例如打印機(jī)等,在同一時(shí)間只允許一個(gè)進(jìn)程訪問(wèn),需要用同步
機(jī)制來(lái)實(shí)現(xiàn)對(duì)臨界資源的訪問(wèn)。
所謂共享是指系統(tǒng)中的資源可供內(nèi)存中多個(gè)并發(fā)執(zhí)行的進(jìn)程(線程)共同使用;
3、虛擬性
虛擬技術(shù)把一個(gè)物理實(shí)體轉(zhuǎn)換為多個(gè)邏輯實(shí)體。
主要有兩種虛擬技術(shù):時(shí)分復(fù)用技術(shù)和空分復(fù)用技術(shù)。例如多個(gè)進(jìn)程能在同一個(gè)處理器上并發(fā)
執(zhí)行使用了時(shí)分復(fù)用技術(shù),讓每個(gè)進(jìn)程輪流占有處理器,每次只執(zhí)行一小個(gè)時(shí)間片并快速切
換。
所謂虛擬是指通過(guò)某項(xiàng)技術(shù)把一個(gè)物理實(shí)體變?yōu)槿舾蓚€(gè)邏輯上的對(duì)應(yīng);
4、異步性
異步指進(jìn)程不是一次性執(zhí)行完畢,而是走走停停,以不可知的速度向前推進(jìn)。
產(chǎn)生原因:操作系統(tǒng)允許多個(gè)并發(fā)進(jìn)程共享資源,使得每個(gè)進(jìn)程的運(yùn)行過(guò)程受到其他進(jìn)程制約,使進(jìn)程的執(zhí)行不是一氣呵成,而是以停停走走的方式運(yùn)行。
總結(jié)
以上是生活随笔為你收集整理的Computer:现代计算机操作系统的四大基本特性(并发/共享/虚拟/异步)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 成功解决在excel表中通过数学函数转换
- 下一篇: Python编程语言学习:包导入和模块搜