自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

成為“黑客”前,必須學習的“操作系統(tǒng)架構體系”

系統(tǒng) 服務器
我們先做個比喻,計算機就好比一棟具備"智能功能的大樓",操作系統(tǒng)就是負責這棟"智能大樓"協(xié)調、管理和控制的"總控中心",計算機硬件就是組成這棟大樓的"鋼筋、水泥",應用軟件就是大樓里一個個具體的"環(huán)境、消防、人員監(jiān)控系統(tǒng)"。

 我們先做個比喻,計算機就好比一棟具備"智能功能的大樓",操作系統(tǒng)就是負責這棟"智能大樓"協(xié)調、管理和控制的"總控中心",計算機硬件就是組成這棟大樓的"鋼筋、水泥",應用軟件就是大樓里一個個具體的"環(huán)境、消防、人員監(jiān)控系統(tǒng)"。這時候如果要入侵這棟智能大樓,我們最重要奪取哪一個關鍵點?我相信大家一定會選擇"總控中心"。因此對于黑客學習內容里關鍵的一部分就是對于操作系統(tǒng)整體架構的掌握。

今天就以本篇文章,讓大家對計算機系統(tǒng)架構有個初步認識!便于未來的學習中對操作系統(tǒng)有個更深刻的理解。

一、 操作系統(tǒng)的定義

操作系統(tǒng)(英語:operating system,作OS)是管理與資源的,同時也是計算機系統(tǒng)的內核與基石。操作系統(tǒng)需要處理如管理與配置、決定系統(tǒng)資源供需的優(yōu)先次序、控制輸入與輸出設備、操作與管理等基本事務。操作系統(tǒng)也提供一個讓用戶與系統(tǒng)交互的操作界面。

操作系統(tǒng)是作為計算機硬件和計算機用戶之間的中介的程序。操作系統(tǒng)的目的是為用戶提供方便且有效地執(zhí)行程序的環(huán)境。操作系統(tǒng)是管理計算機硬件的軟件,硬件必須提供合適的機制來保證計算機系統(tǒng)的正確性,以及確保系統(tǒng)不受用戶程序干擾正常運行。操作系統(tǒng)龐大而復雜,因此它必須被分塊構造。每一塊都是系統(tǒng)中明確定義的一部分,具有嚴格定義的輸入、輸出和功能。

操作系統(tǒng)由操作系統(tǒng)的內核(運行于內核態(tài),管理硬件資源)以及系統(tǒng)調用(運行于用戶態(tài),為應用程序員寫的應用程序提供系統(tǒng)調用接口)兩部分組成,所以,單純的說操作系統(tǒng)是運行于內核態(tài)的,是不準確的。

二、 操作系統(tǒng)的目標和作用

1、操作系統(tǒng)的目標:

1)有效性:提高系統(tǒng)資源利用率;提高系統(tǒng)的吞吐量。

2)方便性:

3)可擴充性:

4)開放性:開放性是指操作系統(tǒng)能遵循世界標準規(guī)范,特別是遵循開放系統(tǒng)互聯(lián)(OSI) 國際標準。凡遵循國際標準所開放的硬件和軟件,均能彼此兼容,可方便的實現(xiàn)互連。

2、操作系統(tǒng)的作用:

1)OS 作為用戶與計算機硬件系統(tǒng)之間的接口:OS 處于用戶與計算機硬件系統(tǒng)之間,用戶通過 OS 來使用計算機系統(tǒng)。

 

 

①命令方式:這是指由OS 提供了一組聯(lián)機命令接口,以允許用戶通過鍵盤輸入有關命令來取得操作系統(tǒng)的服務,并控制用戶程序的運行。

②系統(tǒng)調用方式:OS 提供了一組系統(tǒng)調用,用戶可在自己的應用程序中通過相應的系統(tǒng)調用,來實現(xiàn)與操作系統(tǒng)的通信,并取得它的服務。

③圖形、窗口方式:這是當前使用最為方便、最為廣泛的接口,它允許用戶通過屏幕上的窗口和圖標來實現(xiàn)與操作系統(tǒng)的通信,并取得它的服務。

2)OS 作為計算機系統(tǒng)資源的管理者

系統(tǒng)資源分為四類:處理器、存儲器、I/O設備、信息(數(shù)據(jù)和程序)。OS 的主要功能也正是針對這四類資源進行有效的管理,即:處理機管理,用于分配和控制處理機;存儲器管理,主要負責內存的分配與回收;I/O 設備管理,負責 I/O設備的分配與操縱;文件管理,負責文件的存取、共享和保護。

當一個計算機系統(tǒng)同時供多個用戶使用時,用戶對系統(tǒng)中共享資源的需求(包括數(shù)量和時間)可能發(fā)生沖突,為了更好的管理好這些共享資源(包括硬件和信息)的使用,操作系統(tǒng)必須記錄下各種資源的使用情況,對使用資源的請求進行授權,協(xié)調諸用戶對共享資源的使用,避免發(fā)生沖突,并計算使用資源的費用等。

3)OS 實現(xiàn)了對計算機資源的抽象

對于一個完全無軟件的計算機系統(tǒng)(即裸機),它向用戶提供的是實際硬件接口(物理接口),用戶必須對物理接口的實現(xiàn)細節(jié)有充分的了解,并利用機器指令進行編程,因此該物理機器必定是難以使用的。

在裸機上鋪設的 I/O軟件隱藏了對 I/O 設備操作的具體細節(jié),向上提供了一組抽象的 I/O 設備。

OS 是鋪設在計算機硬件上的多層系統(tǒng)軟件,它們不僅增強了系統(tǒng)的功能,而且還隱藏了對硬件操作的細節(jié),由它們實現(xiàn)了對計算機硬件操作的多個層次的抽象。

三、 操作系統(tǒng)的結構

1、單一體結構

單一體結構是最早期的結構,這時整個OS是一個巨大的單一體,運行在內核態(tài)下,為用戶提供服務,如下圖所示。

單一體結構各功能塊之間關系復雜,修改困難,牽一發(fā)而動全身,且容易形成循環(huán)調用造成死鎖,于是有了下面的層次關系。

2、分層結構

將操作系統(tǒng)的功能分成不同的層次,低層次的功能為緊鄰其上一個層次的功能提供服務,而高層次的功能又為更高一個層次的功能提供服務,如下圖所示。

分層結構的主要優(yōu)點:①易保證系統(tǒng)的正確性。自上而下的設計方式,是所有的設計中的決定都是有序的,或者說是建立在較為可靠的基礎上,這樣比較容易保證整個系統(tǒng)的正確性。②易擴充和易維護性。在系統(tǒng)中增加、修改或替換一個層次中的模塊或整個層次,只要不改變相應層次間的接口,就不會影響其它層次,這必將使系統(tǒng)維護和擴充變得更加容易。

分層結構的主要缺點:系統(tǒng)效率降低了。由于層次結構是分層單向依賴的,因此必須在相鄰層之間都要建立層次間的通信機制,OS 每執(zhí)行一個功能,通常要自上而下地穿越多個層次,這無疑會增加系統(tǒng)的通信開銷,從而導致系統(tǒng)效率的降低。

3、微內核結構

從單一體和層次化結構的圖中可以看出,操作系統(tǒng)的所有功能都在內核態(tài)下運行。但是,從用戶態(tài)轉為內核態(tài)是有時間成本的,這樣就會造成OS的效率低下。于是,人們將操作系統(tǒng)的核心中的核心才放在內核態(tài)運行,其他功能都遷移到用戶態(tài)運行,于是就有了下面的微內核結構。

微內核操作系統(tǒng)的優(yōu)點:

1)提高了系統(tǒng)的可擴展性由于微內核 OS 的許多功能是由相對獨立的服務器軟件來實現(xiàn)的,當開發(fā)了新的硬件和軟件時,微內核 OS 只需在相應的服務器中增加新的功能,或再增加一個專門的服務器。

2)增強了系統(tǒng)的可靠性由于微內核是出于精心設計和嚴格測試的,容易保證其正確性;另一方面是它提供了規(guī)范而精簡的應用程序接口(API),為微內核外部的程序編制高質量的代碼創(chuàng)造了條件。此外,由于所有服務器都是運行在用戶態(tài),服務器與服務器之間采用的是消息傳遞通信機制,因此,當某個服務器出現(xiàn)錯誤時,不會影響內核,也不會影響其他服務器。

3)可移植性在微內核結構的操作系統(tǒng)中,所有與特定 CPU 和 I/O 設備硬件有關的代碼,均放在內核和內核下面的硬件隱藏層中,而操作系統(tǒng)其它絕大部分(即各種服務器)均與硬件平臺無關,因而,把操作系統(tǒng)移植到另一個計算機硬件平臺上所需的修改是比較小的。

4)提供了對分布式系統(tǒng)的支持由于在微內核 OS 中,客戶和服務器之間以及服務器和服務器之間的通信,是采用消息傳遞通信機制進行的,致使微內核 OS 能很好地支持分布式系統(tǒng)和網(wǎng)絡系統(tǒng)。事實上,只要在分布式系統(tǒng)中賦予所有進程和服務器唯一的標識符,在微內核中再配置一張系統(tǒng)映射表(即進程和服務器的標識符與它們所駐留的機器之間的對應表),在進行客戶和服務器通信時,只需在所發(fā)送的消息中表上所發(fā)送進程和接收進程的標識符,微內核便可利用系統(tǒng)映射表,將消息發(fā)往目標,而無論目標是駐留在哪臺機器上。

5)融入了面向對象技術在設計微內核 OS 時,采用了面向對象的技術,其中的"封裝"、"繼承"、"對象類"和"多態(tài)性",以及在對象之間采用消息傳遞機制等,都十分有利于提高系統(tǒng)的的"正確性"、"可靠性"、"易修改性"、"易擴展性"等,而且還能顯著地減少開發(fā)系統(tǒng)所付出的開銷。

微內核系統(tǒng)存在的問題:在微內核 OS 中,由于客戶和服務器及服務器和服務器之間的通信,都需通過微內核,只是同樣的服務請求至少需要四次上下文切換。第一次是發(fā)生在客戶發(fā)送請求消息給內核,以請求取得某服務器特定的服務時;第二次是發(fā)生在由內核把客戶的請求消息發(fā)往服務器時,第三次是當服務器完成客戶的請求后,把響應消息發(fā)送到內核時;第四次是在內核將響應消息發(fā)送給客戶時。實際情況是,當某個服務器自身尚無能力完成客戶請求,而需要其他服務器幫助時,如下圖所示,其中的文件服務器還需要磁盤服務器的幫助,這時就需要進行上下文的切換。

為了改善運行效率,可以重新把一些常用的操作系統(tǒng)的基本功能,由服務器移入微內核中,這樣可使客戶對常用操作系統(tǒng)的功能的請求所發(fā)生的用戶/內核模式和上下文切換的次數(shù)。但是這又會使微內核的容量明顯的增大,在小型接口定義和適應性方面的有點也有所下降,同時也提高了微內核的設計代價

四、 操作系統(tǒng)的功能

主要功能:

1、隱藏了硬件調用接口,為應用程序員提供調用硬件資源的更好,更簡單,更清晰的模型(系統(tǒng)調用接口)。應用程序員有了這些接口后,就不用再考慮操作硬件的細節(jié),專心開發(fā)自己的應用程序即可。

例如:操作系統(tǒng)提供了文件這個抽象概念,對文件的操作就是對磁盤的操作,有了文件我們無需再去考慮關于磁盤的讀寫控制(比如控制磁盤轉動,移動磁頭讀寫數(shù)據(jù)等細節(jié)),

2、將應用程序對硬件資源的競態(tài)請求變得有序化

例如:很多應用軟件其實是共享一套計算機硬件,比方說有可能有三個應用程序同時需要申請打印機來輸出內容,那么a程序競爭到了打印機資源就打印,然后可能是b競爭到打印機資源,也可能是c,這就導致了無序,打印機可能打印一段a的內容然后又去打印c,操作系統(tǒng)的一個功能就是將這種無序變得有序。

詳細功能:

(1) 處理機管理功能

處理機管理的主要功能是創(chuàng)建和撤銷進程,對諸進程的運行進行協(xié)調,實現(xiàn)進程之間的信息交換,以及按照一定的算法把處理及分配給進程。

1、進程控制

進程控制的主要功能是為作業(yè)創(chuàng)建進程,撤銷已結束的進程,以及控制進程在運行過程中的狀態(tài)轉換。

2、進程同步

進程同步的主要任務是為多個進程的運行進行協(xié)調。有兩種協(xié)調方式:

1)進程互斥方式:這是指諸進程在對臨界資源進行訪問時,應采用互斥方式;

2)進程同步方式:這是指在相互合作去完成功能任務的諸進程間,由同步機構對他們的執(zhí)行次序加以協(xié)調。

3、進程通信

在多道程序環(huán)境下,為了加速應用程序的運行,應在系統(tǒng)中建立多個進程,并且再為一個進程建立若干個線程,由這些進程(線程)相互合作去完成一個共同的任務。

4、調度

1)作業(yè)調度

作業(yè)調度的基本任務是從后備隊列中按照一定的算法,選擇出若干個作業(yè),為他們分配運行所需的資源。在將他們調入內存后,便分別為他們建立進程,使他們都成為可能獲得處理機的就緒進程,并按照一定的算法將他們插入就緒隊列。

2)進程調度

進程調度的任務是從進程的就緒隊列中,按照一定的算法選出一個進程,把處理機分配給它,并為它設置運行現(xiàn)場,使進程投入執(zhí)行。值得提出的是,在多線程OS中,通常是把線程作為獨立運行和分配處理機的基本單位,為此,須把就緒線程排成一個隊列,每次調度時,是從就緒線程隊列中選出一個線程,把處理機分配給它。

(2) 存儲器管理功能

存儲器的主要任務是為多道程序的運行提供良好的環(huán)境,方便用戶使用存儲器,提高存儲器的利用率以及能從邏輯上擴充內存。

1、內存分配

內存分配的主要任務是為每道程序分配內存空間,使它們"各得其所";提高存儲器的利用率,以減少不可用的內存空間;允許正在運行的程序申請附加的內存空間,以適應程序和數(shù)據(jù)動態(tài)增長的需要。

為了實現(xiàn)內存分配,在內存分配的機制中應具有這樣的結構功能:

1)內存分配數(shù)據(jù)結構。該結構用于記錄內存空間的使用情況,作為內存分配的依據(jù)。

2)內存分配功能。系統(tǒng)按照一定的內存分配算法為用戶程序分配內存空間。

3)內存回收功能。系統(tǒng)對用用戶不再需要的內存,通過用戶的釋放請求去完成系統(tǒng)的回收功能。

2、內存保護

內存保護的主要任務是確保每道用戶程序都只在自己的內存空間內運行,彼此互不干擾;決不允許用戶程序訪問操作系統(tǒng)的程序和數(shù)據(jù);也決不允許用戶程序轉移到非共享的其他用戶程序中去執(zhí)行。

3、地址映射

4、內存擴充

為了能在邏輯上擴充內存,系統(tǒng)必須具有內存擴充機制,用于實現(xiàn)下述各功能:

1)請求調入功能。

允許在裝入一部分用戶程序和數(shù)據(jù)的情況下,便能啟動該程序運行。在程序運行過程中,若發(fā)現(xiàn)要繼續(xù)運行時所需的程序和數(shù)據(jù)尚未裝入內存,可向OS發(fā)出請求,由OS從磁盤中將所需部分調入內存,以便繼續(xù)運行。

2)置換功能。

若發(fā)現(xiàn)在內存中已無足夠的空間來裝入需要調入的程序和數(shù)據(jù)時,系統(tǒng)應能將內存中的一部分暫時不用的程序和數(shù)據(jù)調至盤上,以騰出內存空間,然后再將所需調入的部分裝入內存。

(3) 設備管理功能

完成用戶進程提出的 I/O 請求;為用戶進程分配所需的 I/O 設備;提高 I/O 設備和 CPU 的利用率;提高 I/O 速度;方便用戶使用 I/O 設備。

設備管理應具有:緩沖管理,設備分配,設備處理以及虛擬設備等功能。

1、緩沖管理:

2、設備分配:

設備分配的基本任務是根據(jù)用戶進程的 I/O 請求、系統(tǒng)的現(xiàn)有資源情況以及按某種設備的分配策略,為之分配其所需的設備。

3、設備處理:

設備處理的基本任務是用于實現(xiàn) CPU 和設備控制之間的通信。

4、虛擬設備:

(4) 文件管理功能

文件管理的主要任務是對用戶文件和系統(tǒng)文件進行管理,以方便用戶使用,并保證文件的安全性。

為此,文件管理應具有對文件存儲空間的管理、目錄管理、文件的讀/寫管理,以及文件的共享與保護等功能。

1、文件存儲空間的管理

為每個文件分配必要的外存空間,提高外存利用率,并能有助于提高文件系統(tǒng)的存、取速度。

2、目錄管理

為每個文件建立其目錄項,并對眾多的目錄項加以有效的組織,以實現(xiàn)方便的按名存取,即用戶只需提供文件名便可對該文件進行存取。

3、文件的讀/寫管理和保護

1)文件的讀、寫管理

根據(jù)用戶的請求,從外存中讀取數(shù)據(jù),或將數(shù)據(jù)寫入外存。

2)文件保護

①防止未經核準的用戶存取文件

②防止冒名頂替存取文件

③防止以不正確的方式使用文件

(5) 操作系統(tǒng)與用戶之間的接口

用戶與操作系統(tǒng)的接口:

1、用戶接口

它是提供給用戶使用的接口,用戶可通過該接口取得操作系統(tǒng)的服務。

1)聯(lián)機用戶接口

為聯(lián)機用戶提供,它由一組鍵盤操作命令及命令解釋程序所組成。

2)脫機用戶接口

為批處理作業(yè)的用戶提供的,故也稱批處理用戶接口。該接口由一組作業(yè)控制語言(JCL)組成。批處理作業(yè)的用戶不能直接與自己的作業(yè)交互作用,只能委托系統(tǒng)代替用戶對作業(yè)進行干預和控制。這里的作業(yè)控制語言 JCL 便是把需要對作業(yè)進行的控制和干預事先寫在作業(yè)說明書上,然后將作業(yè)和作業(yè)說明書一起提供給系統(tǒng)。

3)圖形用戶接口

圖形用戶接口采用了圖形化的操作界面,用非常容易識別的各種圖標將系統(tǒng)的各項功能、各種應用程序和文件,直觀、逼真的表示出來。

2、程序接口

是為用戶程序在執(zhí)行中訪問系統(tǒng)資源而設置的,是用戶程序取得操作系統(tǒng)服務的唯一途徑。

5、 主流操作系統(tǒng)架構圖

1)、Windows操作系統(tǒng)架構圖

2、Linux操作系統(tǒng)架構圖

系統(tǒng)一般有4個主要部分:

內核、shell、文件系統(tǒng)和應用程序。內核、shell和文件系統(tǒng)一起形成了基本的結構,它們使得用戶可以運行程序、管理文件并使用系統(tǒng)。

 

3、Android系統(tǒng)架構圖

4、Mac系統(tǒng)架構圖

責任編輯:武曉燕 來源: 手機電腦黑客
相關推薦

2018-11-30 14:47:13

2018-11-30 08:19:48

2009-12-11 17:20:08

2011-03-11 09:19:08

2010-05-06 17:59:50

Unix命令

2018-12-07 08:15:03

2013-08-15 10:23:03

LinuxUnix操作系統(tǒng)

2009-05-07 11:32:48

2010-04-09 11:24:38

Unix操作系統(tǒng)

2009-12-16 09:43:12

Linux操作系統(tǒng)

2010-04-16 17:19:58

Unix操作系統(tǒng)

2014-09-01 15:55:45

2013-06-03 11:03:57

2021-12-29 11:22:15

Linux操作系統(tǒng)Windows

2010-04-10 12:34:06

2010-04-12 13:34:48

2010-04-20 17:11:33

Unix操作系統(tǒng)

2010-04-16 18:19:32

Unix操作系統(tǒng)

2022-01-25 09:23:58

Linux操作系

2019-05-20 09:28:09

物聯(lián)網(wǎng)操作系統(tǒng)IOT
點贊
收藏

51CTO技術棧公眾號