freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

操作系統(tǒng)教程-第八章linux系統(tǒng)-展示頁(yè)

2025-01-26 12:49本頁(yè)面
  

【正文】 ? 參數(shù) pid為預(yù)期等待的子進(jìn)程識(shí)別碼 : ? pid1 等待進(jìn)程組識(shí)別碼為 pid絕對(duì)值的任何子進(jìn)程。 ? 子進(jìn)程的結(jié)束狀態(tài)值會(huì)由參數(shù) status返回 ,而子進(jìn)程的進(jìn)程識(shí)別碼也會(huì)一塊返回。 ? pid_t waitpid(pid_t pid,int * status,int options); ? waitpid()會(huì)暫時(shí)停止目前進(jìn)程的執(zhí)行 ,直到有信號(hào)來到或子進(jìn)程結(jié)束。 ? 這兩個(gè)函數(shù)的返回值可以參考 waitpid()系統(tǒng)調(diào)用。 ? pid_t wait4(pid_t pid, int *status, int options, struct rusage *rusage)。 ? 父進(jìn)程可用系統(tǒng)調(diào)用 wait3()等待它的任何一個(gè)子進(jìn)程終止;也可以用系統(tǒng)調(diào)用 wait4()等待某個(gè)特定的子進(jìn)程終止。 ? 復(fù)制完成后, Linux允許兩個(gè)進(jìn)程共享資源而不是復(fù)制各自的拷貝。 ? 然后創(chuàng)建唯一地標(biāo)記此新任務(wù)的進(jìn)程標(biāo)志符。 ? 系統(tǒng)調(diào)用 fork或 clone可以創(chuàng)建新任務(wù),復(fù)制發(fā)生在內(nèi)核狀態(tài)下的內(nèi)核中。這些新進(jìn)程又創(chuàng)建各自的新進(jìn)程。 ? 它負(fù)責(zé)完成系統(tǒng)的一些初始化設(shè)置任務(wù) (如打開系統(tǒng)控制臺(tái)與安裝根文件系統(tǒng) ),以及執(zhí)行系統(tǒng)初始化程序,如 /etc/init, /bin/init或者 /sbin/init,這些初始化程序依賴于具體的系統(tǒng)。 操作系統(tǒng)教程課件 第 25頁(yè) 機(jī)械工業(yè)出版社 進(jìn)程和線程 ? 進(jìn)程狀態(tài) ? 創(chuàng)建進(jìn)程 ? 進(jìn)程的等待 ? 進(jìn)程的終止 ? 線程狀態(tài)及轉(zhuǎn)換 操作系統(tǒng)教程課件 第 26頁(yè) 機(jī)械工業(yè)出版社 進(jìn)程狀態(tài) ? 在一個(gè)給定的時(shí)間內(nèi), Linux進(jìn)程可能處于六種具體狀態(tài)中的一種 ? TASK_RUNNING 進(jìn)程準(zhǔn)備好運(yùn)行了 ? TASK_INTERRUPTIBLE 進(jìn)程在等待特定事件,也可以被信號(hào)量中斷 ? TASK_UNINTERRUPTIBLE 進(jìn)程在等待硬件條件而且不能被信號(hào)量中斷 ? TASK_ZOMBIE 進(jìn)程已經(jīng)退出了 ? TASK_STOPPED 進(jìn)程已經(jīng)停止運(yùn)行了 ? TASK_SWAPPING 用于表明進(jìn)程正在執(zhí)行磁盤交換工作 ? 進(jìn)程的當(dāng)前狀態(tài)被記錄在 struct task_struct結(jié)構(gòu)的 state成員中 操作系統(tǒng)教程課件 第 27頁(yè) 機(jī)械工業(yè)出版社 操作系統(tǒng)教程課件 第 28頁(yè) 圖 84展示了 Linux系統(tǒng)中進(jìn)程狀態(tài)的變化關(guān)系 機(jī)械工業(yè)出版社 創(chuàng)建進(jìn)程 ? 系統(tǒng)啟動(dòng)時(shí)總是處于內(nèi)核模式,此時(shí)只有一個(gè)進(jìn)程:初始化進(jìn)程。 ? 在 Linux早期的內(nèi)核版本中文件 /include/linux/義了 task_struct數(shù)據(jù)結(jié)構(gòu) 操作系統(tǒng)教程課件 第 23頁(yè) 機(jī)械工業(yè)出版社 ? task_struct數(shù)據(jù)結(jié)構(gòu),可以歸為如下幾類: ? 1.進(jìn)程的狀態(tài)信息 (State) ? (Scheduling Information) ? (Identifiers) ? (InterProcess Communication) ? (Links) ? (Times and Timers) ? (File system) ? (Virtual memory) ? (Processor Specific Context) ? 操作系統(tǒng)教程課件 第 24頁(yè) 機(jī)械工業(yè)出版社 ? 在 Linux系統(tǒng)中,每個(gè)進(jìn)程都有一個(gè)系統(tǒng)棧,用來保存中斷現(xiàn)場(chǎng)信息和進(jìn)程進(jìn)入內(nèi)核模式后執(zhí)行子程序 (函數(shù) )嵌套調(diào)用的返回現(xiàn)場(chǎng)信息。 操作系統(tǒng)教程課件 第 22頁(yè) 機(jī)械工業(yè)出版社 進(jìn)程的數(shù)據(jù)結(jié)構(gòu) ? Linux用 task_struct數(shù)據(jù)結(jié)構(gòu)來表示每個(gè)進(jìn)程,在 Linux中任務(wù)與進(jìn)程表示的意義是一樣的 ? 系統(tǒng)維護(hù)一個(gè)名為 task的數(shù)組, task包含指向系統(tǒng)中所有進(jìn)程的 task_struct結(jié)構(gòu)的指針 ? Linux還支持實(shí)時(shí)進(jìn)程。操作系統(tǒng)的其它內(nèi)容都是圍繞進(jìn)程展開的。 ? (6).從中斷處理中返回,執(zhí)行 RESTORE_ALL并返回用戶模式,完成切換任務(wù),繼續(xù)執(zhí)行用戶程序后續(xù)代碼。(進(jìn)入內(nèi)核模式) ? (4).進(jìn)行中斷處理,通過系統(tǒng)調(diào)用號(hào),并根據(jù)系統(tǒng)調(diào)用表找到并調(diào)用內(nèi)核函數(shù)(系統(tǒng)調(diào)用)。執(zhí)行 system_call,初始化系統(tǒng)調(diào)用。 操作系統(tǒng)教程課件 第 19頁(yè) 機(jī)械工業(yè)出版社 系統(tǒng)調(diào)用過程 ? (1).執(zhí)行用戶程序 (如: fork),遇到需要系統(tǒng)調(diào)用時(shí)。然后執(zhí)行system_call。 ? system_call函數(shù)根據(jù)用戶傳來的系統(tǒng)調(diào)用號(hào),在系統(tǒng)調(diào)用表里找到對(duì)應(yīng)的系統(tǒng)調(diào)用再執(zhí)行 ? 每一個(gè)系統(tǒng)調(diào)用號(hào)都對(duì)應(yīng)有一個(gè)系統(tǒng)調(diào)用 ? 接下來就是系統(tǒng)調(diào)用宏的展開 ? 當(dāng)發(fā)生調(diào)用時(shí),函數(shù)中的 name(調(diào)用名)會(huì)被系統(tǒng)調(diào)用名所代替。 操作系統(tǒng)教程課件 第 18頁(yè) 機(jī)械工業(yè)出版社 ? 系統(tǒng)調(diào)用實(shí)現(xiàn)內(nèi)容: ? 系統(tǒng)調(diào)用表記錄系統(tǒng)調(diào)用的名字以及入口地址。 ? 關(guān)鍵問題是從用戶模式到內(nèi)核模式的轉(zhuǎn)換、堆棧的切換以及系統(tǒng)調(diào)用和參數(shù)的傳遞是如何實(shí)現(xiàn)的呢? 操作系統(tǒng)教程課件 第 17頁(yè) 機(jī)械工業(yè)出版社 ? 可以結(jié)合 Liunx源代碼根目錄下的arch/i386/kernel/ ? 切換 ? 文件中的代碼里定義了兩個(gè)非常重要的宏 ,即SAVE_ALL和 RESTORE_ALL ? 兩個(gè)宏用于解決內(nèi)核模式切換時(shí)相關(guān)信息的保存和恢復(fù) ? 模式切換后地址空間發(fā)生變化,這時(shí)還需要使用到宏__SWITCH_KERNELSPACE以實(shí)現(xiàn)地址空間的轉(zhuǎn)換。 ? 內(nèi)核模式可以執(zhí)行一些特權(quán)指令和進(jìn)入用戶模式,而用戶模式則不能。 ? 中斷響應(yīng)順序執(zhí)行下述三步動(dòng)作: ? ◆中止當(dāng)前程序的執(zhí)行 ? ◆保存原程序的斷點(diǎn)信息 ? ◆從中斷控制器取出中斷向量,轉(zhuǎn)到相應(yīng)的處理程序 ? 內(nèi)核對(duì)中斷處理的順序主要由以下動(dòng)作完成: ? ◆保存正在運(yùn)行進(jìn)程的各寄存器的內(nèi)容 ? ◆確定“中斷源”或核查中斷發(fā)生,識(shí)別中斷的類型和中斷的設(shè)備號(hào) ? ◆內(nèi)核調(diào)用中斷處理程序,對(duì)中斷進(jìn)行處理 ? ◆中斷處理完成并返回 操作系統(tǒng)教程課件 第 14頁(yè) 機(jī)械工業(yè)出版社 Linux 系統(tǒng)調(diào)用 ? 系統(tǒng)調(diào)用 ? 是內(nèi)核提供的、功能十分強(qiáng)大的一系列的函數(shù) ? 這些系統(tǒng)調(diào)用是在內(nèi)核中實(shí)現(xiàn)的,再通過一定的方式讓用戶可以調(diào)用,一般都通過門 (gate)陷入 (trap)實(shí)現(xiàn) ? 系統(tǒng)調(diào)用是用戶程序和內(nèi)核交互的接口 ? 在 Linux kernel ,有 280多個(gè)系統(tǒng)調(diào)用 ? 系統(tǒng)調(diào)用是用戶接口在內(nèi)核中的實(shí)現(xiàn),如果沒有系統(tǒng)調(diào)用,用戶就不能利用內(nèi)核。 操作系統(tǒng)教程課件 第 13頁(yè) 機(jī)械工業(yè)出版社 ? 中斷處理一般分為中斷響應(yīng)和中斷處理兩個(gè)步驟。 ? 第三類由于在程序中使用了請(qǐng)求系統(tǒng)服務(wù)的系統(tǒng)調(diào)用而引發(fā)的過程,稱作“陷入” (trap,或者陷阱 )。 ? 系統(tǒng)程序及其他所有的程序都在內(nèi)核之上運(yùn)行 ? 內(nèi)核之外的所有程序都處于用戶模式下運(yùn)行 操作系統(tǒng)教程課件 第 11頁(yè) 機(jī)械工業(yè)出版社 系統(tǒng)機(jī)制 ? Linux中斷 ? Linux 系統(tǒng)調(diào)用 操作系統(tǒng)教程課件 第 12頁(yè) 機(jī)械工業(yè)出版社 Linux中斷 ? Linux中斷可分為三類: ? 第一類是由 CPU外部引起的,稱作中斷,如 I/O中斷、時(shí)鐘中斷、控制臺(tái)中斷等。 操作系統(tǒng)教程課件 第 10頁(yè) 機(jī)械工業(yè)出版社 ? Linux系統(tǒng)內(nèi)核結(jié)構(gòu)的詳細(xì)框圖分成用戶層、內(nèi)核層和硬件層三個(gè)層次。 ? Linux系統(tǒng)的文件系統(tǒng)模塊管理文件、分配文件空間、管理空閑空間、控制對(duì)文件的訪問,且為用戶檢索數(shù)據(jù)。 ? Linux系統(tǒng)內(nèi)存管理模塊 ? 控制內(nèi)存分配與回收。目前 Linux內(nèi)核是微內(nèi)核和單一內(nèi)核的混合產(chǎn)物 ? 體系結(jié)構(gòu)中的進(jìn)程和內(nèi)核的交互方式?jīng)Q定著系統(tǒng)的層次化或模塊化的程度如何。 ? 單內(nèi)核模式的主要優(yōu)點(diǎn) ? 內(nèi)核代碼結(jié)構(gòu)緊湊 ? 執(zhí)行速度快 ? 單內(nèi)核模式的不足之處: ? 層次結(jié)構(gòu)性不強(qiáng) ? Linux內(nèi)核基本上是單一的,但是它并不是一個(gè)純粹的集成內(nèi)核。 操作系統(tǒng)教程課件 第 3頁(yè) 機(jī)械工業(yè)出版社 Linux的產(chǎn)生及版本 ? 1987年,由 Andrew S. Tanenbaum開發(fā)了 MINIX操作系統(tǒng) ? 1991年的 10月 5日, Linus正式向外宣布 Linux內(nèi)核系統(tǒng)的誕生 ? Linux有兩種版本 : ? 內(nèi)核 (Kernel)版本 ? 內(nèi)核版本的序號(hào)由三部分?jǐn)?shù)字構(gòu)成,其形式為:“主版本號(hào) .次版本號(hào) .對(duì)當(dāng)前版本的修訂次數(shù)” ? 最新穩(wěn)定內(nèi)核版本號(hào)為 。機(jī)械工業(yè)出版社 第八章 Linux系統(tǒng) ? Linux系統(tǒng)概述 ? Linux進(jìn)程管理 ? Linux內(nèi)存管理 ? Linux輸入和輸出系統(tǒng) ? Linux文件系統(tǒng) ? 本章小結(jié) 操作系統(tǒng)教程課件 第 1頁(yè) 機(jī)械工業(yè)出版社 Linux系統(tǒng)概述 ? Linux的產(chǎn)生及版本 ? Linux的特點(diǎn) ? Linux 系統(tǒng)模型 ? 系統(tǒng)機(jī)制 操作系統(tǒng)教程課件 第 2頁(yè) 機(jī)械工業(yè)出版社 ? Linux操作系統(tǒng)是 UNIX操作系統(tǒng)的一種克隆系統(tǒng) ? 誕生于 1991年的 10月 5日。 ? Linux操作系統(tǒng)的誕生、發(fā)展和成長(zhǎng)過程始終依賴著以下五個(gè)重要支柱: ? UNIX操作系統(tǒng) ? MINIX操作系統(tǒng) ? GNU計(jì)劃 ? POSIX標(biāo)準(zhǔn) ? Inter網(wǎng)絡(luò)。 ? 發(fā)行 (Distribution)版本 ? 一些組織或廠家,將 Linux系統(tǒng)的內(nèi)核與外圍實(shí)用程序 (Utilities)軟件和文檔包裝起來,并提供一些系統(tǒng)安裝界面和系統(tǒng)配置、設(shè)定與管理工具,就構(gòu)成了一種發(fā)行版本 (distribution) ? 最流行的幾個(gè)正式版本有: SUSELinux、 RedHat、 Fedora、 Ubuntu、TurboLinux、 Slackware、 OpenLinux、 Debian 操作系統(tǒng)教程課件 第 4頁(yè) 機(jī)械工業(yè)出版社 Linux的特點(diǎn) ? Linux功能強(qiáng)大而全面 ? 與 UNIX兼容 ? 自由軟件和源碼公開 ? 性能高且安全性強(qiáng) ? 便于定制和再開發(fā) ? 強(qiáng)大的互操作性 ? 全面的多任務(wù)和真正的 32位及 64位的操作系統(tǒng) 操作系統(tǒng)教程課件 第 5頁(yè) 機(jī)械工業(yè)出版社 Linux 系統(tǒng)模型 ? Linux 內(nèi)核模式 ? Linux 內(nèi)核結(jié)構(gòu) 操作系統(tǒng)教程課件 第 6頁(yè) 機(jī)械工業(yè)出版社 ? 操作系統(tǒng)內(nèi)核的結(jié)構(gòu)模式 : ? 層次式的微內(nèi)核模式 ? 整體式的單內(nèi)核模式 ? 微內(nèi)核設(shè)計(jì)優(yōu)點(diǎn) ? 在不影響系統(tǒng)其它部分的情況下,用更高效的實(shí)現(xiàn)代替現(xiàn)有系統(tǒng)模塊的工作 ? 不需要的模塊將不會(huì)被加載到內(nèi)存中,因此微內(nèi)核就可以更有效的利用內(nèi)存。 操作系統(tǒng)教程課件 第 7頁(yè) 機(jī)械工業(yè)出版社 Linux 內(nèi)核模式 ? 早期的 Linux操作系統(tǒng)內(nèi)核是采用單內(nèi)核模式。 ? Linux的內(nèi)核展現(xiàn)出了幾個(gè)相互關(guān)聯(lián)的設(shè)計(jì)目標(biāo): ? 清晰性( clarity) ? 兼容性( patibility) ? 可移植性( portability) ? 健壯性( robustness) ? 安全性( security) ? 速度( speed) 操作系統(tǒng)教程課件 第 8頁(yè) 機(jī)械工業(yè)出版社 Linux 內(nèi)核結(jié)構(gòu) ? Linux內(nèi)核主要由 5個(gè)模塊構(gòu)成:進(jìn)程調(diào)度模塊、內(nèi)存管理模塊、文件系統(tǒng)模塊、進(jìn)程間通信模塊和網(wǎng)絡(luò)接口模塊 操作系統(tǒng)教程課件 第 9頁(yè) 機(jī)械工業(yè)出版社 ? Linux系統(tǒng)進(jìn)程控制系統(tǒng) ? 由進(jìn)程調(diào)度模塊和進(jìn)程間通信模塊構(gòu)成,用于進(jìn)程管理、進(jìn)程同步、進(jìn)程通信、進(jìn)程調(diào)度等。系統(tǒng)采用交換和請(qǐng)求式分頁(yè)兩種策略管理內(nèi)存。 ? 使用了虛擬文件系統(tǒng) (VFS)來支持多種不同的文件系統(tǒng) ? Linux系統(tǒng)支持字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)設(shè)備三種類型的硬件設(shè)備。 ? 一般地可將操作系統(tǒng)劃分為內(nèi)核和系統(tǒng)程序兩部分。 ? 第二類是來自 CPU的內(nèi)部事件或程序執(zhí)行中的事件引起的過程,稱作異常,如由于 CPU本身故障、程序故障等引起的過程。 ? 前兩類通常都稱作中斷,它們的產(chǎn)生往往是無意、被動(dòng)的,而陷入是有意和主動(dòng)的。 ? 中斷響應(yīng)由硬件實(shí)施,中斷處理主要由軟件實(shí)施。 操作系統(tǒng)教程課件 第 15頁(yè) 機(jī)械工業(yè)出版社 系統(tǒng)調(diào)用的實(shí)現(xiàn) ? Linux系統(tǒng)在 CPU的保護(hù)模式下提供了四個(gè)特權(quán)級(jí)別,目前內(nèi)核都只用到了其中的兩個(gè)特權(quán)級(jí)別,
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1