注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)其他操作系統(tǒng)操作系統(tǒng)現(xiàn)代觀點:實驗更新版

操作系統(tǒng)現(xiàn)代觀點:實驗更新版

操作系統(tǒng)現(xiàn)代觀點:實驗更新版

定 價:¥49.00

作 者: (美)Gary Nutt著;孟祥山,晏益慧譯
出版社: 機械工業(yè)出版社
叢編項: 計算機科學叢書
標 簽: 暫缺

ISBN: 9787111135302 出版時間: 2004-02-01 包裝: 精裝
開本: 26cm 頁數(shù): 508頁 字數(shù):  

內(nèi)容簡介

  本書通過各種實例來說明核心的操作系統(tǒng)概念,從而強調(diào)理論與實踐之間的平衡。本書的特色在于對操作系統(tǒng)基本原理進行了完整的討論,并補充有代碼、算法和實現(xiàn)工具,并有實驗練習來幫助加深全面理解。本書可適用于高等院校計算機專業(yè)教材,也可作為專業(yè)技術(shù)人員參考用書?!氨緯膶懽鞑扇×宋宜芟胂竦降淖詈玫姆绞剑禾峁┝爽F(xiàn)代觀點以及基于實用操作系統(tǒng)進行編程的清晰思路?!薄狣avidBinger教授,CentreCollege“我非常喜歡本書所用的方法、表達風格,以及它的可讀性.深度和廣度?!猂ichardGuy教授,加利福尼亞大學洛杉礬分校。本書通過各種實例來說明核心的操作系統(tǒng)概念,從而強調(diào)理論與實踐之間的平衡。本書的特色在于對操作系統(tǒng)基本原理進行了完整的討論,包括許多代碼、算法和實現(xiàn)工具并配有實驗練習來加深全面理解。具體內(nèi)容包括:更新的Linux和Windows2000的相關(guān)材料表述了所有操作系統(tǒng)設(shè)計中的基本原理在“示例”部分中,通過Linux/UNIX和Windows2000操作系統(tǒng),闡述了原理是如何在實踐中得以應(yīng)用的在“性能改善”部分的討論中,解釋了系統(tǒng)設(shè)計者們是如何利用基本原理來獲得高性能系統(tǒng)的實驗練習部分通過使用Linux、UNIX以及Windows2000,讓學生體驗實際的操作系統(tǒng)。

作者簡介

  Gary Nutt于1972年獲得科羅拉多大學博士學位。之后,曾在施樂公司及貝爾實驗室等多家公司工作過。1986年重回科羅拉多大學從事研發(fā)與教學。目前是該校計算機科學系教授以及Inktomi公司的首席科學家。他的研究領(lǐng)域主要集中在分布式系統(tǒng),包括:操作系統(tǒng)、分布式程序設(shè)計、分布式虛擬機、存儲系統(tǒng)、小型無線局域網(wǎng)絡(luò)等。曾著有《Kernel Projects for Linux》。

圖書目錄

出版者的話
專家指導委員會
譯者序
前言
第1章  導言  1
   1.1  計算機與軟件  1
   1.1.1  通常的系統(tǒng)軟件  2
   1.1.2  資源抽象  2
  示例:磁盤設(shè)備抽象  3
   1.1.3  資源共享  4
   1.1.4  沒有系統(tǒng)軟件的計算機  6
   1.2  操作系統(tǒng)策略  6
  性能改善:多道程序系統(tǒng)  7
   1.2.1  批處理系統(tǒng)  7
  示例:批處理文件  9
   1.2.2  分時系統(tǒng)  10
   1.2.3  個人計算機和工作站  12
   1.2.4  過程控制和實時系統(tǒng)  13
   1.2.5  網(wǎng)絡(luò)  14
   1.2.6  當代操作系統(tǒng)的起源  14
  示例:Linux的發(fā)展  15
  示例:微軟Windows家族操作系統(tǒng)  17
   1.3  小結(jié)  18
   1.4  習題  19
第2章  使用操作系統(tǒng)  21
  2.1  計算的抽象模型  21
  2.2  資源  21
    2.2.1  文件  22
  示例:POSIX文件  22
  示例:Windows 文件  23
    2.2.2  其他資源  26
  2.3  進程  26
    2.3.1  創(chuàng)建進程  28
  示例:使用FORK. JOIN和 QUIT  29
  示例:UNIX中創(chuàng)建進程  30
  示例:Windows中創(chuàng)建進程  32
  2.4  線程  33
  示例:C線程  35
  2.5  對象  35
  2.6  小結(jié)  36
  2.7  習題  36
  實驗:Shell程序  37
  實驗:一個多線程的Windows控制臺
  應(yīng)用程序  42
第3章  操作系統(tǒng)的組織結(jié)構(gòu)  51
  3.1  OS設(shè)計中的要素  51
    3.1.1  性能  51
    3.1.2  保護和安全  52
    3.1.3  正確性  52
    3.1.4  可維護性  53
    3.1.5  商業(yè)化因素對操作系統(tǒng)的影響  53
    3.1.6  標準和開放系統(tǒng)  54
  3.2  基本功能  54
    3.2.1  設(shè)備管理  55
    3.2.2  進程和資源管理  55
    3.2.3  存儲管理  55
    3.2.4  文件管理  56
    3.2.5  功能模塊組織結(jié)構(gòu)  56
  3.3  基本實現(xiàn)需考慮的因素  57
    3.3.1  處理機模式  57
    3.3.2  內(nèi)核  58
    3.3.3  請求獲得操作系統(tǒng)服務(wù)  58
  3.4  小結(jié)  60
  3.5  習題  60
第4章  計算機組織結(jié)構(gòu)  61
  4.1  馮·諾依曼體系結(jié)構(gòu)  61
  4.2  中央處理器  63
    4.2.1  算術(shù)邏輯功能單元  63
    4.2.2  控制單元  64
  4.3  存儲器  66
  性能改善:機器加速  67
  性能改善:并行處理機  67
  4.4  設(shè)備  68
    4.4.1  一般設(shè)備特征  69
    4.4.2  設(shè)備控制器  69
  示例: 異步串行設(shè)備  70
    4.4.3  設(shè)備驅(qū)動器  71
  4.5  中斷  72
  4.6  模式轉(zhuǎn)換:自陷指令  74
  4.7  小結(jié)  75
  4.8  習題  76
  實驗:內(nèi)核計數(shù)器  78
第5章  設(shè)備管理  87
  5.1  設(shè)備管理方法  87
    5.1.1  I/O系統(tǒng)的組織結(jié)構(gòu)  87
    5.1.2  使用輪詢的直接I/O  88
    5.1.3  中斷驅(qū)動I/O  89
  性能改善:中斷與輪詢  91
    5.1.4  存儲映射I/O  92
    5.1.5  直接內(nèi)存訪問(DMA)  93
  性能改善:I/O與處理機的并行  94
  5.2  緩沖  95
  5.3  設(shè)備驅(qū)動程序  97
    5.3.1  設(shè)備驅(qū)動程序接口  98
    5.3.2  CPU與設(shè)備的交互作用  99
    5.3.3  I/O性能優(yōu)化  100
  5.4  一些設(shè)備管理方法  100
    5.4.1  串行通信  101
  示例:UNIX的設(shè)備驅(qū)動程序  101
    5.4.2  順序訪問的存儲設(shè)備  102
    5.4.3  隨機存取設(shè)備  103
  性能改善:旋轉(zhuǎn)設(shè)備的訪問優(yōu)化  104
  5.5  小結(jié)  108
  5.6  習題  108
  實驗:軟盤驅(qū)動器  109
第6章  進程管理  117
  6.1  進程和資源的系統(tǒng)觀點  117
    6.1.1  進程模型實現(xiàn)  117
    6.1.2  資源模型實現(xiàn)  119
  6.2  初始化操作系統(tǒng)  119
  6.3  進程地址空間  121
    6.3.1  生成地址空間  121
    6.3.2  載入程序  122
    6.3.3  地址空間中一致性維護  122
  6.4  進程抽象  123
    6.4.1  進程控制塊  124
    6.4.2  進程狀態(tài)圖  124
  6.5  資源抽象  125
  6.6  進程層次結(jié)構(gòu)  127
    6.6.1  精煉化進程管理器  127
    6.6.2  專用的資源分配策略  128
  6.7  小結(jié)  129
  6.8  習題  129
  實驗:觀察OS的運行操作  130
第7章  調(diào)度  137
  7.1  調(diào)度機制  137
    7.1.1  進程調(diào)度機制  137
    7.1.2  保存進程的上下文  138
    7.1.3  自愿的CPU共享  139
    7.1.4  非自愿的CPU共享  141
    7.1.5  性能  141
  7.2  策略選擇  142
    7.2.1  分解一個進程成多個小進程  144
  7.3  非剝奪式策略  145
    7.3.1  先來先服務(wù)  145
  性能改善:系統(tǒng)負載的近似表示  146
    7.3.2  最短作業(yè)優(yōu)先  147
  性能改善:預(yù)測FCFS的等待時間  148
    7.3.3  優(yōu)先級調(diào)度  148
    7.3.4  期限調(diào)度  150
  7.4  剝奪式策略  150
    7.4.1  輪轉(zhuǎn)  151
    7.4.2  多級隊列  153
  7.5  小結(jié)  154
  7.6  習題  155
第8章  同步基本原理  159
  8.1  進程的相互作用  159
  示例:線性方程系統(tǒng)的解  160
    8.1.1  臨界區(qū)  161
    8.1.2  死鎖  164
  8.2  進程協(xié)同  165
  8.3  信號量  167
    8.3.1  信號量操作的原理  168
  示例:使用信號量的例子  169
    8.3.2  應(yīng)用中要考慮的因素  174
  8.4  共享存儲器的多處理機  177
  8.5  小結(jié)  177
  8.6  習題  177
  實驗:有限緩沖區(qū)問題  181
第9章  高級同步技術(shù)  187
  9.1  可選的同步原語  187
    9.1.1  AND同步  187
    9.1.2  事件  188
  示例:使用事件  189
  示例:UNIX信號  190
  示例:Windows 2000中的分派對象  191
  9.2  管程  192
    9.2.1  操作原理  192
    9.2.2  條件變量  193
  示例:使用管程的例子  195
    9.2.3  應(yīng)用管程的一些實際狀況  198
  9.3  進程間通信  199
    9.3.1  信箱  200
    9.3.2  消息傳輸協(xié)議  201
    9.3.3  使用send和receive操作  201
  示例:同步的IPC  202
    9.3.4  延遲的消息拷貝  203
  9.4  嚴格排序事件執(zhí)行  203
  9.5  小結(jié)  205
  9.6  習題  205
  實驗:精煉Shell程序  207
第10章  死鎖  211
  10.1  背景  211
    10.1.1  死鎖預(yù)防  213
    10.1.2  死鎖避免  213
    10.1.3  死鎖檢測和恢復  213
    10.1.4  人工死鎖管理  214
  10.2  一個系統(tǒng)死鎖模型  214
  示例:單個資源類型  215
  10.3  死鎖預(yù)防  216
    10.3.1  占有并等待  216
    10.3.2  循環(huán)等待  218
    10.3.3  允許剝奪  218
  10.4  死鎖避免  220
    10.4.1  銀行家算法  221
  示例:使用銀行家算法  222
  10.5  死鎖檢測和恢復  224
    10.5.1  連續(xù)可重用資源  224
    10.5.2  可消費資源  228
    10.5.3  一般資源系統(tǒng)  231
    10.5.4  恢復  231
  10.6  小結(jié)  232
  10.7  習題  232
第11章  存儲管理  235
  11.1  基本知識  235
    11.1.1  請求主存  235
    11.1.2  將地址空間映射到內(nèi)存  236
  性能改善:使用存儲層次結(jié)構(gòu)減少訪問
  時間  237
  示例:地址綁定過程  238
    11.1.3  用于數(shù)據(jù)結(jié)構(gòu)的動態(tài)存儲  241
  11.2  內(nèi)存分配  241
    11.2.1  固定分區(qū)存儲分配策略  242
    11.2.2  可變分區(qū)存儲分配策略  243
    11.2.3  現(xiàn)代存儲分配策略  245
  性能改善:移動程序的開銷  246
  11.3  動態(tài)地址重定位  246
    11.3.1  運行時界限檢查  250
  示例:擴充小地址空間  250
  11.4  存儲管理器策略  251
    11.4.1  交換  251
    11.4.2  虛擬內(nèi)存  253
  性能改善:使用高速緩存存儲器  254
    11.4.3  共享存儲器的多處理機  255
  11.5  小結(jié)  257
  11.6  習題  257
第12章  虛擬內(nèi)存  261
  12.1  地址轉(zhuǎn)換  261
    12.1.1  地址空間映射  261
    12.1.2  段式和頁式  263
  12.2  頁式  263
    12.2.1  虛擬地址轉(zhuǎn)換  265
  性能改善:頁表實現(xiàn)  267
  12.3  靜態(tài)頁面調(diào)度算法  268
    12.3.1  取策略  268
    12.3.2  請求調(diào)頁算法  269
    12.3.3  棧算法  272
    12.3.4  實現(xiàn)LRU  273
  性能改善:頁面調(diào)度性能  274
  12.4  動態(tài)頁面調(diào)度算法  275
    12.4.1  駐留集算法  275
  示例:駐留集算法  示例  277
    12.4.2  駐留集算法實現(xiàn)  278
  性能改善:利用分頁實現(xiàn)IPC  279
  示例:Windows 2000 虛擬存儲器  280
  示例:Linux 虛擬存儲器  283
  12.5  段式  284
    12.5.1  地址轉(zhuǎn)換  284
    12.5.2  實現(xiàn)  286
  示例:多段系統(tǒng)  288
  12.6  小結(jié)  290
  12.7  習題  291
第13章  文件管理  293
  13.1  文件  293
    13.1.1  低級文件  295
    13.1.2  結(jié)構(gòu)化文件  297
    13.1.3  數(shù)據(jù)庫管理系統(tǒng)  301
    13.1.4  多媒體存儲  302
  13.2  低級文件實現(xiàn)  302
    13.2.1  open和close操作  303
  示例:UNIX中的open和close操作  303
    13.2.2  塊管理  305
  示例:UNIX文件結(jié)構(gòu)  307
    13.2.3  讀. 寫字節(jié)流  309
  13.3  支持其他的存儲抽象  311
    13.3.1  結(jié)構(gòu)化順序文件  311
    13.3.2  索引順序文件  312
    13.3.3  數(shù)據(jù)庫管理系統(tǒng)  312
    13.3.4  多媒體文檔  312
  13.4  存儲映射(Memory-mapped)文件  313
  示例:Windows 2000中的存儲映射文件  313
  13.5  目錄  314
    13.5.1  目錄結(jié)構(gòu)  315
  示例:幾個目錄例子  316
  13.6  目錄實現(xiàn)  317
    13.6.1  設(shè)備目錄  317
    13.6.2  文件目錄  318
    13.6.3  在層次目錄中打開一個文件  318
    13.6.4  安裝可移動的文件系統(tǒng)  319
  13.7  小結(jié)  319
  13.8  習題  320
  實驗:一個簡單的文件管理器  321
第14章  保護和安全  327
  14.1  基本原理  327
    14.1.1  策略和機制  328
    14.1.2  策略和機制實現(xiàn)  328
    14.1.3  認證機制  329
    14.1.4  授權(quán)機制  329
    14.1.5  加密  330
  14.2  認證  331
    14.2.1  用戶認證  331
    14.2.2  網(wǎng)上認證  331
  示例:Kerberos網(wǎng)絡(luò)認證方法  332
  14.3  內(nèi)部訪問授權(quán)  334
    14.3.1  一個資源保護的模型  334
    14.3.2  改變保護狀態(tài)  336
    14.3.3  保護機制的開銷  338
  14.4  實現(xiàn)內(nèi)部授權(quán)  338
    14.4.1  保護域  338
    14.4.2  實現(xiàn)訪問矩陣  340
  14.5  密碼技術(shù)  343
  14.6  小結(jié)  344
  14.7  習題  345
第15章  網(wǎng)絡(luò)  347
  15.1  從計算機通信到網(wǎng)絡(luò)  347
    15.1.1  通信子網(wǎng)  348
    15.1.2  網(wǎng)絡(luò)通信協(xié)議  349
  15.2  ISO的OSI網(wǎng)絡(luò)體系結(jié)構(gòu)模型  350
    15.2.1  網(wǎng)絡(luò)協(xié)議的演變  350
    15.2.2  ISO的OSI模型  351
  15.3  低層協(xié)議  353
    15.3.1  物理層  354
  性能改善:快速物理層  354
    15.3.2  數(shù)據(jù)鏈路層  355
    15.3.3  當代網(wǎng)絡(luò)  356
  15.4  網(wǎng)絡(luò)層  358
    15.4.1  尋址  359
    15.4.2  路由  360
    15.4.3  網(wǎng)絡(luò)層的使用  361
  15.5  傳輸層  361
    15.5.1  通信端口  362
    15.5.2  數(shù)據(jù)類型  362
    15.5.3  可靠的通信  363
  性能改善:數(shù)據(jù)報和虛電路  364
  15.6  使用傳輸層  364
    15.6.1  命名  364
  示例:域名系統(tǒng)  366
    15.6.2  客戶-服務(wù)器模式  367
  15.7  小結(jié)  369
  15.8  習題  369
  實驗:使用TCP/IP協(xié)議  370
第16章  遠程文件  379
  16.1  通過網(wǎng)絡(luò)共享信息  379
    16.1.1  顯式的文件復制系統(tǒng)  380
    16.1.2  隱含的文件共享  381
    16.1.3  遠程輔存接口  382
    16.1.4  工作分布  383
  16.2  遠程磁盤系統(tǒng)  384
    16.2.1  遠程磁盤操作  386
    16.2.2  性能因素  386
    16.2.3  可靠性  387
    16.2.4  遠程磁盤的未來  389
  16.3  遠程文件系統(tǒng)  390
    16.3.1  通用的體系結(jié)構(gòu)  390
    16.3.2  塊高速緩存  392
    16.3.3  失效后的恢復  393
  16.4  文件級高速緩存  397
  示例:Andrew文件系統(tǒng)  397
  示例:LOCUS文件系統(tǒng)  398
  16.5  目錄系統(tǒng)及其實現(xiàn)  400
    16.5.1  文件名字  400
    16.5.2  打開一個文件  401
  16.6  小結(jié)  402
  16.7  習題  403
第17章  分布式計算  405
  17.1  分布的進程管理  405
    17.1.1  分解工作  405
    17.1.2  支持分解的計算  407
    17.1.3  一般的進程管理  408
    17.1.4  調(diào)度  408
  性能改善:進程遷移和負載平衡  409
    17.1.5  進程協(xié)同  409
  17.2  消息傳遞  412
    17.2.1  消息傳遞接口  413
    17.2.2  計算范例  414
  17.3  遠程過程調(diào)用  415
    17.3.1  RPC如何工作  416
    17.3.2  實現(xiàn)RPC  416
  17.4  分布式存儲器管理  420
    17.4.1  遠程存儲器  423
  示例:分布式存儲器的實例  423
    17.4.2  分布式虛擬存儲器  425
    17.4.3  分布式對象  426
  17.5  小結(jié)  427
  17.6  習題  428
第18章  策略與實例  429
  18.1  操作系統(tǒng)的組成及相互關(guān)系  429
  18.2  一般性結(jié)構(gòu)問題  430
    18.2.1  軟件的組織結(jié)構(gòu)  431
    18.2.2  管理分布式硬件  435
  18.3  傳統(tǒng)的UNIX內(nèi)核  437
    18.3.1  內(nèi)核  437
    18.3.2  一體化結(jié)構(gòu)  438
    18.3.3  結(jié)論  438
  18.4  Linux內(nèi)核  439
    18.4.1  內(nèi)核結(jié)構(gòu)  439
    18.4.2  進程和資源管理  442
    18.4.3  存儲管理器  446
    18.4.4  文件管理  447
  18.5  Choices:面向?qū)ο蟮牟僮飨到y(tǒng)  449
    18.5.1  框架  449
    18.5.2  使用框架實現(xiàn)存儲管理器  449
    18.5.3  結(jié)論  450
  18.6  微軟Windows操作系統(tǒng)  451
    18.6.1  一般性體系結(jié)構(gòu)  451
    18.6.2  硬件抽象層(HAL)  453
    18.6.3  NT內(nèi)核  453
    18.6.4  NT執(zhí)行體  455
    18.6.5  NT子系統(tǒng)  459
  18.7  Mach操作系統(tǒng)  459
    18.7.1  進程管理  460
    18.7.2  消息傳遞  462
    18.7.3  內(nèi)存管理  464
    18.7.4  結(jié)論  466
  18.8  CHORUS操作系統(tǒng)  466
    18.8.1  進程管理  467
    18.8.2  進程間通信  468
    18.8.3  內(nèi)存管理  468
    18.8.4  結(jié)論  468
  18.9  小結(jié)  468
  18.10  習題  469
術(shù)語表  471
參考文獻  483
索引  487

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號