狠狠撸

狠狠撸Share a Scribd company logo
硬體與作業系統簡介
林芳苓 2014/10/1
近代电脑系统
3
CPU的組成
程式計數器
指令暫存器
程式狀態字組
暫存器
算術邏輯
單元
控制邏輯
CPU
記憶體程式區段中的某個指令
指令擷取
指令解碼
資料擷取
指令執行
資料儲存
CPU的運作流程
4
何謂暫存器?
? 位於CPU之中的小小記憶體,存取速度比主記
憶體快得多,但是所儲存的資料量則比主記憶
體少得多
? 可以分為3類:
– 資料暫存器:用來暫時存放指令運算所需的資料
– 位址暫存器:用來儲存位址相關資訊,包括索引暫
存器、區段指標暫存器、堆疊指標暫存器等
– 狀態與控制暫存器:例如程式計數器、指令暫存器,
以及記錄狀態資訊的程式狀態字組
5
圖1-9 簡化的電腦指令範例
運算碼 記憶體位址
(a) 指令格式
運算碼 描述
0000 將資料從記憶體載入暫存器A
0001 將資料從記憶體載入暫存器B
0010 將暫存器A、B的值相加,放入暫存器A中
0011 將暫存器A中的值寫入記憶體
(b) 前4個運算碼列表
6
圖1-10 指令執行範例(一)
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 0
0 2 1 6
程式計數器
暫存器A
暫存器B
指令暫存器
(a) 擷取位址100的指令
(將資料從記憶體載入暫存器A)
暫存器
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 2
0 2 1 6
0 0 0 1
程式計數器
暫存器A
暫存器B
指令暫存器
(b) 擷取位址216的資料
暫存器
7
圖1-10 指令執行範例(二)
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 2
1 2 1 8
程式計數器
暫存器A
暫存器B
指令暫存器
(c) 擷取位址102的指令
(將資料從記憶體載入暫存器B)
暫存器
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 4
1 2 1 8
0 0 0 1
0 0 1 6
程式計數器
暫存器A
暫存器B
指令暫存器
(d) 擷取位址218的資料
暫存器
0 0 0 1
8
圖1-10 指令執行範例(三)
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 4
2 0 0 0
0 0 0 1
0 0 1 6
程式計數器
暫存器A
暫存器B
指令暫存器
(e) 擷取位址104的指令
(A+B->A)
暫存器
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 6
2 0 0 0
0 0 1 7
0 0 1 6
程式計數器
暫存器A
暫存器B
指令暫存器
(f) 將A+B的值放回暫存器A
暫存器
9
圖1-10 指令執行範例(四)
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 0 1216
0 0 1 6218
記憶體
1 0 6
3 2 1 6
0 0 1 7
0 0 1 6
程式計數器
暫存器A
暫存器B
指令暫存器
(g) 擷取位址106的指令
(將暫存器A中的值寫入記憶體)
暫存器
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
0 0 1 7216
0 0 1 6218
記憶體
1 0 8
3 2 1 6
0 0 1 7
0 0 1 6
程式計數器
暫存器A
暫存器B
指令暫存器
(h) 將資料寫回位址216
暫存器
储存体结构
? 任何要被執行的程式都必須儲存在可複寫記憶體,稱之為主記憶體
[又叫做隨機存取記憶體 ( random-access memory,或 RAM )] 。
? load 指令從主記憶體搬移一個字元組到 CPU 內部的暫存器,而
store 指令則是搬移暫存器的內容到主記憶體。
? 大部份電腦系統提供輔助記憶體 ( secondary storage) 做為主記憶
體的延伸。輔助記憶體的主要要求是能夠永久保存大量的資料。
? 不同儲存系統間的主要差別是︰速度、價格、大小和揮發性。
? 裝置快取記憶體可以改善因為兩種元件之間的存取時間或傳輸速率差
別所造成的性能差別。
储存体结构
I/O 結構
13
中斷
? 由週邊裝置或計時器送給CPU的信號,代表需
要盡快處理的某個事件
? 中斷事件的處理不能對使用者程式的執行結果
造成干擾
? 中斷的處理:
– CPU先完成目前的指令
– 跳出正常的執行步驟,執行中斷處理常式,完成中
斷事件的處理
– 再回到原本的程式,繼續下個指令的執行
? 處理中斷之前,必須先儲存原本程式的各個旗
標和暫存器內容,在處理完成之後再回復原狀。
14
圖1-13 程式計數器在中斷處理時的變化
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
記憶體
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
記憶體
0 2 1 6A00
1 2 1 8A02
2 0 0 0FFC
3 2 1 6FFE
0 2 1 6
1 2 1 8
1 0 0
中斷處理程式
起始位址
系統堆疊
區段
程式計數器
(a) 中斷發生前
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
記憶體
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
記憶體
0 2 1 6A00
1 2 1 8A02
2 0 0 0FFC
3 2 1 6FFE
0 2 1 6
1 2 1 8
0 1 0 0
A 0 0
程式計數器
(b) 跳到中斷處理程式時
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
記憶體
0 2 1 6100
1 2 1 8102
2 0 0 0104
3 2 1 6106
記憶體
0 2 1 6A00
1 2 1 8A02
2 0 0 0FFC
3 2 1 6FFE
0 2 1 6
1 2 1 8
0 1 0 0
1 0 0
程式計數器
(c) 繼續執行
電腦系統架構
? 1.3.1 單一處理器系統
– 僅有一個一般處理器之系統
? 1.3.2 多處理器系統
– 擁有一個以上的處理器,共同使用匯流排、時脈、記憶體、周邊裝置。
– 使用多處理器系統有三個優點:1. 增加產量 2.經濟度量 3. 增加可信度。
– 目前有兩種類別:1. 非對稱多元處理(asymmetric multiprocessing)-主
處理器會指定每個處理器不同之任務,有主從關係 2.對稱多元處理
(symmetric multiprocessing, SMP)-每個處理器執行相同之任務,沒有主
從關係。
計時器(Timer)
? 計時器(Timer)
–必須保證作業系統維持控制;必須防止使用者程式陷入一個無窮迴
路之中,而永遠不把控制權交還給作業系統。為達成此目的,可以
使用一個計時器(timer)
–計時器設定在某段時間之後中斷電腦。其週期可以是固定的 (例如,
1/60秒)或可變的(例如,從1毫秒到1秒)。
–用計時器來防止使用者程式執行太久。簡單的技巧是用程式允許的
時間量設定計數器之初值。例如,具有 7分鐘時間限制的程式設定
計數器初值為420。每過 1秒鐘,計時器就會發出中斷且計數器值
減 1。只要計數器值為正,控制權仍回到使用者程式。當計數器值
擴成負值時,作業系統因為程式超過其時間限制而終止執行。
行程管理
? 行程(process)可以視為執行中的程式,行程需要某些特定的資源,
包括 CPU時間、記憶體、檔案和I/O裝置等,以完成其工作。這些資
源在行程產生或執行時就會配置給它,除了實體資源和邏輯資源的配
置之外,有些起始資料 (輸入)也可能會隨著行程的產生而產生。
? 行程管理方面,作業系統必須提供下列的功能:
–在CPU上的行程及執行緒排班
–使用者和系統行程的產生與刪除
–行程的暫停和恢復
–提供行程同步機制
–提供行程通信機制
主記憶體管理
? 主記憶體是現代電腦系統運作的中心,程式執行時,它必須映對到絕
對位址並且載入主記憶體之中。
? 程式執行時,藉由產生程式指令和資料的絕對位址,才能從記憶體存
取它們。最後,在程式結束時,它釋放出記憶體為可用狀態,以及載
入下一個程式並且執行它。
? 記憶體管理方面,作業系統必須具有下列的功能:
–記錄正在使用的記憶體部份以及是誰在使用
–在記憶體空間可用時決定載入的行程
–在需要時配置和回收記憶體空間
儲存體管理
? 作業系統提供資訊儲存一個一致性的邏輯觀點,目的是為了讓使用者
能更方便的使用電腦系統。
? 作業系統摘取儲存裝置的實體特性並將之定義成邏輯儲存單元,也就
是檔案。
? 檔案系統管理
–檔案的建立與刪除
–組織檔案的目錄建立與刪除
–作為處理檔案和目錄的原始支援
–檔案與輔助記憶體的對映
–穩定 (非揮發性)儲存裝置上的檔案備份
? 大量儲存體管理
–可用空間管理
–記憶體配置
–磁碟排班
?快取记忆体(肠补肠丑颈苍驳)
I/O 系統
? I/O 系統
–記憶體管理構成要素包括緩衝、快取和連線同時週邊作業。
–通用裝置驅動程式介面
–特定硬體裝置驅動程式
保護與保密
? 電腦系統有許多使用者並且允許同時執行多個行程,則存取資料必須
井然有序。
? 為了這個目的,必須提供一些功能以確保檔案、記憶體區段、CPU和其
它的資源只能經由作業系統所認可並授權的行程適當地操作。
特殊用途系統
? 1.10.1 即時嵌入系統
– 嵌入式計算機是現存最普遍形式的計算機。這些裝置到處都可發現,
從汽車引擎和製造用機器人到VCRs 和微波爐。
– 嵌入式系統通常大部份執行即時作業系統(real-time operating
systems)。即時系統是使用在使用者對於處理器的操作或資料的傳
送在時間要求上很嚴謹,因此它通常是用在專門應用範圍中的控制
裝置。
– 感應器將資料傳送給電腦。電腦必須將資料加以分析,而且可能控
制調整以便修正感應器輸入。
– 控制科學貫驗、皆學影像系統、工業控制系統,以及一些顯示系統
都屬於即時系統的例子。其它還有自動引擎燃料噴射系統、家用器
具控制器,以及武器系統也是即時系統。
? 1.10.2 多媒體系統
–大多數的作業系統被設計成處理傳統的資料,像是文字檔、程式、
處理文字文件和試算表。
? 1.10.3 手持系統
–手持系統 (handheld system)包括了個人數位助理 (Personal
digital assistants, PDAs),例如掌上型電腦與行動電話和許多
使用特殊用途嵌入式作業系統。
–手持系統和應用的發展者面臨到許多挑戰,大部份的限制都是因為
這些裝置尺寸限制。
特殊用途系統
計算環境
? 傳統計算
–系統不是整批式就是交談式。整批式系統以預定方式輸入(從檔案
或其它資料來源),處理了大多數的工作,交談式系統等候來自使
用者的輸入。為了將計算資源的使用最佳化,多個使用者共用系統
的時間。分時系統對這些系統使用了計時器和排班演算法以便快速
地經過中央處理器循環程序給予每個使用者資源的分享。
? 客戶 - 伺服器系統 (Client-Server System)
–計算伺服器系統(computer-server system),檔案伺服器系統
(file-server system) 。
? 對等式運算 (peer to peer)
– 當節點參與網路,以集中式分佈服務在網路註冊它的服務。任何節
點需要服務,首先接觸這個集中式分佈服務,來決定那一個節點提
供服務,剩下來的通信在客戶端和服務提供者之間發生。
– 表現像客戶端的點,必須首先發現那一個節點提供需求服務,藉由
播送服務的需求,給網路上所有其它的節點。節點提供回應需求的
服務,為了支持這個方法,必須提供搜尋協定,讓點發現在網路上
其它點所提供的服務。
? 以網頁為基礎的計算
–網頁客戶端(Windows 95,98)伺服器(Windows XP, Linux..) 。
計算環境

More Related Content

H wand os