北京交通大學操作系統(tǒng)講義_第1頁
北京交通大學操作系統(tǒng)講義_第2頁
北京交通大學操作系統(tǒng)講義_第3頁
北京交通大學操作系統(tǒng)講義_第4頁
北京交通大學操作系統(tǒng)講義_第5頁
已閱讀5頁,還剩134頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

北京交通大學操作系統(tǒng)主要相關課程先修課程:

數(shù)據(jù)結(jié)構接口技術、計算機組成原理匯編語言程序設計C語言程序設計并行/后續(xù)課程:計算機體系結(jié)構、操作系統(tǒng)實踐11/10/2023北京交通大學操作系統(tǒng)教材

計算機操作系統(tǒng)湯子瀛哲鳳屏湯小丹

西安電子科技大學出版社參考教材

計算機操作系統(tǒng)教程張堯?qū)W史美林清華大學出版社

操作系統(tǒng)教程陳向群楊芙清北京大學出版社

Windows操作系統(tǒng)原理尤晉元史美林陳向群機械工業(yè)出版社

操作系統(tǒng)基礎屠立德屠祁清華大學出版社

操作系統(tǒng)教程孫仲秀高等教育出版社

操作系統(tǒng)教程-原理和實例分析孟靜高等教育出版社

AppliedOperatingSystemConcept

AbrahanSilberschatz高等教育出版社

TheDesignofTheUnixOperatingSystemManriceJ.Bach人民郵電出版社

現(xiàn)代操作系統(tǒng)陳向群等譯機械工業(yè)出版社11/10/2023北京交通大學操作系統(tǒng)教材內(nèi)容刪減說明第三章處理機調(diào)度與死鎖3.3實時調(diào)度3.4多處理機系統(tǒng)中的調(diào)度第五章設備管理5.6磁盤存儲器管理第八章網(wǎng)絡操作系統(tǒng)第九章系統(tǒng)安全性11/10/2023北京交通大學操作系統(tǒng)課程主要內(nèi)容及教學安排操作系統(tǒng)引論(10學時)處理機管理(18學時)存儲管理(12學時)設備管理(8學時)文件系統(tǒng)(8學時)操作系統(tǒng)設計實例(8學時)11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標1.1.2操作系統(tǒng)的作用1.1.3操作系統(tǒng)的組成及層次模型1.1.4操作系統(tǒng)的定義1.1.5操作系統(tǒng)舉例11/10/2023北京交通大學操作系統(tǒng)計算機系統(tǒng)的組成計算機系統(tǒng)(層次結(jié)構)軟件硬件及固件(裸機)應用軟件系統(tǒng)軟件編輯程序/匯編程序/編譯程序/數(shù)據(jù)庫管理系統(tǒng)操作系統(tǒng)11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)在計算機系統(tǒng)中的地位11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的設計目標方便性提供用戶接口,使計算機系統(tǒng)更方便使用有效性通過有效管理和分配軟、硬件資源及合理組織計算機工作流程來改善資源利用率、提高系統(tǒng)吞吐量可擴充性計算機硬件和體系結(jié)構的迅猛發(fā)展及其所對應的更高的功能和性能要求開放性不同廠家與不同類型的計算機及其設備的網(wǎng)絡化集成和協(xié)同工作,實現(xiàn)應用程序可移植性和互操作性11/10/2023北京交通大學操作系統(tǒng)1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標1.1.2操作系統(tǒng)的作用1.1.3操作系統(tǒng)的組成及層次模型1.1.4操作系統(tǒng)的定義1.1.5操作系統(tǒng)舉例11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的作用(1)

用戶與計算機硬件系統(tǒng)之間的接口命令方式(操作系統(tǒng)外殼)面向一般用戶命令行/菜單式/命令腳本式/圖形用戶接口系統(tǒng)調(diào)用方式(操作系統(tǒng)內(nèi)核)面向程序開發(fā)人員形式上類似于過程調(diào)用,編制程序中使用11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的作用(2)

計算機系統(tǒng)資源的管理者管理對象處理器、存儲器、外圍設備以及信息(數(shù)據(jù)和軟件)管理內(nèi)容資源的分配、回收和訪問操作記錄資源的當前狀態(tài)(數(shù)量和使用情況)、相應管理策略(共享、保護及用戶權限)11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的作用(3)

用作擴充機器(或虛擬機)在裸機上添加處理機管理、存儲管理、設備管理、文件管理、作業(yè)管理、圖形化用戶接口等功能,使計算機系統(tǒng)功能顯著增強、使用更為方便11/10/2023北京交通大學操作系統(tǒng)1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標1.1.2操作系統(tǒng)的作用1.1.3操作系統(tǒng)的組成及層次模型1.1.4操作系統(tǒng)的定義1.1.5操作系統(tǒng)舉例11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的組成及層次模型用戶接口(命令接口、程序接口、圖形用戶接口)對對象進行操縱和管理的軟件集合(處理機/存儲器/設備/文件/作業(yè)管理軟件)操作系統(tǒng)對象(處理機、存儲器、設備、文件和作業(yè))11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)層次模型細化11/10/2023北京交通大學操作系統(tǒng)1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標1.1.2操作系統(tǒng)的作用1.1.3操作系統(tǒng)的組成及層次模型1.1.4操作系統(tǒng)的定義1.1.5操作系統(tǒng)舉例11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的定義操作系統(tǒng)是最基本的系統(tǒng)軟件,是一組有效管理和控制計算機硬件和軟件資源、合理地對各類作業(yè)進行調(diào)度以組織和控制系統(tǒng)工作流程,并方便用戶使用計算機的程序的集合。11/10/2023北京交通大學操作系統(tǒng)1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標1.1.2操作系統(tǒng)的作用1.1.3操作系統(tǒng)的組成及層次模型1.1.4操作系統(tǒng)的定義1.1.5操作系統(tǒng)舉例11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)舉例MSDOSWindows(NT、9X、200X、Vista)UNIX(Solaris)Linux(RedHat、RedFlag)NovellNetware11/10/2023北京交通大學操作系統(tǒng)1.1什么是操作系統(tǒng)1.1.1操作系統(tǒng)的地位和目標1.1.2操作系統(tǒng)的作用1.1.3操作系統(tǒng)的組成及層次模型1.1.4操作系統(tǒng)的定義1.1.5操作系統(tǒng)舉例11/10/2023北京交通大學操作系統(tǒng)作業(yè)題1.1什么是操作系統(tǒng)?用自己的話談談你對操作系統(tǒng)概念的認識與理解。11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)計算機系統(tǒng)體系結(jié)構11/10/2023北京交通大學操作系統(tǒng)計算機系統(tǒng)硬件組成11/10/2023北京交通大學操作系統(tǒng)內(nèi)存系統(tǒng)MemorySystems主存MainMemoryRAM&ROM實際地址空間realaddressspace或稱作物理地址空間,按字節(jié)編址BytesRAM&ROM保留用于設備或以后它用高速緩沖CacheMemories因內(nèi)存尋址訪問效率和局部性原理而引入由硬件管理,對軟件不可見??11/10/2023北京交通大學操作系統(tǒng)高速緩存CacheMemories關聯(lián)存儲器及置換(淘汰)算法11/10/2023北京交通大學操作系統(tǒng)輸入輸出系統(tǒng)組織方式11/10/2023北京交通大學操作系統(tǒng)用戶指令集體系結(jié)構UserISA寄存器架構通用寄存器、特定類型寄存器(如浮點數(shù))專用寄存器(PC、鏈接/棧指針/條件碼/循環(huán)計數(shù)寄存器)內(nèi)存架構邏輯/虛擬地址空間線性編址eg.0x00000000?0x80000000?0xFFFFFFFF分段編址eg.0#~15#分段基址?段寄存器值用戶指令——運算型內(nèi)存存取指令、分支跳轉(zhuǎn)指令整數(shù)算術、邏輯及移位指令浮點指令分段256MB虛存252B11/10/2023北京交通大學操作系統(tǒng)應用程序(用戶級)3#級用戶模式特權級別與環(huán)結(jié)構用戶模式、特權/超級/系統(tǒng)模式系統(tǒng)模式(a)擴展級2#級(b)系統(tǒng)服務1#級內(nèi)核0#級11/10/2023北京交通大學操作系統(tǒng)系統(tǒng)指令集體系結(jié)構SystemISA系統(tǒng)寄存器架構系統(tǒng)時鐘寄存器、陷入與中斷寄存器陷入與中斷屏蔽寄存器、頁/段表指針寄存器處理器資源管理支持系統(tǒng)調(diào)用/返回指令、中斷定時器及設置機制內(nèi)存資源管理支持虛擬地址空間到物理地址空間的映射(頁表&TLB)I/O資源管理支持I/O設備尋址與I/O指令陷入與中斷11/10/2023北京交通大學操作系統(tǒng)陷入與中斷陷入指令執(zhí)行時因異常情況(如運算溢出、缺頁、違規(guī)內(nèi)存訪問、非法操作碼等)產(chǎn)生的控制遷移副效應陷入流程(異常→設置陷入寄存器→查看陷入屏蔽寄存器裁決→終止“陷入”指令并置處理器準確狀態(tài)→保存程序計數(shù)及各寄存器值→處理器置特權模式并交操作系統(tǒng)控制權→操作系統(tǒng)保存未被硬件保存的“陷入”進程的關鍵狀態(tài)信息,經(jīng)分析轉(zhuǎn)特定異常陷入處理例程,待完成返回后恢復現(xiàn)場和轉(zhuǎn)原“陷入”進程“異?!敝噶钐幚^續(xù)執(zhí)行)另“系統(tǒng)調(diào)用”式陷入(訪管指令int21H/int0x80)中斷由相對于當前執(zhí)行進程的外部事件(如I/O操作、定時)引起,與特定指令執(zhí)行無關流程?11/10/2023北京交通大學操作系統(tǒng)IA-32體系結(jié)構舉例說明系統(tǒng)寄存器架構標志寄存器EFLAGS(通用標志、系統(tǒng)標志)內(nèi)存管理寄存器GDTR、IDTR、LDTR、TR控制寄存器CR0、CR1、CR2、CR3保護模式內(nèi)存管理內(nèi)存尋址(分段尋址技術;邏輯地址14+32)地址變換(分段[段選擇符→段描述符]+分頁)內(nèi)存保護(全局/局部描述符表、特權級)中斷和異常處理中斷向量與中斷描述符表、中斷源與異常源任務管理(任務狀態(tài)段)任務切換與過程調(diào)用不同!11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)其它硬件基礎舉例說明內(nèi)存地址空間布局、基本輸入輸出系統(tǒng)BIOSCMOS存儲器與實時時鐘RTI/O端口尋址和訪問控制方式主要使用獨立編址方式,部分使用統(tǒng)一編址方式中斷控制器Intel8259A、定時計數(shù)器Intel8254DMA控制器Intel8237A、鍵盤控制器Intel8042串行控制卡RS-232標準顯示卡MDA/CGA/EGA/VGA軟盤控制器和硬盤控制器11/10/2023北京交通大學操作系統(tǒng)作業(yè)題1.2設想由你自己負責組織一個項目團隊來構建操作系統(tǒng),你應當要求項目成員事先學習和掌握哪些硬件基礎知識?并給出你對相關知識的理解與總結(jié)。11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.3.1操作系統(tǒng)接口分類1.3.2聯(lián)機命令接口1.3.3圖形用戶接口1.3.4系統(tǒng)調(diào)用11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)接口分類基于接口表現(xiàn)形式劃分用戶接口命令接口(具體可分為聯(lián)/脫機命令接口)圖形用戶接口(圖形化操作界面)程序接口(方便用戶程序訪問系統(tǒng)資源,由一組系統(tǒng)調(diào)用組成)基于接口使用者類型劃分本地用戶接口網(wǎng)絡用戶接口11/10/2023北京交通大學操作系統(tǒng)1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.3.1操作系統(tǒng)接口分類1.3.2聯(lián)機命令接口1.3.3圖形用戶接口1.3.4系統(tǒng)調(diào)用11/10/2023北京交通大學操作系統(tǒng)聯(lián)機命令接口構成一組聯(lián)機命令鍵盤終端處理程序命令解釋程序11/10/2023北京交通大學操作系統(tǒng)聯(lián)機命令及分類聯(lián)機命令格式 <命令>[<可選項>]<參數(shù)序列>聯(lián)機命令類型系統(tǒng)訪問類磁盤操作類、文件操作類、目錄操作類通信類輸入輸出重定向、管道連接、過濾命令批處理命令Linux常用操作命令?11/10/2023北京交通大學操作系統(tǒng)鍵盤終端處理程序基本功能接收用戶從終端輸入的字符面向字符/行方式管理字符緩沖,以暫存所接收的字符專用緩沖區(qū)、公用緩沖池方式將用戶鍵入字符回送屏幕顯示硬件/軟件實現(xiàn)方式提供屏幕編輯(編輯鍵)特殊字符處理(中斷/停止或恢復上卷)11/10/2023北京交通大學操作系統(tǒng)命令解釋程序工作流程

系統(tǒng)啟動顯示命令提示符命令合法否?接收命令行輸入內(nèi)部命令?執(zhí)行exec系統(tǒng)調(diào)用裝入命令處理程序并予以執(zhí)行是系統(tǒng)初始化是基于命令識別特定方法轉(zhuǎn)向執(zhí)行對應命令處理程序外部命令?是否否否11/10/2023北京交通大學操作系統(tǒng)1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.3.1操作系統(tǒng)接口分類1.3.2聯(lián)機命令接口1.3.3圖形用戶接口1.3.4系統(tǒng)調(diào)用11/10/2023北京交通大學操作系統(tǒng)圖形用戶接口元素及操作桌面、圖標、鼠標指針窗口、標題欄、菜單欄、工具欄菜單菜單條彈出式菜單下拉式菜單對話框11/10/2023北京交通大學操作系統(tǒng)圖形用戶接口特點基于圖形元素來表示功能,方便用戶操縱和觸發(fā)對應功能同屏多窗口與并發(fā)進程相對應支持即時交互,鼠標點擊和鍵盤輸入并舉操作直觀,不必死記命令行參數(shù),傳遞信息量大11/10/2023北京交通大學操作系統(tǒng)圖形用戶接口實現(xiàn)及運行機制面向?qū)ο蟪绦蛟O計方法消息產(chǎn)生、傳遞及處理消息作為窗口的輸入,如用戶操作、其它窗口或系統(tǒng)發(fā)出的請求或通知消息由各窗口自己的窗口過程進行處理事件驅(qū)動模式11/10/2023北京交通大學操作系統(tǒng)1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.3.1操作系統(tǒng)接口分類1.3.2聯(lián)機命令接口1.3.3圖形用戶接口1.3.4系統(tǒng)調(diào)用11/10/2023北京交通大學操作系統(tǒng)系統(tǒng)調(diào)用的基本概念定義系統(tǒng)過程→系統(tǒng)服務→系統(tǒng)調(diào)用命令與普通過程調(diào)用的區(qū)別運行在不同的系統(tǒng)狀態(tài)軟中斷進入機制返回及重新調(diào)度問題嵌套調(diào)用11/10/2023北京交通大學操作系統(tǒng)系統(tǒng)調(diào)用舉例說明簡單用戶程序例子從一個文件讀取數(shù)據(jù),再將它們拷貝到另一文件中系統(tǒng)調(diào)用分析源數(shù)據(jù)文件打開目標數(shù)據(jù)文件創(chuàng)建文件數(shù)據(jù)讀入到緩沖緩沖數(shù)據(jù)寫出到文件程序正常結(jié)束11/10/2023北京交通大學操作系統(tǒng)系統(tǒng)調(diào)用舉例說明#include<fcntl.h>voidmain(intargc,char*argv[]){ intfdOld,fdNew; intcount; charbuffer[2048]; fdOld=open(argv[1],O_RDONLY); fdNew=creat(argv[2],0666); while(count=read(fdOld,buffer,sizeof(buffer))) write(fdNew,buffer,count); exit(0);}11/10/2023北京交通大學操作系統(tǒng)直接進行系統(tǒng)調(diào)用的前提準備#define__LIBRARY__#include<include/asm-i386/unistd.h>_syscall3(long,open,constchar*,filename,int,flags,intmode);_syscall3(long,creat,constchar*,filename,int,flags,intmode);_syscall3(ssize_t,read,unsigned,fd,char*,buf,size_t,count);_syscall3(ssize_t,write,unsigned,fd,char*,buf,size_t,count);_syscall1(int,exit,long,flag);注意:1、系統(tǒng)調(diào)用號__NR_zgs的分配在include/asm-i386/unistd.h2、系統(tǒng)調(diào)用號與系統(tǒng)調(diào)用之間的聯(lián)系建立在系統(tǒng)調(diào)用表中,即arch/i386/kernel/entry.S中描述的sys_call_table11/10/2023北京交通大學操作系統(tǒng)系統(tǒng)調(diào)用的類型進程控制進程的創(chuàng)建、結(jié)束、等待子進程結(jié)束進程屬性設置與獲取執(zhí)行一個文件(進程映像替換)文件操縱文件的創(chuàng)建、打開、關閉、讀/寫進程通信連接打開與關閉、消息發(fā)送與接收系統(tǒng)信息維護時間設置與獲取、文件訪問/修改時間設置11/10/2023北京交通大學操作系統(tǒng)系統(tǒng)調(diào)用的實現(xiàn)設置系統(tǒng)調(diào)用號和參數(shù)系統(tǒng)調(diào)用號(指定寄存器/內(nèi)存單元)參數(shù)(直接[寄存器]、間接[參數(shù)表指針])UNIX(CHMK命令)/DOS(INT21軟中斷)系統(tǒng)調(diào)用命令的一般性處理將處理機狀態(tài)由用戶態(tài)轉(zhuǎn)為系統(tǒng)態(tài)保護CPU現(xiàn)場,將PSW、PC、系統(tǒng)調(diào)用號、用戶棧指針、通用寄存器等壓入堆棧用戶定義參數(shù)送至指定位置分析系統(tǒng)調(diào)用類型,轉(zhuǎn)相應處理子程序中斷和陷入向量表(入口地址、PSW)11/10/2023北京交通大學操作系統(tǒng)混合編程要領匯編語言源程序調(diào)用C函數(shù)模塊按逆向順序把C函數(shù)模塊參數(shù)壓入棧中call_CModuleName|jmp_CModuleName清除先前壓入棧中的C函數(shù)模塊參數(shù)C語言程序嵌入?yún)R編指令舉例說明#define_syscall1(type,name,atype,a)\typename(atypea){long_res;\__asm__volatile("int$0x80"\:"=a"(_res)\:"0"(__NR_##name),"b"((long)(a)));\if(_res>=0)return(type)_res;\errno=-_res;return-1;}11/10/2023北京交通大學操作系統(tǒng)1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.3.1操作系統(tǒng)接口分類1.3.2聯(lián)機命令接口1.3.3圖形用戶接口1.3.4系統(tǒng)調(diào)用11/10/2023北京交通大學操作系統(tǒng)作業(yè)題1.3試闡述程序接口與用戶交互接口(即命令接口和圖形化接口)之間的關系?并給出你對系統(tǒng)調(diào)用實現(xiàn)機制及處理過程的完整理解與總結(jié)。11/10/2023北京交通大學操作系統(tǒng)《操作系統(tǒng)實踐》實驗1編程和替換Linux命令解釋程序Shell自己選取和設計一組聯(lián)機命令,可通過調(diào)用系統(tǒng)內(nèi)核過程加以實現(xiàn)或僅僅在屏幕上顯示命令自身(算是虛化實現(xiàn)),至少一條命令如文件拷貝的處理牽涉到系統(tǒng)調(diào)用;設計和構建命令解釋程序并替換原Linux命令解釋程序Shell啟動系統(tǒng)和運行測試;撰寫實驗報告,闡述實驗目的、實驗目標、實驗步驟、技術難點及解決方案、關鍵數(shù)據(jù)結(jié)構和算法流程、測試方案與過程及運行效果、結(jié)論與體會等。11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)DOS系統(tǒng)結(jié)構11/10/2023北京交通大學操作系統(tǒng)引導扇區(qū)與系統(tǒng)啟動系統(tǒng)啟動過程機器加電=>BIOS加電自檢(0FFFF:0000)進行硬件檢測=>讀入啟動盤引導扇區(qū)(0:0:1)512字節(jié)到內(nèi)存0000:7C00處=>檢查內(nèi)存0000:7DFE~7DFF是否為0x55AA=>跳轉(zhuǎn)至0000:7C00執(zhí)行引導記錄程序引導扇區(qū)末兩個字節(jié)為0x55AA引導程序編制基礎開發(fā)工具GCC引導代碼必須編譯成plainbinaryfile類型且為512Bgcc-cboot.cldboot.o-oboot.bin-oformatbinary-Ttext0x100000Linux載入位置11/10/2023北京交通大學操作系統(tǒng)最簡單的引導程序匯編程序代碼MinBoot.asmhang:jmphangtimes510–($-$$)db0dw0xAA55H程序匯編nasmMinBoot.asm-oMinBoot.bin將二進制文件MinBoot.bin內(nèi)容拷貝到引導扇區(qū)11/10/2023北京交通大學操作系統(tǒng)二次裝載引導程序設計二次裝載含義由BIOS將引導記錄載入內(nèi)存執(zhí)行由引導記錄將操作系統(tǒng)內(nèi)核載入內(nèi)存軟驅(qū)復位與讀取BIOS之INT13H功能調(diào)用字符串顯示BIOS之INT10H功能調(diào)用11/10/2023北京交通大學操作系統(tǒng)二次裝載引導程序之引導程序設計[ORG0]

jmp07C0h:startstart: movax,cs movds,ax moves,axreset: movax,0 movdl,0 int13h jcresetread: movax,1000h moves,ax movbx,0 movah,2 moval,5 movch,0 movcl,2 movdh,0 movdl,0 int13h jcreadjmp1000h:0000times510-($-$$)db0dw0xAA55h軟驅(qū)0:0:2起五個扇區(qū)讀入到ES:BX11/10/2023北京交通大學操作系統(tǒng)二次裝載引導程序之內(nèi)核程序設計[ORG0] jmpstart2msgdb‘Kernal!’,$0start2: movax,cs movds,ax moves,ax movsi,msgprint: lodsb cmpal,0 jehangup movah,0Eh movbx,7 int10h jmpprinthangup: jmphanguptimes510-($-$$)db0dw0xAA55hDS:SI=>AL11/10/2023北京交通大學操作系統(tǒng)《操作系統(tǒng)實踐》實驗2利用C和匯編混合編程實現(xiàn)最簡操作系統(tǒng)實現(xiàn)二次裝入引導過程;以嵌入式匯編指令實現(xiàn)的C程序內(nèi)核可非常簡單(注意可執(zhí)行程序格式);撰寫實驗報告,闡述實驗目的、實驗目標、實驗步驟、技術難點及解決方案、關鍵數(shù)據(jù)結(jié)構和算法流程、測試方案與過程及運行效果、結(jié)論與體會等。11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)推動操作系統(tǒng)發(fā)展的主要動力不斷提高計算機資源利用率和系統(tǒng)性能的需要改善和方便用戶使用計算機的需要適應器件不斷更新?lián)Q代的需要適應計算機體系結(jié)構不斷發(fā)展變化的需要11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)人工操作方式1946~50年代中期計算機資源昂貴、集中計算工作方式用戶:同時兼有程序員/操作員雙重身份輸入輸出:紙帶或卡片編程語言:機器語言工作特點用戶獨占全部資源,資源利用率低計算前后,CPU因等待人工操作而空閑11/10/2023北京交通大學操作系統(tǒng)史前速度矛盾及緩和途徑人機矛盾人工操作方式與資源利用率之間的矛盾伴隨CPU速度提高、系統(tǒng)規(guī)模的擴大而日趨嚴重CPU與I/O設備間矛盾CPU速度迅速提高而I/O設備速度提高緩慢緩和途徑通道技術、中斷技術、緩沖技術脫機輸入輸出技術專門的操作員及批處理技術11/10/2023北京交通大學操作系統(tǒng)脫機輸入輸出技術輸入設備外圍機Input磁帶主機(處理機/內(nèi)存)Output磁帶外圍機Output磁帶輸出設備Input磁帶11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)單道批處理系統(tǒng)為解決人機矛盾和CPU與I/O設備速率不匹配的矛盾而形成,也即其旨在提高系統(tǒng)資源的利用率和系統(tǒng)吞吐量把一批作業(yè)以脫機輸入方式輸入到磁帶上,并在系統(tǒng)所配置的監(jiān)督程序的控制下使這批作業(yè)能一個接一個地自動依次連續(xù)處理。系統(tǒng)對作業(yè)的處理成批進行,但在內(nèi)存中始終之保存著一道作業(yè)11/10/2023北京交通大學操作系統(tǒng)單道批處理系統(tǒng)的處理流程還有作業(yè)?把下一道作業(yè)的源程序轉(zhuǎn)換為目標程序源程序有錯?裝配目標程序運行目標程序開始停止是是否否11/10/2023北京交通大學操作系統(tǒng)單道批處理系統(tǒng)的特征自動性磁帶上的一批作業(yè)能自動地逐個依次執(zhí)行,而無需人工干預順序性磁帶上的各道作業(yè)是順序地進入內(nèi)存,各道作業(yè)完成地順序與它們進入內(nèi)存的順序完全一致單道性監(jiān)督程序每次僅從磁帶上調(diào)入一道程序進入內(nèi)存運行,僅當該程序完成或發(fā)生異常情況時,才調(diào)入其后繼程序進入內(nèi)存運行11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)多道程序設計基本概念單道批處理系統(tǒng)缺陷系統(tǒng)資源空閑問題多道程序設計技術作業(yè)后備隊列/作業(yè)調(diào)度算法/系統(tǒng)資源共享包括CPU、內(nèi)存和I/O設備在內(nèi)的系統(tǒng)資源利用率的提高系統(tǒng)吞吐量增加11/10/2023北京交通大學操作系統(tǒng)多道程序運行情況

11/10/2023北京交通大學操作系統(tǒng)多道批處理系統(tǒng)作業(yè)處理過程11/10/2023北京交通大學操作系統(tǒng)多道批處理系統(tǒng)特征多道性內(nèi)存中同時駐留多道程序,并允許并發(fā)執(zhí)行無序性多個作業(yè)完成的先后次序與它們進入內(nèi)存的順序之間,并無嚴格的對應關系調(diào)度性作業(yè)調(diào)度進程調(diào)度11/10/2023北京交通大學操作系統(tǒng)多道批處理系統(tǒng)優(yōu)缺點優(yōu)點系統(tǒng)資源利用率高系統(tǒng)吞吐量大缺點:作業(yè)平均周轉(zhuǎn)時間長,特別對短作業(yè)不公平無交互能力,不利于程序調(diào)試和修改11/10/2023北京交通大學操作系統(tǒng)多道批處理系統(tǒng)需求分析處理機管理問題多道程序之間應如何分配被它們共享的處理機,使正確運行且提高處理機利用率;分配與回收內(nèi)存管理問題內(nèi)存分配與保護I/O設備管理問題設備共享、分配及利用率提高文件管理問題文件組織方便用戶使用、數(shù)據(jù)安全性及一致性保證作業(yè)管理問題作業(yè)調(diào)度及系統(tǒng)工作流程組織11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)分時系統(tǒng)的產(chǎn)生人機交互程序修改與調(diào)試、直接控制共享主機19世紀60年代計算機十分昂貴便于用戶上機通過自己終端直接將作業(yè)傳送到機器上進行處理,并能對自己的作業(yè)進行控制分時系統(tǒng)概念一臺主機、多個終端、多用戶同時以交互方式使用計算機11/10/2023北京交通大學操作系統(tǒng)分時系統(tǒng)實現(xiàn)中的關鍵問題及時接收用戶輸入命令和數(shù)據(jù)配置多路卡及設置多路緩沖區(qū)及時處理使所有用戶作業(yè)都直接進入內(nèi)存在不長的時間內(nèi)就能使每個作業(yè)都運行一次11/10/2023北京交通大學操作系統(tǒng)分時系統(tǒng)的實現(xiàn)方法作業(yè)應直接進入內(nèi)存這與批處理系統(tǒng)用戶作業(yè)先進入磁盤然后在調(diào)入內(nèi)存不同時間片輪轉(zhuǎn)策略時間片實現(xiàn)方式單道分時系統(tǒng)具有前臺和后臺的分時系統(tǒng)多道分時系統(tǒng)11/10/2023北京交通大學操作系統(tǒng)分時系統(tǒng)的特征多路性宏觀上多個用戶同時工作和共享系統(tǒng)資源微觀上每個用戶作業(yè)輪流運行一個時間片獨立性各用戶在各自終端上獨立操作,互不干擾及時性響應時間交互性用戶可通過終端與系統(tǒng)進行廣泛的人機對話11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)實時系統(tǒng)實時系統(tǒng)的引入實時控制系統(tǒng)實時信息處理系統(tǒng)實時系統(tǒng)的概念指系統(tǒng)能及時或即時響應外部事件的請求,在規(guī)定的時間內(nèi)完成對該事件的處理,并控制所有實時任務協(xié)調(diào)一致地運行實時任務的類型按任務執(zhí)行是否呈現(xiàn)周期性來劃分根據(jù)對截止時間的要求來劃分11/10/2023北京交通大學操作系統(tǒng)實時系統(tǒng)與分時系統(tǒng)的比較多路性獨立性及時性交互性系統(tǒng)高度可靠11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的進一步發(fā)展通用操作系統(tǒng)微機操作系統(tǒng)多處理機操作系統(tǒng)網(wǎng)絡操作系統(tǒng)&分布式操作系統(tǒng)集群操作系統(tǒng)嵌入式操作系統(tǒng)&智能卡操作系統(tǒng)11/10/2023北京交通大學操作系統(tǒng)1.5操作系統(tǒng)的發(fā)展1.5.1推動操作系統(tǒng)發(fā)展的主要動力1.5.2無操作系統(tǒng)時的計算機系統(tǒng)1.5.3單道批處理系統(tǒng)1.5.4多道批處理系統(tǒng)1.5.5分時系統(tǒng)1.5.6實時系統(tǒng)1.5.7操作系統(tǒng)的進一步發(fā)展11/10/2023北京交通大學操作系統(tǒng)作業(yè)題1.4試從多個角度來闡述單道/多道批處理系統(tǒng)與分時系統(tǒng)及實時系統(tǒng)的區(qū)別。11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)1.6操作系統(tǒng)的功能與特征1.6.1處理機管理功能1.6.2存儲器管理功能1.6.3設備管理功能1.6.4文件管理功能1.6.5操作系統(tǒng)的特征11/10/2023北京交通大學操作系統(tǒng)處理機調(diào)度作業(yè)調(diào)度作業(yè)后備隊列作業(yè)選擇與資源分配調(diào)入內(nèi)存與建立進程進程調(diào)度就緒進程隊列進程選擇與處理機分配設置運行現(xiàn)場與啟動運行調(diào)度算法先來先服務/優(yōu)先權高者優(yōu)先調(diào)度算法11/10/2023北京交通大學操作系統(tǒng)進程控制主要任務創(chuàng)建進程撤銷進程進程狀態(tài)轉(zhuǎn)換進程控制機制原語進程&線程11/10/2023北京交通大學操作系統(tǒng)進程同步主要任務進程/線程并發(fā)執(zhí)行協(xié)調(diào)互斥/同步方式臨界資源&臨界區(qū)進程同步機制開/關鎖原語信號量機制管程11/10/2023北京交通大學操作系統(tǒng)進程通信主要任務進程(或線程)間信息交換進程通信方式共享存儲器管道方式消息傳遞系統(tǒng)消息緩沖隊列郵箱11/10/2023北京交通大學操作系統(tǒng)1.6操作系統(tǒng)的功能與特征1.6.1處理機管理功能1.6.2存儲器管理功能1.6.3設備管理功能1.6.4文件管理功能1.6.5操作系統(tǒng)的特征11/10/2023北京交通大學操作系統(tǒng)內(nèi)存分配主要任務使程序各得其所提高存儲器利用率適應程序和數(shù)據(jù)動態(tài)增長的需要內(nèi)存分配機制內(nèi)存分配用數(shù)據(jù)結(jié)構內(nèi)存分配連續(xù)/離散分配方式靜態(tài)/動態(tài)分配方式內(nèi)存回收11/10/2023北京交通大學操作系統(tǒng)內(nèi)存保護主要任務確保程序間互不干擾存取訪問控制內(nèi)存保護機制越界檢查硬件實現(xiàn)保護方式上下限界限寄存器頁號<頁表長度段號<段表長度&&段內(nèi)地址<段長11/10/2023北京交通大學操作系統(tǒng)地址映射主要任務邏輯地址轉(zhuǎn)換為物理地址基本概念地址空間&內(nèi)存空間邏輯/相對/有效地址物理/絕對地址地址映射機制硬件實現(xiàn)重定位寄存器、頁表/段表、快表11/10/2023北京交通大學操作系統(tǒng)內(nèi)存擴充主要任務從邏輯上擴充內(nèi)存容量內(nèi)存擴充可行性程序運行局部性原理離散分配方式內(nèi)存擴充機制虛擬存儲技術硬件(頁/段表、缺頁/段中斷、地址變換)軟件(請求調(diào)入功能/置換功能)11/10/2023北京交通大學操作系統(tǒng)1.6操作系統(tǒng)的功能與特征1.6.1處理機管理功能1.6.2存儲器管理功能1.6.3設備管理功能1.6.4文件管理功能1.6.5操作系統(tǒng)的特征11/10/2023北京交通大學操作系統(tǒng)設備分配主要任務設備及相應設備控制器和通道的分配設備分配機制設備分配用數(shù)據(jù)結(jié)構設備類型與設備分配方式相對應設備分配與回收算法設備獨立性虛擬設備11/10/2023北京交通大學操作系統(tǒng)緩沖管理主要任務管理各種類型的緩沖區(qū)緩和CPU和I/O設備速度不匹配矛盾提高資源利用率和系統(tǒng)吞吐量緩沖管理機制單/雙/多緩沖類型字符緩沖與盤塊緩沖公用緩沖池機制11/10/2023北京交通大學操作系統(tǒng)設備處理主要任務實現(xiàn)CPU和設備控制器間通信設備處理過程I/O請求提出I/O請求合法性檢查了解設備狀態(tài)傳遞相關參數(shù)并設置設備工作方式通道程序自動構成發(fā)出I/O指令和啟動I/O設備及時響應中斷請求11/10/2023北京交通大學操作系統(tǒng)1.6操作系統(tǒng)的功能與特征1.6.1處理機管理功能1.6.2存儲器管理功能1.6.3設備管理功能1.6.4文件管理功能1.6.5操作系統(tǒng)的特征11/10/2023北京交通大學操作系統(tǒng)文件存儲空間管理主要任務使每個文件各得其所提高外存空間利用率提高外存訪問速度文件存儲空間管理機制存儲空間管理用數(shù)據(jù)結(jié)構存儲空間分配與回收功能連續(xù)/離散分配方式以盤塊/簇為基本分配單位11/10/2023北京交通大學操作系統(tǒng)目錄管理主要任務實現(xiàn)文件的按名存取提高文件查找速度支持文件重名、共享與保護目錄管理機制文件控制塊與索引結(jié)點目錄結(jié)構目錄檢索手段11/10/2023北京交通大學操作系統(tǒng)文件的讀寫管理和存取控制文件的讀寫管理從外存中讀取數(shù)據(jù)或?qū)?shù)據(jù)寫入外存目錄檢索->外存地址->讀寫指針->讀寫操作文件描述符表和文件表文件的存取控制防止未經(jīng)核準的用戶存取文件防止冒名頂替存取文件防止以不正確的方式使用文件系統(tǒng)級/用戶級/文件級存取控制11/10/2023北京交通大學操作系統(tǒng)1.6操作系統(tǒng)的功能與特征1.6.1處理機管理功能1.6.2存儲器管理功能1.6.3設備管理功能1.6.4文件管理功能1.6.5操作系統(tǒng)的特征11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的特征并發(fā)并行與并發(fā)、程序與進程/線程共享互斥共享方式、同時訪問方式虛擬虛擬處理機、虛擬內(nèi)存、虛擬盤、虛擬設備異步性進程執(zhí)行順序與執(zhí)行時間的不確定性可重入碼11/10/2023北京交通大學操作系統(tǒng)異步性舉例說明

11/10/2023北京交通大學操作系統(tǒng)作業(yè)題1.5談談你對操作系統(tǒng)應當具備的資源管理功能的認識與理解。為保證資源的有效管理與控制,操作系統(tǒng)于是體現(xiàn)出哪些特征?11/10/2023北京交通大學操作系統(tǒng)第一章操作系統(tǒng)引論1.1什么是操作系統(tǒng)1.2計算機體系結(jié)構及操作系統(tǒng)硬件基礎1.3操作系統(tǒng)用戶接口及系統(tǒng)調(diào)用實現(xiàn)1.4操作系統(tǒng)啟動模塊及自裝入機制

1.5操作系統(tǒng)的發(fā)展1.6操作系統(tǒng)的功能與特征1.7操作系統(tǒng)的結(jié)構設計11/10/2023北京交通大學操作系統(tǒng)1.7操作系統(tǒng)的結(jié)構1.7.1操作系統(tǒng)的設計原則1.7.2無結(jié)構操作系統(tǒng)1.7.3模塊化操作系統(tǒng)結(jié)構1.7.4分層式操作系統(tǒng)結(jié)構1.7.5微內(nèi)核操作系統(tǒng)結(jié)構11/10/2023北京交通大學操作系統(tǒng)操作系統(tǒng)的設計原則可維護性糾錯性/適應性/完善性/預防性維護可靠性正確性/健壯性可理解性可用性性能系統(tǒng)資源利用率及用戶請求響應11/10/2023北京交通大學操作系統(tǒng)1.7操作系統(tǒng)的結(jié)構1.7.1操作系統(tǒng)的設計原則1.7.2無結(jié)構操作系統(tǒng)1.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論