計算機系統平台

計算機系統平台

這是一本從一個新的視角--平台角度來詮釋計算機系統的教材。本書從讀者熟悉的計算機操作平台入手,逐步深入到計算機硬體、計算機軟體、計算機網路、設施和環境等幾個層面。主要內容涉及作業系統功能及實現機制、計算機組成、信息表示、計算機網路服務及基礎支持機制,以及機房設備與管理等。

基本介紹

  • 書名:計算機系統平台
  • 作者:李曉明、張麗
  • ISBN:9787302197225
  • 定價:29.5元
  • 出版社:清華大學出版社
  • 出版時間:2009-6-12
  • 裝幀:平裝
圖書簡介,圖書前言,圖書目錄,

圖書簡介

本書深入淺出,內容面寬但有層次感,按照教育部《高等學校計算機科學與技術本科專業規範(信息技術方向)》的培養目標和規格要求,圍繞規範要求的知識點來組織內容。因此,適合作為計算機專業信息技術方向的本科學生的專業基礎課教材,同時也適合作為其他計算機相關專業的選修課教材,本書還可作為希望全面了解計算機系統的其他專業人員自學使用。

圖書前言

“十五”期間,教育部高等學校計算機科學與技術教學指導委員會編制了《高等學校計算機科學與技術專業發展戰略研究報告暨專業規範》(試行),後簡稱《規範》. “計算機系統平台”是其中信息技術專業方向的建議課程之一。本教材是參照《規範》附錄2.4A和2.4B的內容編寫成的教科書。
按照《規範》建議的,“計算機系統平台”這門課的前導課程有“信息技術概論”、“信息技術套用數學入門”和“程式設計與問題求解”,後續可有“計算機網路與網際網路”、 "Web系統與技術”、“套用集成原理與工具”和“系統管理與維護”等。開設課程的時間最早可以安排在一年級下學期,比較合適的是二年級上學期,但不要晚於二年級下學期。這是我們編寫這本教材時考慮的一個基本定位。
從對信息技術專業方向人才培養的定位出發(見《規範》2.4節),我們力求內容的實用性。這種實用性,不僅體現在著重於基本概念及其關係的描述,不限於過於細節的討論,而且還體現在一種問題引導的陳述方式。在這種方式下,一些關鍵技術產生所針對實際問題的背景得到了強調,從而有可能促進學生的思考,加深對技術的理解。我們追求內容深度和廣度的平衡,以及表述的簡潔和嚴謹。讀者也許能體會到,本教材在具有一般可讀性的同時,有些內容需要仔細推敲才能真正讀懂,儘管沒完全懂也不一定影響後續內容的學習。
以“計算機系統平台”為書名的教材,應該說還不多見。可以說這也正是信息技術方向所追求教學內容的一個特色。按照《規範》,信息技術方向的基本目標是圍繞社會中各種組織機構(以及個人)的信息化需求,通過對計算技術的選擇、套用和集成,創建最佳化的信息系統並對其運行實行有效的技術維護和管理。我們理解,“系統集成”是上述文字蘊涵的一個要義。所謂“系統集成”,大致上說就是讓各種相關技術協同發揮作用以實現某種功能或目標的過程。如何進行有效的系統集成?過去幾十年來人們的實踐告訴我們,根據普遍的需求構建通用的平台,讓滿足特殊需求的系統集成在這樣的平台上來進行是一條行之有效的技術路線。
那么,到底什麼是平台?一般地講,平台就是滿足一類不同事物的共同需求,能夠使那些事物方便地在其上形成、存在、運行與展現的基礎設施。在生活中,火車站的月台就是一個平台,它支持各種火車的停靠、加水加油、旅客的上下車等。在工程中,造船廠的船塢就是一個平台,如果沒有它上面的各種基本設施,一條船的建造不是不可能,但會麻煩很多。在計算機中,打開機箱,看到的上面有一個個插槽的主機板就是一個平台,藉助於它,各種配置的計算機就能夠方便地構成。我們常常會聽到的軟體開發平台也是這個意思,即一整套基礎軟體工具和環境,可能是很通用的(例如Java) ,也可能是相對比較專用的(或者說面向領域的,例如Weblogic) ,使得開發軟體變得容易起來。當談到軟體的時候,常常也區別“軟體開發平台”和“軟體運行平台”,有些只是開發平台(例如C語言編譯器),另一些則只是運行平台(例如作業系統),還有些則二者兼任(例如整個Java體系).
根據信息技術方向的定位,本教材不討論平台構建本身,而是從不同的角度或層面看“計算機系統平台”的含義,了解並掌握它們所提供的支撐功能,感受我們能在上面做哪些事情;當然也會扼要地介紹一些典型功能實現的基本原理。為此,全書分成五篇共9章進行介紹。
第一篇包含一章,介紹計算機操作運行平台,基本出發點是想回答這樣的問題:當我們買來了一台計算機,上面已經裝了作業系統,但還沒有任何應用程式,此時能做些什麼呢?取決於不同類型的用戶,能做的事情有所不同。普通用戶能做的就是進行各種配置,以及安裝所需的套用軟體;對於具有程式開發能力的用戶,則還可以直接利用作業系統提供的函式編寫程式。這一章的目的就是在不涉及實現細節的情況下使讀者對作業系統有一個初步但實實在在的概念。
第二篇包含第2、3章,介紹計算機的硬體組成和計算機中信息的表示。由於本教材的定位不在於使讀者對計算機原理有系統的了解,硬體部分的介紹主要就是結合PC的結構,從套用的角度給予介紹。在信息表示方面也類似,主要介紹二進制和典型信息在計算機中的編碼,希望學生建立起的概念是:任何形式的信息都可以用0、1字元串編碼。
第三篇由第4~6章構成,集中講計算機軟體平台。第4章介紹作業系統功能實現的基本原理。一個安裝作業系統的具體例子則放到了附錄中。第5章介紹計算機系統初始化的過程和Shell編程,前者在於加深讀者對作業系統運行過程的理解,後者在於對作業系統作為一個平台所提供的功能的理解。第6章是對應用程式開發平台的簡要介紹。具體的應用程式開發平台有很多,我們只是從“平台”的概念出發,解釋它們的共性內容,即它們一般能為程式設計師提供的方便和設施,包括集成環境,預先實現的應用程式庫接口等。
第四篇包含第7、8章,講計算機網路平台。第7章是網路基礎概念與知識,第8章是典型網路套用。同樣,我們不追求系統介紹網路實現的原理,也不在於詳細介紹各種網路套用的功能,重點在於從使用和維護的角度,介紹所涉及的各種配置及其功能表現的機制和基本原理。 第五篇也只有一章。一方面,我們將視野放開,離開常見的PC類計算機,介紹在企業和機構中常會用到的大型伺服器和集群相關的概念,以及路由器和交換機等網路互聯設備。另一方面,按照《規範》的要求,信息技術方向的學生希望能在大型計算機設施的運行和維護方面具有競爭力,我們特別對機房設施及其相關要求進行了一定的介紹。
如同《規範》中所論述的,信息技術是當代計算機學科發展的一個重要方向,計算機平台技術是該方向的一個核心內容。然而,如何根據信息技術的人才培養定位,編寫出一本這樣的教材來,對我們是一個挑戰。本教材的構思來源於對《規範》中信息技術方向的理解,基本內容主要來自作者多年講授計算機相關課程的教學實踐,並根據《規範》的要求進行了適應性調整。儘管如此,鑒於作者的學識水平以及對信息技術人才知識結構的理解所限,書中定有不少欠妥甚至謬誤之處,謹盼讀者不吝指正。同時我們也意識到,將原本在傳統計算機專業的幾門課的內容抽取一部分成為一門課,對教師也是一個挑戰。我們歡迎使用本教材的教師不僅能給教材提意見,而且也能將自己講授課程的體會和經驗與我們交流。

圖書目錄

第一篇 計算機操作平台 1
第1章 作業系統3
1.1 終端用戶的作業系統平台4
1.1.1 作業系統界面4
1.1.2 作業系統平台的基本功能6
1.1.3 作業系統平台的配置11
1.2 程式設計師的作業系統平台13
1.2.1 程式設計師的作業系統界面13
1.2.2 基本的系統調用14
1.3 作業系統存在的必要性17
1.3.1 作業系統的來歷17
1.3.2 計算機系統的層次結構19
1.3.3 禁止硬體的利與弊22
1.4 常見作業系統及分類23
1.4.1 Windows作業系統24
1.4.2 Linux作業系統25
1.4.3 作業系統分類28
複習題33
討論33
實驗33
第二篇 計算機硬體平台 35
第2章 計算機硬體組成37
2.1 計算機組成結構39
2.2 匯流排44
2.3 存儲器47
2.4 中央處理器CPU53
2.5 輸入輸出系統59
2.5.1 外圍設備60
2.5.2 驅動程式78
2.5.3 外設與主機信息傳送的控制方式80
2.6 計算機系統結構822.6.1 計算機系統結構類型82
2.6.2 計算機性能的提高82
複習題87
練習題87
討論88
實驗88
第3章 信息表示89
3.1 進位制及其轉換89
3.1.1 進位制90
3.1.2 數的進制轉換92
3.1.3 二進制數的運算98
3.2 數字的編碼101
3.2.1 原碼101
3.2.2 補碼102
3.2.3 反碼105
3.2.4 移碼105
3.2.5 小數的表示106
3.3 字元編碼106
3.3.1 簡單字元的編碼--ASCII碼107
3.3.2 漢字字元的編碼--GB2312109
3.3.3 字元的統一碼--Unicode110
3.4 機器指令112
3.5 彙編語言和高級語言113
複習題116
練習題116
討論117
第三篇 計算機軟體平台 119
第4章 作業系統的內部實現機制121
4.1 進程的管理121
4.1.1 進程概念的引入121
4.1.2 進程的狀態125
4.1.3 進程的調度128
4.1.4 進程的同步與互斥130
4.1.5 進程間的通信1324.1.6 執行緒135
4.2 記憶體的管理137
4.2.1 固定分區138
4.2.2 動態分區139
4.2.3 頁式記憶體管理141
4.2.4 段式記憶體管理144
4.2.5 虛擬記憶體管理145
4.3 信息存儲的管理152
4.3.1 外存管理和檔案的物理組織154
4.3.2 檔案操作156
4.3.3 檔案保護161
4.3.4 虛擬檔案系統164
4.4 外設的管理167
4.4.1 外設訪問接口168
4.4.2 設備驅動程式169
4.4.3 設備分配170
4.4.4 中斷技術171
4.4.5 緩衝技術173
複習題176
討論177
實驗177
第5章 系統初始化及Shell編程178
5.1 計算機系統初始化178
5.1.1 啟動過程要做什麼178
5.1.2 計算機啟動過程181
5.1.3 作業系統的啟動過程183
5.2 CMOS設定185
5.3 作業系統安裝190
5.3.1 安裝前的準備工作191
5.3.2 安裝過程要點192
5.4 Shell編程195
5.4.1 Shell的啟動195
5.4.2 Shell命令196
5.4.3 編寫Shell腳本199
複習題215
練習題216
實驗216
第6章 套用軟體開發平台217
6.1 高級程式設計語言217
6.2 開發工具和開發環境219
6.2.1 單獨的工具219
6.2.2 集成的開發環境226
6.2.3 可構建的集成開發環境232
6.2.4 更廣泛的、更易使用的開發平台242
6.3 開發平台中的可重用代碼242
6.3.1 函式243
6.3.2 類243
6.3.3 組件244
6.3.4 框架244
複習題246
討論246
實驗246
第四篇 計算機網路平台 247
第7章 網路平台的服務249
7.1 Web服務251
7.1.1 全球資訊網概述251
7.1.2 Web伺服器的性能提升258
7.2 電子郵件服務261
7.3 FTP服務266
複習題268
討論268
實驗268
第8章 網路平台基礎知識269
8.1 計算機網路的層次結構269
8.1.1 分層動機269
8.1.2 分層與參考模型270
8.2 將計算機接入網路273
8.2.1 實現物理連線273
8.2.2 進行網路信息配置276
8.3 網路基礎支持服務2878.3.1 DHCP服務287
8.3.2 域名系統289
8.3.3 網路管理294
複習題297
討論297
實驗297
第五篇 設施與環境平台 299
第9章 計算機系統基礎設施301
9.1 主要設備301
9.1.1 伺服器301
9.1.2 網路設備308
9.2 計算機機房313
9.2.1 機房的位置314
9.2.2 機房的環境條件314
9.2.3 機房的電氣318
9.2.4 機房的干擾及防護320
複習題324
討論325
實驗325
附錄A Fedora 9安裝過程326
A.1 檢測光碟326
A.2 識別環境326
A.3 網路配置327
A.4 時區配置329
A.5 root密碼設定329
A.6 磁碟分區330
A.7 配置引導裝載程式334
A.8 選擇要安裝的軟體335
A.9 安裝完畢337
參考文獻338

相關詞條

熱門詞條

聯絡我們