計(jì)算機(jī)英語(yǔ)第四版課文翻譯_第1頁(yè)
計(jì)算機(jī)英語(yǔ)第四版課文翻譯_第2頁(yè)
計(jì)算機(jī)英語(yǔ)第四版課文翻譯_第3頁(yè)
計(jì)算機(jī)英語(yǔ)第四版課文翻譯_第4頁(yè)
計(jì)算機(jī)英語(yǔ)第四版課文翻譯_第5頁(yè)
已閱讀5頁(yè),還剩198頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

計(jì)算機(jī)英語(yǔ)第四版課文翻譯計(jì)算機(jī)英語(yǔ)第四版課文翻譯計(jì)算機(jī)英語(yǔ)第四版課文翻譯資料僅供參考文件編號(hào):2022年4月計(jì)算機(jī)英語(yǔ)第四版課文翻譯版本號(hào):A修改號(hào):1頁(yè)次:1.0審核:批準(zhǔn):發(fā)布日期:《計(jì)算機(jī)英語(yǔ)》參考譯文第一單元:計(jì)算機(jī)與計(jì)算機(jī)科學(xué)課文A:計(jì)算機(jī)概覽一、引言計(jì)算機(jī)是一種電子設(shè)備,它能接收一套指令或一個(gè)程序,然后通過(guò)對(duì)數(shù)字?jǐn)?shù)據(jù)進(jìn)行運(yùn)算或?qū)ζ渌问降男畔⑦M(jìn)行處理來(lái)執(zhí)行該程序。要不是由于計(jì)算機(jī)的發(fā)展,現(xiàn)代的高科技世界是不可能產(chǎn)生的。不同類型和大小的計(jì)算機(jī)在整個(gè)社會(huì)被用于存儲(chǔ)和處理各種數(shù)據(jù),從保密政府文件、銀行交易到私人家庭賬目。計(jì)算機(jī)通過(guò)自動(dòng)化技術(shù)開(kāi)辟了制造業(yè)的新紀(jì)元,而且它們也增強(qiáng)了現(xiàn)代通信系統(tǒng)的性能。在幾乎每一個(gè)研究和應(yīng)用技術(shù)領(lǐng)域,從構(gòu)建宇宙模型到產(chǎn)生明天的氣象報(bào)告,計(jì)算機(jī)都是必要的工具,并且它們的應(yīng)用本身就開(kāi)辟了人們推測(cè)的新領(lǐng)域。數(shù)據(jù)庫(kù)服務(wù)和計(jì)算機(jī)網(wǎng)絡(luò)使各種各樣的信息源可供使用。同樣的先進(jìn)技術(shù)也使侵犯?jìng)€(gè)人隱私和商業(yè)秘密成為可能。計(jì)算機(jī)犯罪已經(jīng)成為作為現(xiàn)代技術(shù)代價(jià)組成部分的許多風(fēng)險(xiǎn)之一。二、歷史第一臺(tái)加法機(jī)是法國(guó)科學(xué)家、數(shù)學(xué)家和哲學(xué)家布萊斯?帕斯卡于1642年設(shè)計(jì)的,它是數(shù)字計(jì)算機(jī)的先驅(qū)。這個(gè)裝置使用了一系列帶有10個(gè)齒的輪子,每個(gè)齒代表從0到9的一個(gè)數(shù)字。輪子互相連接,從而通過(guò)按照正確的齒數(shù)向前轉(zhuǎn)動(dòng)輪子,就可以將數(shù)字彼此相加。17世紀(jì)70年代,德國(guó)哲學(xué)家和數(shù)學(xué)家戈特弗里德威廉萊布尼茲對(duì)這臺(tái)機(jī)器進(jìn)行了改良,設(shè)計(jì)了一臺(tái)

也能做乘法的機(jī)器。法國(guó)發(fā)明家約瑟夫―瑪麗?雅卡爾,在設(shè)計(jì)自動(dòng)織機(jī)時(shí),使用了穿孔的薄木板來(lái)控制復(fù)

雜圖案的編織。在19世紀(jì)80年代期間,美國(guó)統(tǒng)計(jì)學(xué)家赫爾曼?何勒里斯,想出了使用類似雅卡爾的木板那樣的穿孔卡片來(lái)處理數(shù)據(jù)的主意。通過(guò)使用一種將穿孔卡片從電觸點(diǎn)上移過(guò)的系統(tǒng),他得以為1890年的美國(guó)人口普查匯編統(tǒng)計(jì)信息。1、分析機(jī)也是在19世紀(jì),英國(guó)數(shù)學(xué)家和發(fā)明家查爾斯?巴比奇,提出了現(xiàn)代數(shù)字計(jì)算機(jī)的原理。他構(gòu)想出旨在處理復(fù)雜數(shù)學(xué)題的若干機(jī)器,如差分機(jī)。許多歷史學(xué)家認(rèn)為,巴比奇及其合伙人,數(shù)學(xué)家?jiàn)W古斯塔埃達(dá)拜倫,是現(xiàn)代數(shù)字計(jì)算機(jī)的真正先驅(qū)。巴比奇的設(shè)計(jì)之一,分析

機(jī),具有現(xiàn)代計(jì)算機(jī)的許多特征。它有一個(gè)以一疊穿孔卡片的形式存在的輸入流、一個(gè)保存數(shù)據(jù)的“倉(cāng)庫(kù)”、一個(gè)進(jìn)行算術(shù)運(yùn)算的“工廠”和一個(gè)產(chǎn)生永久性紀(jì)錄的打印機(jī)。巴比奇未能將這個(gè)想法付諸實(shí)踐,盡管在那個(gè)時(shí)代它在技術(shù)上很可能是可行的。2、早期的計(jì)算機(jī)模擬計(jì)算機(jī)是19世紀(jì)末開(kāi)始制造的。早期型號(hào)是靠轉(zhuǎn)動(dòng)的軸和齒輪來(lái)進(jìn)行計(jì)算的。用任何其他方法都難以計(jì)算的方程近似數(shù)值,可以用這樣的機(jī)器來(lái)求得。開(kāi)爾文勛爵制造了一臺(tái)機(jī)械潮汐預(yù)報(bào)器,這實(shí)際上就是一臺(tái)專用模擬計(jì)算機(jī)。第一次和第二次世界大戰(zhàn)期間,機(jī)械模擬計(jì)算系統(tǒng),以及后來(lái)的電動(dòng)模擬計(jì)算系統(tǒng),在潛艇上被用作魚(yú)雷航線預(yù)測(cè)器,在飛機(jī)上被用作轟炸瞄準(zhǔn)具的控制器。有人還設(shè)計(jì)了另一個(gè)系統(tǒng),用于預(yù)測(cè)密西西比河流域春天的洪水。3、電子計(jì)算機(jī)第二次世界大戰(zhàn)期間,以倫敦北面的布萊切利公園為工作地點(diǎn)的一組科學(xué)家和數(shù)學(xué)家,制造了最早的全電子數(shù)字計(jì)算機(jī)之一:“巨人”。到1943年12月,這個(gè)包含了1500個(gè)真空管的“巨人”開(kāi)始運(yùn)轉(zhuǎn)了。它被以艾倫?圖靈為首的小組用于破譯德國(guó)用恩尼格碼加密的無(wú)線

電報(bào),他們的嘗試大部分是成功的。除此而外,在美國(guó),約翰阿塔納索夫和克利福德貝里早在1939年就在艾奧瓦州立學(xué)院

制造了一臺(tái)原型電子機(jī)。這臺(tái)原型機(jī)和后來(lái)的研究工作都是悄悄完成的,而且后來(lái)因1945年電子數(shù)字積分計(jì)算機(jī)(ENIAC)的研制而顯得相形見(jiàn)絀。ENIAC被授予了專利。但是,數(shù)十年后,在1973年,當(dāng)該機(jī)被揭露吸收了在阿塔納索夫―貝里計(jì)算機(jī)中首次使用的原理后,這項(xiàng)專利被廢除了。圖1A-1:ENIAC是最早的全電子數(shù)字計(jì)算機(jī)之一。ENIAC(見(jiàn)圖1A-1)含有18,000個(gè)真空管,具有每分鐘幾百次的乘法運(yùn)算速度,但是,其程序最初是通過(guò)導(dǎo)線傳送到處理器內(nèi)的,必須由人工更改。根據(jù)美籍匈牙利數(shù)學(xué)家約翰?馮?諾伊曼的想法,后來(lái)制造的機(jī)器帶有一個(gè)程序存儲(chǔ)器。指令像數(shù)據(jù)一樣存儲(chǔ)在“存儲(chǔ)器”中,使計(jì)算機(jī)在執(zhí)行過(guò)程中擺脫了紙帶閱讀器的速度限制,并使問(wèn)題在不給計(jì)算機(jī)重新接線的情況下得以解決。20世紀(jì)50年代末,晶體管在計(jì)算機(jī)中的應(yīng)用,標(biāo)志著比在真空管機(jī)器情況下體積小、速度快、用途廣的邏輯元件的出現(xiàn)。由于晶體管使用的功率小得多,壽命也長(zhǎng)得多,僅這項(xiàng)發(fā)展本身就導(dǎo)致了被稱之為第二代計(jì)算機(jī)的改良機(jī)器的產(chǎn)生。元件變小了,元件的間距也變小了,而且系統(tǒng)的制造成本也變得低得多。4、集成電路20世紀(jì)60年代末,集成電路(見(jiàn)圖1A-2)得到采用,從而有可能將許多晶體管制作在一塊硅襯底上,晶體管之間用覆鍍?cè)谶m當(dāng)位置的導(dǎo)線相連接。集成電路導(dǎo)致價(jià)格、尺寸和故障率的進(jìn)一步降低。20世紀(jì)70年代中期,隨著大規(guī)模集成電路和后來(lái)的超大規(guī)模集成電路(微芯片)的采用,成千上萬(wàn)個(gè)彼此相連的晶體管被蝕刻在一塊硅襯底上,于是微處理器成為現(xiàn)實(shí)。圖1A-2:集成電路那么,再回過(guò)頭來(lái)看看現(xiàn)代計(jì)算機(jī)處理開(kāi)關(guān)值的能力:20世紀(jì)70年代的計(jì)算機(jī)一般一次能夠處理8個(gè)開(kāi)關(guān)值。也就是說(shuō),在每個(gè)循環(huán)中,它們能處理8個(gè)二進(jìn)制數(shù)字或位的數(shù)據(jù)。8個(gè)位為一組,稱為一個(gè)字節(jié);每個(gè)字節(jié)包含256個(gè)開(kāi)與關(guān)(或0與1)的可能模式。每個(gè)模式相當(dāng)于一條指令、一條指令的一部分或者一個(gè)特定的數(shù)據(jù)類型,如一個(gè)數(shù)字、一個(gè)字符或一個(gè)圖形符號(hào)。例如,11010010這個(gè)模式可能是二進(jìn)制數(shù)據(jù)——在此情況下代表210這個(gè)十進(jìn)制數(shù)字,或者它可能是一條指令,告訴計(jì)算機(jī)將存儲(chǔ)在其交換設(shè)備中的數(shù)據(jù)與存儲(chǔ)在存儲(chǔ)芯片某個(gè)位置的數(shù)據(jù)進(jìn)行比較。一次能處理16、32和64位數(shù)據(jù)的處理器的研制,提高了計(jì)算機(jī)的速度。一臺(tái)計(jì)算機(jī)能夠處理的全部可識(shí)別模式——操作總清單——稱為其指令集。隨著現(xiàn)代數(shù)字計(jì)算機(jī)的不斷發(fā)展,這兩個(gè)因素——能夠同時(shí)處理的位數(shù)和指令集的大小——在繼續(xù)增長(zhǎng)。三、硬件不論尺寸大小,現(xiàn)代數(shù)字計(jì)算機(jī)在概念上都是類似的。然而,根據(jù)成本與性能,它們可分為幾類:個(gè)人計(jì)算機(jī)或微型計(jì)算機(jī),一種成本較低的機(jī)器,通常只有桌面大?。ūM管“膝上型計(jì)算機(jī)”小到能夠放入公文包,而“掌上型計(jì)算機(jī)”能夠放入口袋);工作站,一種具有增強(qiáng)型圖形與通信能力、從而使其對(duì)于辦公室工作特別有用的微型計(jì)算機(jī);小型計(jì)算機(jī),一般就個(gè)人使用而言太昂貴,其性能適合于工商企業(yè)、學(xué)校或?qū)嶒?yàn)室;以及大型機(jī),一種大型的昂貴機(jī)器,具有滿足大規(guī)模工商企業(yè)、政府部門(mén)、科研機(jī)構(gòu)或者諸如此類機(jī)構(gòu)需要的能力(其中體積最大、速度最快的稱為巨型計(jì)算機(jī))。一臺(tái)數(shù)字計(jì)算機(jī)不是單一的機(jī)器。確切地說(shuō),它是由5個(gè)不同的要素組成的系統(tǒng):(1)中央處理器;(2)輸入設(shè)備;(3)存儲(chǔ)設(shè)備;(4)輸出設(shè)備;以及(5)被稱作總線的通信網(wǎng)絡(luò),它將系統(tǒng)的所有要素連接起來(lái)并將系統(tǒng)與外界連接起來(lái)。四、編程一個(gè)程序就是一系列指令,告訴計(jì)算機(jī)硬件對(duì)數(shù)據(jù)執(zhí)行什么樣的操作。程序可以內(nèi)嵌在硬件本身里,或以軟件的形式獨(dú)立存在。在一些專門(mén)或“專用”計(jì)算機(jī)中,操作指令被嵌入其電路里;常見(jiàn)的例子有計(jì)算器、手表、汽車發(fā)動(dòng)機(jī)和微波爐中的微型計(jì)算機(jī)。另一方面,通用計(jì)算機(jī)盡管含有一些內(nèi)置的程序(在只讀存儲(chǔ)器中)或者指令(在處理器芯片中),但依靠外部程序來(lái)執(zhí)行有用的任務(wù)。計(jì)算機(jī)一旦被編程,就只能做在任何特定時(shí)刻控制它的軟件所允許它做的事情。廣泛使用的軟件包括一系列各種各樣的應(yīng)用程序——告訴計(jì)算機(jī)如何執(zhí)行各種任務(wù)的指令。五、未來(lái)的發(fā)展計(jì)算機(jī)發(fā)展的一個(gè)持續(xù)不斷的趨勢(shì)是微小型化,亦即將越來(lái)越多的電路元件壓縮在越來(lái)越小的芯片空間內(nèi)的努力。研究人員也在設(shè)法利用超導(dǎo)性來(lái)提高電路的功能速度。超導(dǎo)性是在超低溫條件下在某些材料中觀察到的電阻減小現(xiàn)象。計(jì)算機(jī)發(fā)展的另一個(gè)趨勢(shì)是“第五代”計(jì)算機(jī)的研制工作,亦即研制可以解決復(fù)雜問(wèn)題而且其解決方法用“創(chuàng)造性的”這個(gè)詞來(lái)形容或許最終名副其實(shí)的計(jì)算機(jī),理想的目標(biāo)是真正的人工智能。正在積極探索的一條道路是并行處理計(jì)算,亦即利用許多芯片來(lái)同時(shí)執(zhí)行數(shù)個(gè)不同的任務(wù)。一種重要的并行處理方法是模仿神經(jīng)系統(tǒng)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)。另一個(gè)持續(xù)不斷的趨勢(shì)是計(jì)算機(jī)聯(lián)網(wǎng)的增加。計(jì)算機(jī)聯(lián)網(wǎng)現(xiàn)在使用由衛(wèi)星和電纜鏈路構(gòu)成的世界范圍的數(shù)據(jù)通信系統(tǒng),來(lái)將全球的計(jì)算機(jī)連在一起。此外,大量的研究工作還投入在探索“光”計(jì)算機(jī)的可能性上——這種硬件處理的不是電脈沖而是快得多的光脈沖。第二單元:計(jì)算機(jī)體系結(jié)構(gòu)課文A:計(jì)算機(jī)硬件一、引言計(jì)算機(jī)硬件是計(jì)算機(jī)運(yùn)行所需要的設(shè)備,由可被物理操縱的部件組成。這些部件的功能一般分為3個(gè)主要類別:輸入、輸出和存儲(chǔ)。這些類別的部件與微處理器相連接,特別是與計(jì)算機(jī)的中央處理器相連接。中央處理器系電子線路,它通過(guò)稱為總線的線路或電路來(lái)提供計(jì)算能力和對(duì)計(jì)算機(jī)進(jìn)行控制。另一方面,軟件是計(jì)算機(jī)用來(lái)處理數(shù)據(jù)的一套指令,如文字處理程序或電子游戲。這些程序通常被存儲(chǔ)起來(lái),并由計(jì)算機(jī)硬件調(diào)入和調(diào)出中央處理器。軟件也控制著硬件如何利用:例如,如何從存儲(chǔ)設(shè)備中檢索信息。輸入與輸出硬件的交互是由基本輸入/輸出系統(tǒng)(BIOS)軟件控制的。盡管微處理器在技術(shù)上仍被認(rèn)為是硬件,但其部分功能也與計(jì)算機(jī)軟件有關(guān)系。既然微處理器同時(shí)具有硬件與軟件的特征,它們因此經(jīng)常被稱作固件。二、輸入硬件輸入硬件由給計(jì)算機(jī)提供信息和指令的外部設(shè)備——亦即計(jì)算機(jī)中央處理器以外的部件——組成。光筆是帶有光敏端頭的輸入筆,用來(lái)在計(jì)算機(jī)顯示屏上直接寫(xiě)畫(huà),或者通過(guò)按光筆上的夾子或用光筆接觸屏幕來(lái)在屏幕上選擇信息。這種筆含有光傳感器,用于識(shí)別筆所經(jīng)過(guò)的屏幕部分。鼠標(biāo)是為一只手抓握而設(shè)計(jì)的指示設(shè)備。它在底部有一個(gè)檢測(cè)裝置(通常是一個(gè)圓球),使用戶能夠通過(guò)在一個(gè)平面上移動(dòng)鼠標(biāo)來(lái)控制屏幕上指針或光標(biāo)的運(yùn)動(dòng)。該裝置滑過(guò)平面時(shí),光標(biāo)隨著在屏幕上移動(dòng)。要在屏幕上選擇項(xiàng)目或命令,用戶就點(diǎn)擊鼠標(biāo)上的按鈕。操縱桿是由一根桿子組成的指示設(shè)備,該桿以向多個(gè)方向移動(dòng)來(lái)操縱計(jì)算機(jī)屏幕上的光標(biāo)或者其他圖形對(duì)象。鍵盤(pán)是一個(gè)像打字機(jī)的設(shè)備,它使用戶得以向計(jì)算機(jī)鍵入文本和命令。有些鍵盤(pán)有特殊功能鍵或集成指示設(shè)備,如軌跡球或者可以讓用戶通過(guò)手指的移動(dòng)來(lái)移動(dòng)屏幕上光標(biāo)的觸敏區(qū)。光掃描儀利用光感應(yīng)設(shè)備將圖片或文本等形式的圖像轉(zhuǎn)換成計(jì)算機(jī)能夠處理的電子信號(hào)。例如,一張照片可以掃入一臺(tái)計(jì)算機(jī),然后包括在該計(jì)算機(jī)創(chuàng)建的文本文件中。兩種最常見(jiàn)的掃描儀類型是平板掃描儀和手持式掃描儀,前者類似一臺(tái)辦公室用復(fù)印機(jī),后者用手動(dòng)的方式從要處理的圖像上掃過(guò)。麥克風(fēng)是將聲音轉(zhuǎn)換成可被計(jì)算機(jī)存儲(chǔ)、處理和回放的信號(hào)的設(shè)備。語(yǔ)音識(shí)別模塊是將話語(yǔ)轉(zhuǎn)換成計(jì)算機(jī)能夠識(shí)別和處理的信息的設(shè)備。調(diào)制解調(diào)器代表調(diào)制器―解調(diào)器,是將計(jì)算機(jī)與電話線連接、允許信息傳送給或接收自另一臺(tái)計(jì)算機(jī)的設(shè)備。每臺(tái)發(fā)送或接收信息的計(jì)算機(jī)都必須與調(diào)制解調(diào)器相連接。一臺(tái)計(jì)算機(jī)發(fā)送的信息由調(diào)制解調(diào)器轉(zhuǎn)換成音頻信號(hào),然后通過(guò)電話線傳送到接收端調(diào)制解調(diào)器,由其將信號(hào)轉(zhuǎn)換成接收端計(jì)算機(jī)能夠理解的信息。三、輸出硬件輸出硬件由將信息從計(jì)算機(jī)中央處理器傳給計(jì)算機(jī)用戶的外部設(shè)備構(gòu)成。視頻顯示器或屏幕將計(jì)算機(jī)生成的信息轉(zhuǎn)換成可視信息。顯示器一般有兩種形式:陰極射線管視頻屏幕和液晶顯示視頻屏幕?;陉帢O射線管的屏幕或監(jiān)視器看起來(lái)就像一臺(tái)電視機(jī)。從中央處理器輸出的信息,使用電子束顯示出來(lái),其過(guò)程是電子束掃描熒光屏,而熒光屏則發(fā)出光并產(chǎn)生圖像?;谝壕э@示器的屏幕將可視信息顯示在比基于陰極射線管的視頻監(jiān)視器平且小的屏幕上。液晶顯示器常常用于膝上型計(jì)算機(jī)。打印機(jī)將計(jì)算機(jī)輸出的文本和圖像打印在紙上。點(diǎn)陣打印機(jī)使用細(xì)小的金屬絲打擊色帶,從而形成字符。激光打印機(jī)使用光束在磁鼓上畫(huà)圖像,然后由磁鼓吸起稱為墨粉的微小黑粒。墨粉熔凝到紙上,形成圖像。噴墨打印機(jī)將小墨滴噴射到紙上,形成字符和圖像。四、存儲(chǔ)硬件存儲(chǔ)硬件永久性地存儲(chǔ)信息和程序,供計(jì)算機(jī)檢索。兩種主要的存儲(chǔ)設(shè)備是磁盤(pán)驅(qū)動(dòng)器和存儲(chǔ)器。磁盤(pán)驅(qū)動(dòng)器有幾種類型:硬盤(pán)、軟盤(pán)、磁光盤(pán)和光盤(pán)。硬盤(pán)驅(qū)動(dòng)器將信息存儲(chǔ)在盤(pán)中嵌入的磁性顆粒中。硬盤(pán)驅(qū)動(dòng)器通常是計(jì)算機(jī)的固定部分,能存儲(chǔ)大量的信息并對(duì)其進(jìn)行非常快速的檢索。軟盤(pán)驅(qū)動(dòng)器也將信息存儲(chǔ)在磁性顆粒中,但這些顆粒是嵌入可移動(dòng)的盤(pán)中的,而這些盤(pán)既可能是軟的也可能是硬的。軟盤(pán)比硬盤(pán)存儲(chǔ)的信息少,檢索該信息的速度也慢得多。磁光盤(pán)驅(qū)動(dòng)器將信息存儲(chǔ)在對(duì)激光和磁場(chǎng)均敏感的可移動(dòng)盤(pán)上。它們可存儲(chǔ)的信息通常與硬盤(pán)一樣多,但檢索速度稍微慢一點(diǎn)。由反射材料制成的光盤(pán),其表面燒蝕出凹陷區(qū)。光盤(pán)驅(qū)動(dòng)器(只讀光盤(pán)存儲(chǔ)器,CD-ROM)就是將信息存儲(chǔ)于此。存儲(chǔ)在只讀光盤(pán)存儲(chǔ)器上的信息不能擦除或用新信息蓋寫(xiě)。它們能夠存儲(chǔ)和硬盤(pán)驅(qū)動(dòng)器差不多的信息量,但信息檢索速度比其慢。存儲(chǔ)器指存儲(chǔ)信息供中央處理器快速檢索的計(jì)算機(jī)芯片。隨機(jī)存儲(chǔ)器(RAM)用來(lái)存儲(chǔ)操作計(jì)算機(jī)程序的信息和指令。通常,程序由磁盤(pán)驅(qū)動(dòng)器的存儲(chǔ)區(qū)調(diào)到隨機(jī)存儲(chǔ)器中。隨機(jī)存儲(chǔ)器也稱作易失性存儲(chǔ)器,因?yàn)楫?dāng)計(jì)算機(jī)的電源關(guān)閉時(shí),計(jì)算機(jī)芯片中的信息隨著丟失。只讀存儲(chǔ)器(ROM)包含必須永久性可供計(jì)算機(jī)操作使用的關(guān)鍵信息和軟件,如從開(kāi)機(jī)到關(guān)機(jī)一直指揮計(jì)算機(jī)運(yùn)行的操作系統(tǒng)。只讀存儲(chǔ)器叫做非易失性存儲(chǔ)器,因?yàn)楫?dāng)計(jì)算機(jī)的電源關(guān)閉時(shí),存儲(chǔ)芯片中的信息不會(huì)丟失。有些設(shè)備有不止一種用途。例如,軟盤(pán)也可用作輸入設(shè)備,如果它們含有計(jì)算機(jī)用戶要使用和處理的信息的話。此外,它們也可用作輸出設(shè)備,如果用戶想將計(jì)算結(jié)果存儲(chǔ)在它們上面的話。五、硬件的連接要想運(yùn)轉(zhuǎn),硬件需要物理連接,使部件之間能夠通信和交互??偩€提供了一種常見(jiàn)的互連系統(tǒng)。它由一組導(dǎo)線或電路組成,在計(jì)算機(jī)的內(nèi)部組成部分之間協(xié)調(diào)和移動(dòng)信息。計(jì)算機(jī)總線由兩條通道組成:一條由中央處理器用來(lái)給數(shù)據(jù)定位,叫做地址總線;另一條用來(lái)將該數(shù)據(jù)送往那個(gè)地址,叫做數(shù)據(jù)總線??偩€可用兩個(gè)特征來(lái)描述:一次可以處理的信息量——稱為總線寬度,以及傳送這些數(shù)據(jù)的速度。串行連接是一根或一組導(dǎo)線,用于將信息從中央處理器傳送到外部設(shè)備,如鼠標(biāo)、鍵盤(pán)、調(diào)制解調(diào)器、掃描儀和一些類型的打印機(jī)。這種連接一次只能傳送一段數(shù)據(jù),因此比較慢。使用串行連接的好處在于它能提供遠(yuǎn)距離的有效連接。并行連接使用多組導(dǎo)線來(lái)同時(shí)傳送數(shù)個(gè)信息塊。多數(shù)掃描儀和打印機(jī)使用這種連接方式。并行連接比串行連接速度快得多,但它僅限于中央處理器和外部設(shè)備之間不到3米(10英尺)的距離。第三單元:計(jì)算機(jī)語(yǔ)言與編程課文A:編程語(yǔ)言一、引言在計(jì)算機(jī)科學(xué)中,編程語(yǔ)言是用于編寫(xiě)可由計(jì)算機(jī)運(yùn)行的一系列指令(計(jì)算機(jī)程序)的人工語(yǔ)言。與英語(yǔ)等自然語(yǔ)言相類似,編程語(yǔ)言有詞匯、語(yǔ)法和句法。然而,自然語(yǔ)言不適合為計(jì)算機(jī)編程,因?yàn)樗鼈儠?huì)引起歧義,也就是說(shuō)它們的詞匯和語(yǔ)法結(jié)構(gòu)可能被用多種方式進(jìn)行解釋。用于計(jì)算機(jī)編程的語(yǔ)言必須有簡(jiǎn)單的邏輯結(jié)構(gòu),它們的語(yǔ)法、拼寫(xiě)和標(biāo)點(diǎn)符號(hào)規(guī)則必須精確。編程語(yǔ)言在復(fù)雜性和通用程度上差異很大。一些編程語(yǔ)言是為了處理特定類型的計(jì)算問(wèn)題或?yàn)榱擞糜谔囟ㄐ吞?hào)的計(jì)算機(jī)系統(tǒng)而編寫(xiě)的。例如,F(xiàn)ORTRAN和COBOL等編程語(yǔ)言是為解決某些普遍的編程問(wèn)題類型而編寫(xiě)的——FORTRAN是為了科學(xué)領(lǐng)域的應(yīng)用,而COBOL是為了商業(yè)領(lǐng)域的應(yīng)用。盡管這些語(yǔ)言旨在處理特定類型的計(jì)算機(jī)問(wèn)題,但它們具有很高的可移植性,也就是說(shuō)它們可以用來(lái)為多種類型的計(jì)算機(jī)編程。其他的語(yǔ)言,如機(jī)器語(yǔ)言,是為一種特定型號(hào)的計(jì)算機(jī)系統(tǒng),甚至是一臺(tái)特定的計(jì)算機(jī),在某些研究領(lǐng)域使用而編寫(xiě)的。最常用的編程語(yǔ)言具有很高的可移植性,可以用于有效地解決不同類型的計(jì)算問(wèn)題。像C、PASCAL和BASIC這樣的語(yǔ)言就屬于這一范疇。二、語(yǔ)言類型編程語(yǔ)言可分為低級(jí)語(yǔ)言和高級(jí)語(yǔ)言。低級(jí)編程語(yǔ)言或機(jī)器語(yǔ)言,是編程語(yǔ)言中最基礎(chǔ)的類型,可以被計(jì)算機(jī)直接理解。機(jī)器語(yǔ)言視計(jì)算機(jī)制造商與型號(hào)不同而有所區(qū)別。高級(jí)語(yǔ)言是必須首先翻譯成機(jī)器語(yǔ)言計(jì)算機(jī)才能理解和處理的編程語(yǔ)言。C、C++、PASCAL和FORTRAN都是高級(jí)語(yǔ)言的例子。匯編語(yǔ)言是中級(jí)語(yǔ)言,非常接近于機(jī)器語(yǔ)言,沒(méi)有其他高級(jí)語(yǔ)言所表現(xiàn)出的語(yǔ)言復(fù)雜程度,但仍然得翻譯成機(jī)器語(yǔ)言。1、機(jī)器語(yǔ)言在機(jī)器語(yǔ)言中,指令被寫(xiě)成計(jì)算機(jī)能夠直接理解的1和0(稱作位)序列。一條機(jī)器語(yǔ)言指令一般告訴計(jì)算機(jī)4件事:(1)到計(jì)算機(jī)主存(隨機(jī)存儲(chǔ)器)的什么位置去找一兩個(gè)數(shù)字或簡(jiǎn)單的數(shù)據(jù)片;(2)要執(zhí)行的簡(jiǎn)單操作,如將兩個(gè)數(shù)字相加;(3)在主存的什么位置存放該簡(jiǎn)單操作的結(jié)果;(4)到什么位置去找下一條要執(zhí)行的指令。盡管所有的可執(zhí)行程序最終都是以機(jī)器語(yǔ)言的形式被計(jì)算機(jī)讀入的,但它們并非都是用機(jī)器語(yǔ)言編寫(xiě)的。直接用機(jī)器語(yǔ)言編程極端困難,因?yàn)橹噶钍?和1的序列。一條典型的機(jī)器語(yǔ)言指令可能寫(xiě)成1001011001011,意思是把存儲(chǔ)寄存器A的內(nèi)容加到存儲(chǔ)寄存器B的內(nèi)容中。2、高級(jí)語(yǔ)言高級(jí)語(yǔ)言是相對(duì)復(fù)雜的一系列語(yǔ)句,它們使用來(lái)自人類語(yǔ)言的詞匯和句法。高級(jí)語(yǔ)言比匯編語(yǔ)言或機(jī)器語(yǔ)言類似于正常的人類語(yǔ)言,因此用高級(jí)語(yǔ)言來(lái)編寫(xiě)復(fù)雜的程序比較容易。這些編程語(yǔ)言可以更快地開(kāi)發(fā)更大和更復(fù)雜的程序。然而,高級(jí)語(yǔ)言必須由稱為編譯器的另外一種程序翻譯成機(jī)器語(yǔ)言,計(jì)算機(jī)才能理解它們。因?yàn)檫@個(gè)原因,與用匯編語(yǔ)言編寫(xiě)的程序相比較,用高級(jí)語(yǔ)言編寫(xiě)的程序可能運(yùn)行時(shí)間長(zhǎng),占用內(nèi)存多。3、匯編語(yǔ)言計(jì)算機(jī)程序員通過(guò)使用匯編語(yǔ)言,使機(jī)器語(yǔ)言程序比較容易編寫(xiě)。在匯編語(yǔ)言中,每個(gè)語(yǔ)句大致對(duì)應(yīng)于一條機(jī)器語(yǔ)言指令。匯編語(yǔ)言的語(yǔ)句是借助易于記憶的命令編寫(xiě)的。在一個(gè)典型的匯編語(yǔ)言語(yǔ)句中,把存儲(chǔ)寄存器A的內(nèi)容加到存儲(chǔ)寄存器B的內(nèi)容中這一命令,可能寫(xiě)成ADDB,A。匯編語(yǔ)言與機(jī)器語(yǔ)言具有某些共同的特征。例如,對(duì)特定的位進(jìn)行操控,用匯編語(yǔ)言和機(jī)器語(yǔ)言都是可行的。當(dāng)盡量減少程序的運(yùn)行時(shí)間很重要時(shí),程序員就使用匯編語(yǔ)言,因?yàn)閺膮R編語(yǔ)言到機(jī)器語(yǔ)言的翻譯相對(duì)簡(jiǎn)單。匯編語(yǔ)言也用于計(jì)算機(jī)的某個(gè)部分必須被直接控制的情況,如監(jiān)視器上的單個(gè)點(diǎn)或者單個(gè)字符向打印機(jī)的流動(dòng)。三、高級(jí)語(yǔ)言的分類高級(jí)語(yǔ)言通常分為面向過(guò)程語(yǔ)言、函數(shù)式語(yǔ)言、面向?qū)ο笳Z(yǔ)言或邏輯語(yǔ)言。當(dāng)今最常見(jiàn)的高級(jí)語(yǔ)言是面向過(guò)程語(yǔ)言。在這種語(yǔ)言中,執(zhí)行某個(gè)完整功能的一個(gè)或多個(gè)相關(guān)的語(yǔ)句塊組成一個(gè)程序模塊或過(guò)程,而且被給予諸如“過(guò)程A”一類名稱。如果在程序的其他地方需要同樣的操作序列,可以使用一個(gè)簡(jiǎn)單的語(yǔ)句調(diào)回這個(gè)過(guò)程。實(shí)質(zhì)上,一個(gè)過(guò)程就是一個(gè)小型程序。一個(gè)大型程序可以通過(guò)將執(zhí)行不同任務(wù)的過(guò)程組合在一起而構(gòu)成。過(guò)程語(yǔ)言使程序變得比較短,而且比較容易被計(jì)算機(jī)讀取,但要求程序員將每個(gè)過(guò)程都設(shè)計(jì)得足夠通用,能用于不同的情況。函數(shù)式語(yǔ)言像對(duì)待數(shù)學(xué)函數(shù)一樣對(duì)待過(guò)程,并允許像處理程序中的任何其他數(shù)據(jù)一樣處理它們。這就使程序構(gòu)造在更高、更嚴(yán)密的水平上得以實(shí)現(xiàn)。函數(shù)式語(yǔ)言也允許變量——在程序運(yùn)行過(guò)程中可以被用戶指定和更改的數(shù)據(jù)符號(hào)——只被賦值一次。這樣,通過(guò)減少對(duì)語(yǔ)句執(zhí)行的確切順序給予關(guān)注的必要性,就簡(jiǎn)化了編程,因?yàn)橐粋€(gè)變量沒(méi)有必要每次在一個(gè)程序語(yǔ)句中用到,都重新聲明或重新說(shuō)明。來(lái)自函數(shù)式語(yǔ)言的許多思想已經(jīng)成為許多現(xiàn)代過(guò)程語(yǔ)言的關(guān)鍵部分。面向?qū)ο笳Z(yǔ)言是函數(shù)式語(yǔ)言的發(fā)展結(jié)果。在面向?qū)ο笳Z(yǔ)言中,用來(lái)編寫(xiě)程序的代碼和由程序處理的數(shù)據(jù),組合成叫做對(duì)象的單元。對(duì)象進(jìn)一步組合成類,而類則定義對(duì)象必須具有的屬性。類的一個(gè)簡(jiǎn)單例子就是書(shū)這個(gè)類。這個(gè)類中的對(duì)象可能是小說(shuō)和短篇小說(shuō)。對(duì)象還有某些與其相關(guān)的功能,稱為方法。計(jì)算機(jī)通過(guò)使用一個(gè)對(duì)象的某種方法來(lái)訪問(wèn)該對(duì)象。方法對(duì)對(duì)象中的數(shù)據(jù)執(zhí)行某種操作,然后將值返回給計(jì)算機(jī)。對(duì)象的類也可進(jìn)一步組合成層,而在層中一個(gè)類的對(duì)象可繼承另一個(gè)類的方法。面向?qū)ο笳Z(yǔ)言提供的這種結(jié)構(gòu),使該語(yǔ)言對(duì)于復(fù)雜的編程任務(wù)非常有用。邏輯語(yǔ)言將邏輯用作其數(shù)學(xué)基礎(chǔ)。邏輯程序由事實(shí)組和“如果―則”規(guī)則構(gòu)成,“如果―則”規(guī)則具體說(shuō)明一組事實(shí)如何可以從其他事實(shí)組中推斷出來(lái),例如:如果X語(yǔ)句為真,則Y語(yǔ)句為假。在這樣一個(gè)程序的執(zhí)行過(guò)程中,一條輸入語(yǔ)句可以按照邏輯從程序中的其他語(yǔ)句推斷出來(lái)。許多人工智能程序使用這種語(yǔ)言編寫(xiě)。四、語(yǔ)言結(jié)構(gòu)與成分編程語(yǔ)言使用特定類型的語(yǔ)句或指令,來(lái)給程序提供功能結(jié)構(gòu)。程序中的一個(gè)語(yǔ)句是表達(dá)一個(gè)簡(jiǎn)單想法的基本句子——它的目的是給計(jì)算機(jī)一條基本指令。語(yǔ)句定義所允許的數(shù)據(jù)類型、數(shù)據(jù)如何處理以及過(guò)程和函數(shù)的工作方式。程序員使用語(yǔ)句來(lái)操控編程語(yǔ)言的常見(jiàn)成分,如變量和宏(程序中的小程序段)。數(shù)據(jù)聲明語(yǔ)句給稱為變量的那些程序元素以名稱和屬性。變量在程序中可以賦予不同的值。變量可以具有的屬性稱為類型,它們包括:變量中能保存哪些可能的值;這些值中使用何種程度的數(shù)值精度;以及一個(gè)變量可以如何以有組織結(jié)構(gòu)的方式——如以表或數(shù)組的形式——表示一組比較簡(jiǎn)單的值。在許多編程語(yǔ)言中,一個(gè)關(guān)鍵的數(shù)據(jù)類型是指針。指針變量本身沒(méi)有值,而是含有計(jì)算機(jī)可以用來(lái)查找某個(gè)其他變量的信息——也就是說(shuō),它們指向另一個(gè)變量。表達(dá)式是語(yǔ)句的一段,用于描述要對(duì)一些程序變量執(zhí)行的一系列計(jì)算操作,如X+Y/Z,其中X、Y和Z為變量,加法和除法是計(jì)算操作。賦值語(yǔ)句給一個(gè)變量賦予得自某個(gè)表達(dá)式的值,而條件語(yǔ)句則指定要被測(cè)試、然后用于選擇接下來(lái)應(yīng)該執(zhí)行的其他語(yǔ)句的表達(dá)式。過(guò)程和函數(shù)語(yǔ)句將某些代碼塊定義為以后可在程序中回調(diào)的過(guò)程或函數(shù)。這些語(yǔ)句也定義程序員可選的變量和參數(shù)種類,以及當(dāng)表達(dá)式訪問(wèn)過(guò)程或函數(shù)時(shí)代碼所返回的值的類型。許多編程語(yǔ)言也容許叫做宏的小翻譯程序。宏將那些用程序員定義的語(yǔ)言結(jié)構(gòu)編寫(xiě)的代碼段翻譯成編程語(yǔ)言可以理解的語(yǔ)句。五、歷史編程語(yǔ)言幾乎可以追溯到20世紀(jì)40年代數(shù)字計(jì)算機(jī)發(fā)明之時(shí)。隨著商用計(jì)算機(jī)的推出,最早的匯編語(yǔ)言出現(xiàn)于20世紀(jì)50年代末。最早的過(guò)程語(yǔ)言是在20世紀(jì)50年代末到60年代初開(kāi)發(fā)的:約翰巴克斯創(chuàng)造了FORTRAN語(yǔ)言,接著格雷斯霍珀創(chuàng)造了COBOL語(yǔ)言。第一種

函數(shù)式語(yǔ)言是LISP,由約翰?麥卡錫于20世紀(jì)50年代末編寫(xiě)。所有這3種語(yǔ)言今天仍在廣泛使用,但經(jīng)歷過(guò)大量更新。20世紀(jì)60年代末,出現(xiàn)了最早的面向?qū)ο笳Z(yǔ)言,如SIMULA語(yǔ)言。邏輯語(yǔ)言在20世紀(jì)70年代中期隨著PROLOG語(yǔ)言的推出而變得廣為人知,PROLOG語(yǔ)言是一種用于編寫(xiě)人工智能軟件的語(yǔ)言。在20世紀(jì)70年代,過(guò)程語(yǔ)言繼續(xù)發(fā)展,出現(xiàn)了ALGOL、BASIC、PASCAL、C和Ada等語(yǔ)言。SMALLTALK語(yǔ)言是一種具有高度影響力的面向?qū)ο笳Z(yǔ)言,它導(dǎo)致了面向?qū)ο笳Z(yǔ)言與過(guò)程語(yǔ)言在C++和更近期的JAVA語(yǔ)言中的結(jié)合。盡管純粹邏輯語(yǔ)言的流行程度已經(jīng)下降,但其以關(guān)系語(yǔ)言形式用于現(xiàn)代數(shù)據(jù)庫(kù)的變種卻變得非常重要,如結(jié)構(gòu)化查詢語(yǔ)言。第四單元:軟件開(kāi)發(fā)課文A:計(jì)算機(jī)程序一、引言計(jì)算機(jī)程序是指揮計(jì)算機(jī)執(zhí)行某種處理功能或功能組合的一套指令。要使指令得到執(zhí)行,計(jì)算機(jī)必須執(zhí)行程序,也就是說(shuō),計(jì)算機(jī)要讀取程序,然后按準(zhǔn)確的順序?qū)嵤┏绦蛑芯幋a的步驟,直至程序結(jié)束。一個(gè)程序可多次執(zhí)行,而且,取決于用戶提供給計(jì)算機(jī)的選項(xiàng)和數(shù)據(jù),每次執(zhí)行可能產(chǎn)生不同的結(jié)果。程序分為兩大類:應(yīng)用程序和操作系統(tǒng)。應(yīng)用程序直接為用戶執(zhí)行某種功能,如處理文字或玩游戲。操作系統(tǒng)管理計(jì)算機(jī)以及與之相連的各種資源和設(shè)備,如隨機(jī)存儲(chǔ)器、硬盤(pán)驅(qū)動(dòng)器、監(jiān)視器、鍵盤(pán)、打印機(jī)和調(diào)制解調(diào)器,以便其他程序可以使用它們。操作系統(tǒng)的例子包括:DOS、Windows95、OS/2和UNIX。二、程序開(kāi)發(fā)軟件設(shè)計(jì)者使用經(jīng)常被稱為實(shí)用程序或開(kāi)發(fā)程序的專門(mén)應(yīng)用程序來(lái)創(chuàng)建新程序。程序員使用稱為文本編輯程序的另一種程序,來(lái)以稱為編程語(yǔ)言的特殊符號(hào)編寫(xiě)新程序。程序員使用文本編輯程序創(chuàng)建一個(gè)文本文件,這個(gè)文本文件是一個(gè)有序指令表,也稱為程序源文件。構(gòu)成程序源文件的單個(gè)指令稱為源代碼。在這個(gè)時(shí)候,一種專門(mén)的應(yīng)用程序?qū)⒃创a翻譯成機(jī)器語(yǔ)言或目標(biāo)代碼——操作系統(tǒng)將認(rèn)作真程序并能夠執(zhí)行的一種格式。將源代碼翻譯成目標(biāo)代碼的應(yīng)用程序有3種:編譯程序、解釋程序和匯編程序。這3種應(yīng)用程序有不同的操作方式,對(duì)不同類型的編程語(yǔ)言進(jìn)行操作,但是,它們都要達(dá)到將編程語(yǔ)言翻譯成機(jī)器語(yǔ)言的相同目的。編譯程序?qū)⑹褂肍ORTRAN、C和Pascal等高級(jí)編程語(yǔ)言編寫(xiě)的文本文件一次性從源代碼翻譯成目標(biāo)代碼。這不同于BASIC等解釋執(zhí)行的語(yǔ)言所采取的方式。在解釋執(zhí)行的語(yǔ)言中,程序是隨著每條指令的執(zhí)行而逐個(gè)語(yǔ)句地翻譯成目標(biāo)代碼的。解釋執(zhí)行的語(yǔ)言的優(yōu)點(diǎn)是,它們可以立即開(kāi)始執(zhí)行程序,而不需要等到所有的源代碼都得到編譯。對(duì)程序的更改也可以相當(dāng)快地進(jìn)行,無(wú)需等到程序重新編譯完。解釋執(zhí)行的語(yǔ)言的缺點(diǎn)是,它們執(zhí)行起來(lái)慢,因?yàn)槊看芜\(yùn)行程序,都必須對(duì)整個(gè)程序一次一條指令地翻譯。另一方面,編譯執(zhí)行的語(yǔ)言只編譯一次,因此計(jì)算機(jī)執(zhí)行起來(lái)可比解釋執(zhí)行的語(yǔ)言快得多。由于這個(gè)原因,編譯執(zhí)行的語(yǔ)言比解釋執(zhí)行的語(yǔ)言常用,而且,在專業(yè)和科學(xué)領(lǐng)域幾乎總是應(yīng)用編譯執(zhí)行的語(yǔ)言。另一種翻譯程序是匯編程序,它用于以匯編語(yǔ)言編寫(xiě)的程序或程序組成部分。匯編語(yǔ)言也是一種編程語(yǔ)言,但它遠(yuǎn)比其他類型的高級(jí)語(yǔ)言類似于機(jī)器語(yǔ)言。在匯編語(yǔ)言中,一個(gè)語(yǔ)句通??梢苑g成機(jī)器語(yǔ)言的一條指令。今天,匯編語(yǔ)言很少用來(lái)編寫(xiě)整個(gè)程序,而是最常用于程序員需要直接控制計(jì)算機(jī)某方面功能的情況下。程序經(jīng)常編寫(xiě)為一組較小的程序片,每片表示整個(gè)應(yīng)用程序的某個(gè)方面。每片獨(dú)立編譯之后,一種稱為連接程序的程序?qū)⑺蟹g好的程序片組合成一個(gè)可執(zhí)行程序。程序罕有第一次能夠正確運(yùn)行的,所以一種稱為調(diào)試程序的程序常被用來(lái)幫助查找稱為程序錯(cuò)誤的問(wèn)題。調(diào)試程序通常在運(yùn)行的程序中檢測(cè)到一個(gè)事件,并將程序員指引到該事件在程序代碼中的起源。Java等最近出現(xiàn)的編程系統(tǒng),采取多種方法相結(jié)合的方式創(chuàng)建和執(zhí)行程序。編譯程序取來(lái)Java源程序,并將其翻譯成中間形式。這樣的中間程序隨后通過(guò)因特網(wǎng)傳送給計(jì)算機(jī),而計(jì)算機(jī)里的解釋程序接著將中間形式作為應(yīng)用程序來(lái)執(zhí)行。三、程序元素多數(shù)程序僅由少數(shù)幾種步驟構(gòu)成,這些步驟在整個(gè)程序中在不同的上下文和以不同的組合方式多次重復(fù)。最常見(jiàn)的步驟執(zhí)行某種計(jì)算,然后按程序員指定的順序,進(jìn)入程序的下一個(gè)步驟。程序經(jīng)常需要多次重復(fù)不長(zhǎng)的一系列步驟,例如:在瀏覽游戲得分表并從中找出最高得分時(shí)。這種重復(fù)的代碼序列稱為循環(huán)。計(jì)算機(jī)具有的使其如此有用的能力之一,是它們能夠作出條件判定,并根據(jù)正在處理的數(shù)據(jù)的值執(zhí)行不同的指令。if-then-else(如果-則-否則)語(yǔ)句執(zhí)行這種功能,采用的方法是測(cè)試某個(gè)數(shù)據(jù)片,然后根據(jù)結(jié)果從兩個(gè)指令序列中選擇一個(gè)。這些選擇對(duì)象中的指令之一可能是一個(gè)goto語(yǔ)句,用以指引計(jì)算機(jī)從程序的另一個(gè)部分選擇下一條指令。例如,一個(gè)程序可能比較兩個(gè)數(shù),并視比較結(jié)果而分支到程序的另一個(gè)部分:Ifxisgreaterthanythengotoinstruction#10elsecontinue程序經(jīng)常不止一次地使用特定的一系列步驟。這樣的一系列步驟可以組合成一個(gè)子例程,而子例程根據(jù)需要可在主程序的不同部分進(jìn)行調(diào)用或訪問(wèn)。每次調(diào)用一個(gè)子例程,計(jì)算機(jī)都會(huì)記住該調(diào)用發(fā)生時(shí)自己在程序中所處的位置,以便在運(yùn)行完這個(gè)子例程后還能夠回到那里。在每次調(diào)用之前,程序可以指定子例程使用不同的數(shù)據(jù),從而允許一個(gè)通用性很強(qiáng)的代碼片只編寫(xiě)一次,但以多種方式使用。大多數(shù)程序使用幾種不同的子例程。其中最常用的是函數(shù)、過(guò)程、庫(kù)、系統(tǒng)例程以及設(shè)備驅(qū)動(dòng)程序。函數(shù)是一種短的子例程,用來(lái)計(jì)算某個(gè)值,如角的計(jì)算,而該值計(jì)算機(jī)僅用一條基本指令無(wú)法計(jì)算。過(guò)程執(zhí)行的是比較復(fù)雜的功能,如給一組名字排序。庫(kù)是為多種不同程序使用而編寫(xiě)的子例程。系統(tǒng)例程類似于庫(kù)程序,但實(shí)際上用于操作系統(tǒng)。它們?yōu)閼?yīng)用程序提供某種服務(wù),如打印一行文字。設(shè)備驅(qū)動(dòng)程序是一種系統(tǒng)例程,它們加到操作系統(tǒng)中,以使計(jì)算機(jī)能夠與掃描儀、調(diào)制解調(diào)器或打印機(jī)等新設(shè)備通信。設(shè)備驅(qū)動(dòng)程序常常具有可以作為應(yīng)用程序直接執(zhí)行的特征。這使用戶得以直接控制設(shè)備。這一點(diǎn)很有用,例如:在彩色打印機(jī)更換墨盒后需要重新調(diào)整以達(dá)到最佳打印質(zhì)量的情況下。四、程序功能現(xiàn)代計(jì)算機(jī)通常將程序存儲(chǔ)在計(jì)算機(jī)可以隨機(jī)訪問(wèn)的某種形式的磁性存儲(chǔ)介質(zhì)上,如固定放在計(jì)算機(jī)內(nèi)的硬盤(pán)或者便攜式軟盤(pán)。這些磁盤(pán)上稱為目錄的額外信息,指明盤(pán)上各種程序的名稱、它們寫(xiě)入盤(pán)中的時(shí)間以及它們?cè)诖疟P(pán)介質(zhì)上的起始位置。用戶命令計(jì)算機(jī)執(zhí)行一個(gè)特定應(yīng)用程序時(shí),操作系統(tǒng)就瀏覽這些目錄,找到程序,并將一個(gè)副本讀入隨機(jī)存儲(chǔ)器。操作系統(tǒng)然后命令中央處理器開(kāi)始執(zhí)行程序開(kāi)頭的指令。程序開(kāi)頭的指令為計(jì)算機(jī)處理信息作好準(zhǔn)備,其方法是在隨機(jī)存儲(chǔ)器中找到空閑存儲(chǔ)單元來(lái)容納工作數(shù)據(jù),從盤(pán)中檢索用戶指出的標(biāo)準(zhǔn)選項(xiàng)和默認(rèn)值的副本,并在監(jiān)視器上繪制初始顯示。應(yīng)用程序通過(guò)調(diào)用系統(tǒng)例程來(lái)對(duì)用戶輸入的任何信息都要求一個(gè)副本。操作系統(tǒng)將如此輸入的任何數(shù)據(jù)都轉(zhuǎn)換成標(biāo)準(zhǔn)的內(nèi)部形式。應(yīng)用程序然后使用該信息決定下一步干什么,如執(zhí)行某項(xiàng)期望的處理功能——像重新格式化一頁(yè)文本或從盤(pán)上的另一個(gè)文件獲取一些額外信息。兩種情況無(wú)論是哪一種,都要調(diào)用其他系統(tǒng)例程,以事實(shí)上完成結(jié)果的顯示或?qū)ΡP(pán)上文件的訪問(wèn)。運(yùn)行結(jié)束或接到退出的提示時(shí),應(yīng)用程序進(jìn)行進(jìn)一步的系統(tǒng)調(diào)用,以確保所有需要保存的數(shù)據(jù)已寫(xiě)回磁盤(pán)。然后,應(yīng)用程序向操作系統(tǒng)進(jìn)行最后一次系統(tǒng)調(diào)用,指明它已運(yùn)行結(jié)束。操作系統(tǒng)接下來(lái)釋放隨機(jī)存儲(chǔ)器和該應(yīng)用程序使用的任何設(shè)備,并等待用戶的命令,以開(kāi)始運(yùn)行另一個(gè)程序。五、歷史人們以程序的形式存儲(chǔ)指令序列已經(jīng)有幾個(gè)世紀(jì)了。18世紀(jì)的音樂(lè)盒和19世紀(jì)末與20世紀(jì)初的自動(dòng)鋼琴,就可以播放音樂(lè)程序。這些程序以一系列金屬針或紙孔的形式存儲(chǔ),每一行(針或孔)表示何時(shí)演奏一個(gè)音符,而針或孔則表明此時(shí)演奏什么音符。19世紀(jì)初,隨著法國(guó)發(fā)明家約瑟夫―瑪麗·雅卡爾發(fā)明由穿孔卡片控制的織機(jī),對(duì)物理設(shè)備更精巧的控制變得常見(jiàn)了。在編織特定圖案的過(guò)程中,織機(jī)的各個(gè)部分得進(jìn)行機(jī)械定位。為了使這個(gè)過(guò)程自動(dòng)化,雅卡爾使用一張紙質(zhì)卡片代表織機(jī)的一個(gè)定位,用卡片上的孔來(lái)指示應(yīng)該執(zhí)行織機(jī)的哪種操作。整條花毯的編織可編碼到一疊這樣的卡片上,同樣的一疊卡片每次使用都會(huì)編出相同的花毯圖案。在開(kāi)發(fā)和使用的程序中,有的由24,000多張卡片構(gòu)成。世界上第一臺(tái)可編程的機(jī)器是由英國(guó)數(shù)學(xué)家和發(fā)明家查爾斯?巴比奇設(shè)計(jì)的,但他從未完全制造成該機(jī)器。這臺(tái)叫做分析機(jī)的機(jī)器,使用和雅卡爾織機(jī)類似的穿孔卡片,來(lái)選擇每個(gè)步驟應(yīng)該執(zhí)行的具體算術(shù)運(yùn)算。插入不同的卡片組,就會(huì)改變機(jī)器執(zhí)行的運(yùn)算。這種機(jī)器幾乎能在現(xiàn)代計(jì)算機(jī)中找到所有的對(duì)應(yīng)物,但它是機(jī)械化的,而非電氣化的。分析機(jī)的制造從未完成,因?yàn)橹圃焖枰募夹g(shù)當(dāng)時(shí)不存在。供分析機(jī)使用的最早卡片組式程序是由詩(shī)人拜倫勛爵的女兒、英國(guó)數(shù)學(xué)家?jiàn)W古斯塔?埃達(dá)?拜倫開(kāi)發(fā)的。由于這個(gè)原因,她被公認(rèn)為世界上第一位程序員。現(xiàn)代的內(nèi)部存儲(chǔ)計(jì)算機(jī)程序概念是由美籍匈牙利數(shù)學(xué)家約翰馮諾伊曼于1945年首先

提出來(lái)的。馮?諾伊曼的想法是,使用計(jì)算機(jī)的存儲(chǔ)器既存儲(chǔ)數(shù)據(jù)又存儲(chǔ)程序。這樣,程序可被視為數(shù)據(jù),可像數(shù)據(jù)一樣被其他程序處理。這一想法極大地簡(jiǎn)化了在計(jì)算機(jī)中存儲(chǔ)與執(zhí)行程序的任務(wù)。六、未來(lái)由于計(jì)算機(jī)使用的增加,自20世紀(jì)50年代以來(lái),計(jì)算機(jī)科學(xué)領(lǐng)域發(fā)展迅猛。作為對(duì)用戶需求和技術(shù)進(jìn)步的反應(yīng),計(jì)算機(jī)程序在這一時(shí)期經(jīng)歷了許多變化。計(jì)算領(lǐng)域的新思想,如并行計(jì)算、分布式計(jì)算和人工智能,從根本上改變了一度決定程序形式與功能的傳統(tǒng)概念。致力于并行計(jì)算領(lǐng)域研究的計(jì)算機(jī)科學(xué)家們,推出了許多新的程序模型。在并行計(jì)算中,多個(gè)中央處理器同時(shí)合作處理同一個(gè)問(wèn)題。一個(gè)問(wèn)題的組成部分由不同的處理器同時(shí)處理,這樣就加快了問(wèn)題的解決速度。由于并行處理計(jì)算機(jī)的極端復(fù)雜性,以及使其盡可能有效地運(yùn)行所包含的困難,為這種系統(tǒng)設(shè)計(jì)程序的科學(xué)家和工程師面臨著許多挑戰(zhàn)。一種稱為分布式計(jì)算的并行計(jì)算,使用多個(gè)互連計(jì)算機(jī)的中央處理器來(lái)解決問(wèn)題。用來(lái)在分布式計(jì)算應(yīng)用環(huán)境下處理信息的計(jì)算機(jī),常常通過(guò)因特網(wǎng)連接。因特網(wǎng)的應(yīng)用正在成為分布式計(jì)算的一種特別有用的形式,尤其是在使用Java等編程語(yǔ)言的情況下。在這種應(yīng)用中,用戶登錄到一個(gè)站點(diǎn),并下載一個(gè)Java程序到其計(jì)算機(jī)上。該Java程序運(yùn)行時(shí),就會(huì)與其所來(lái)自的站點(diǎn)上的其他程序通信,也可以與不同計(jì)算機(jī)或站點(diǎn)上運(yùn)行的其他程序通信。人工智能研究已經(jīng)帶來(lái)其他幾種新的編程風(fēng)格。例如,邏輯程序不是由供計(jì)算機(jī)盲目執(zhí)行的單個(gè)指令構(gòu)成,而是由成套的規(guī)則組成:如果x發(fā)生,則執(zhí)行y。一種稱為推理機(jī)的特殊程序,在向其提出一個(gè)新問(wèn)題時(shí),就使用這些規(guī)則來(lái)“推理”出一個(gè)結(jié)論。邏輯程序的用途包括自動(dòng)監(jiān)控復(fù)雜系統(tǒng)和證明數(shù)學(xué)定理。一種全然不同的計(jì)算方法稱為神經(jīng)網(wǎng)絡(luò),在這種計(jì)算中沒(méi)有傳統(tǒng)意義上的程序。神經(jīng)網(wǎng)絡(luò)是一組高度互連的簡(jiǎn)單處理單元,旨在模擬大腦。神經(jīng)網(wǎng)絡(luò)不是像傳統(tǒng)計(jì)算機(jī)那樣通過(guò)程序來(lái)指揮信息處理,而是依靠其處理單元的連接方式來(lái)處理信息。給神經(jīng)網(wǎng)絡(luò)編程的實(shí)現(xiàn)方法是,給其提供輸入與輸出數(shù)據(jù)的已知模式,并調(diào)整處理單元之間各種互連的相對(duì)重要性,直到完成所期望的模式匹配。神經(jīng)網(wǎng)絡(luò)通常在傳統(tǒng)計(jì)算機(jī)上模擬,但是,不同于傳統(tǒng)的計(jì)算機(jī)程序,神經(jīng)網(wǎng)絡(luò)具有經(jīng)驗(yàn)學(xué)習(xí)的能力。第五單元:軟件過(guò)程課文A:軟件過(guò)程模型一、引言一個(gè)軟件過(guò)程是生產(chǎn)出軟件產(chǎn)品的一系列活動(dòng)。這些活動(dòng)可能涉及使用一種像Java或C這樣的標(biāo)準(zhǔn)編程語(yǔ)言從零開(kāi)始開(kāi)發(fā)軟件。然而,開(kāi)發(fā)新軟件越來(lái)越多地使用的方法是,擴(kuò)展和修改現(xiàn)有系統(tǒng),以及配置和集成現(xiàn)成軟件或系統(tǒng)組件。一個(gè)軟件過(guò)程模型是對(duì)一個(gè)軟件過(guò)程的一種抽象表示。每個(gè)過(guò)程模型都從一個(gè)特定角度表示一個(gè)過(guò)程,因此都只提供有關(guān)那個(gè)過(guò)程的部分信息。本文介紹幾種非常通用的過(guò)程模型(有時(shí)稱為過(guò)程范例),并從體系結(jié)構(gòu)的角度描述它們。也就是說(shuō),我們看到的是過(guò)程的框架,而非具體活動(dòng)的細(xì)節(jié)。這些類屬模型不是對(duì)軟件過(guò)程的規(guī)定性描述。確切點(diǎn)說(shuō),它們是過(guò)程的抽象,可用于解釋軟件開(kāi)發(fā)的不同方法。你可以將其視為可擴(kuò)展和調(diào)整以創(chuàng)建更為具體軟件工程過(guò)程的過(guò)程框架。這里論述的過(guò)程模型是瀑布模型、演化開(kāi)發(fā)和基于組件的軟件工程。這3種類屬過(guò)程模型在當(dāng)前的軟件工程實(shí)踐中廣泛使用。它們不是互不相容,而是經(jīng)常一起使用,尤其是在大型系統(tǒng)開(kāi)發(fā)的情況下。一個(gè)較大型系統(tǒng)內(nèi)的子系統(tǒng)可使用不同的方法開(kāi)發(fā)。因此,盡管分別討論這些模型比較方便,但應(yīng)該明白,實(shí)際上它們經(jīng)常結(jié)合使用。二、瀑布模型最早公布的軟件開(kāi)發(fā)過(guò)程模型源自比較通用的系統(tǒng)工程過(guò)程。這種模型如圖5A-1所示。由于從一個(gè)階段到另一個(gè)階段的瀑布狀級(jí)聯(lián),該模型稱為瀑布模型或軟件生命周期。該模型的主要階段映射基本的開(kāi)發(fā)活動(dòng):1、需求分析與定義。系統(tǒng)的服務(wù)、約束和目標(biāo)要經(jīng)過(guò)與系統(tǒng)用戶的磋商加以確定。然后,它們得到詳細(xì)定義并作為系統(tǒng)規(guī)格說(shuō)明。2、系統(tǒng)與軟件設(shè)計(jì)。系統(tǒng)設(shè)計(jì)過(guò)程將需求劃分成需硬件或軟件系統(tǒng)實(shí)現(xiàn)的部分。該過(guò)程確立一個(gè)總的系統(tǒng)體系結(jié)構(gòu)。軟件設(shè)計(jì)涉及到確定和描述基本的軟件系統(tǒng)抽象及其相互關(guān)系。3、實(shí)現(xiàn)與單元測(cè)試。在這個(gè)階段,軟件設(shè)計(jì)被實(shí)現(xiàn)為一組程序或程序單元。單元測(cè)試涉及到驗(yàn)證每個(gè)單元是否符合其規(guī)格說(shuō)明。4、集成與系統(tǒng)測(cè)試。單個(gè)的程序單元或程序進(jìn)行集成并作為一個(gè)完整系統(tǒng)進(jìn)行測(cè)試,以確保軟件需求已得到滿足。測(cè)試之后,軟件系統(tǒng)交付客戶。5、運(yùn)行與維護(hù)。通常(但并非必定),這是軟件生命周期最長(zhǎng)的階段。系統(tǒng)經(jīng)過(guò)安裝投入實(shí)際使用。維護(hù)涉及到糾正在軟件生命周期前面階段沒(méi)有發(fā)現(xiàn)的錯(cuò)誤,改進(jìn)系統(tǒng)單元的實(shí)現(xiàn),并隨著新需求的發(fā)現(xiàn)增強(qiáng)系統(tǒng)的服務(wù)。原則上,每個(gè)階段的結(jié)果都要形成一份或多份經(jīng)過(guò)批準(zhǔn)的文件。前一個(gè)階段未結(jié)束,下一個(gè)階段不應(yīng)開(kāi)始。實(shí)際上,這些階段重疊并互相饋送信息。在設(shè)計(jì)期間,需求方面存在的問(wèn)題得到識(shí)別;在編碼期間,設(shè)計(jì)問(wèn)題被發(fā)現(xiàn),等等。軟件過(guò)程并非一個(gè)簡(jiǎn)單的線性模型,而是涉及到一系列迭代的開(kāi)發(fā)活動(dòng)。由于編制和批準(zhǔn)文件的成本,迭代需要大筆開(kāi)銷,而且需要做大量重復(fù)工作。因此,經(jīng)過(guò)少數(shù)迭代之后,通常應(yīng)凍結(jié)開(kāi)發(fā)的某些部分,如規(guī)格說(shuō)明,并繼續(xù)進(jìn)行后面的開(kāi)發(fā)階段。存在的問(wèn)題留待以后解決,置之不顧,或者通過(guò)編程繞過(guò)去。這樣倉(cāng)促凍結(jié)需求,可能意味圖5A-1:軟件生命周期運(yùn)行與維護(hù)集成與系統(tǒng)測(cè)試實(shí)現(xiàn)與單元測(cè)試系統(tǒng)與軟件設(shè)計(jì)需求定義著系統(tǒng)將難以滿足用戶的要求。由于使用實(shí)現(xiàn)技巧規(guī)避了設(shè)計(jì)問(wèn)題,這也可能導(dǎo)致不良的系統(tǒng)結(jié)構(gòu)。在最后的生命周期階段(運(yùn)行與維護(hù)),軟件投入使用。最初軟件需求中存在的錯(cuò)誤與疏漏被發(fā)現(xiàn),程序與設(shè)計(jì)錯(cuò)誤浮現(xiàn),而且新的功能需要得到確定。因此,為保持有用性,系統(tǒng)必須演變。進(jìn)行有關(guān)更改(軟件維護(hù))可能涉及到重復(fù)以前的過(guò)程階段。瀑布模型的優(yōu)點(diǎn)在于每個(gè)階段都編制文件,而且它與其他的工程過(guò)程模型相符合。其主要問(wèn)題在于將項(xiàng)目僵硬地劃分成不同的階段。在過(guò)程的一個(gè)早期階段,必須定下決心,從而使得應(yīng)對(duì)客戶需求變化很困難。因此,只有在需求得到很好理解、在系統(tǒng)開(kāi)發(fā)期間不可能發(fā)生根本性變化的情況下,才應(yīng)使用瀑布模型。然而,瀑布模型體現(xiàn)了在其他工程項(xiàng)目中所使用的過(guò)程模型類型。所以,基于這種方法的軟件過(guò)程仍然用于軟件開(kāi)發(fā),特別是當(dāng)有關(guān)軟件項(xiàng)目是一個(gè)較大系統(tǒng)工程項(xiàng)目的一部分時(shí)。三、演化開(kāi)發(fā)演化開(kāi)發(fā)基于這樣的思想:開(kāi)發(fā)一個(gè)初始的實(shí)現(xiàn),讓其接受用戶評(píng)論,并讓其經(jīng)過(guò)多個(gè)版本的改進(jìn),一直到開(kāi)發(fā)出能夠滿足需要的系統(tǒng)(圖5A-2)。規(guī)格說(shuō)明、開(kāi)發(fā)及驗(yàn)證活動(dòng)不是分開(kāi)進(jìn)行,而是交叉進(jìn)行,各項(xiàng)活動(dòng)之間有快速的信息反饋。演化開(kāi)發(fā)有兩個(gè)基本類型:1、探索式開(kāi)發(fā)。在這種類型中,過(guò)程的目標(biāo)是與客戶協(xié)作探索其需求,并交付一個(gè)最終的系統(tǒng)。開(kāi)發(fā)從業(yè)已理解的系統(tǒng)部分開(kāi)始。隨著增添客戶提出的新特征,系統(tǒng)不中間版本并行活動(dòng)圖5A-2:演化開(kāi)發(fā)描述最終版本初始版本開(kāi)發(fā)驗(yàn)證規(guī)格說(shuō)明斷演變。2、拋棄式原型開(kāi)發(fā)。在這種類型中,演化開(kāi)發(fā)過(guò)程的目標(biāo)是理解客戶的需求,從而為系統(tǒng)開(kāi)發(fā)比較好的需求定義。原型集中試驗(yàn)沒(méi)有很好理解的客戶需求。在生產(chǎn)滿足客戶眼下需要的系統(tǒng)時(shí),軟件開(kāi)發(fā)的演化方法常常比瀑布方法有效。基于演化方法的軟件過(guò)程的優(yōu)點(diǎn)是,規(guī)格說(shuō)明可以漸進(jìn)地開(kāi)發(fā)。隨著用戶增進(jìn)對(duì)其問(wèn)題的理解,這種理解可以反映在軟件系統(tǒng)中。然而,從工程和管理的角度來(lái)看,演化方法存在兩個(gè)問(wèn)題:1、過(guò)程缺乏可視性。管理員需要定期交付的產(chǎn)品來(lái)衡量進(jìn)度。在快速開(kāi)發(fā)系統(tǒng)的情況下,編制反映每個(gè)系統(tǒng)版本的文件不合算。2、系統(tǒng)常常缺乏良好的結(jié)構(gòu)。不斷的更改往往會(huì)破壞軟件的結(jié)構(gòu)。吸收軟件更改變得越來(lái)越困難,越來(lái)越成本高昂。對(duì)于中小型系統(tǒng)(上至50萬(wàn)行代碼),演化方法或許是最佳的開(kāi)發(fā)方法。對(duì)于不同小組開(kāi)發(fā)系統(tǒng)不同部分的大型、復(fù)雜、長(zhǎng)壽命系統(tǒng),演化開(kāi)發(fā)存在的問(wèn)題尤為嚴(yán)重。使用這種方法難以建立一個(gè)穩(wěn)定的系統(tǒng)體系結(jié)構(gòu),這使得集成各小組的貢獻(xiàn)變得很難。對(duì)于大型系統(tǒng),建議使用一種混合過(guò)程,將瀑布模型和演化開(kāi)發(fā)模型的最佳特征結(jié)合起來(lái)。這可能涉及到使用演化方法開(kāi)發(fā)一個(gè)拋棄式原型,以解決系統(tǒng)規(guī)格說(shuō)明中存在的不確定性。然后,可使用一種結(jié)構(gòu)化程度比較高的方法重新實(shí)現(xiàn)系統(tǒng)。得到很好理解的系統(tǒng)部分可使用基于瀑布模型的過(guò)程進(jìn)行規(guī)格說(shuō)明和開(kāi)發(fā)。事先難以進(jìn)行規(guī)格說(shuō)明的其他系統(tǒng)部分,如用戶界面,無(wú)例外地應(yīng)使用探索式編程方法來(lái)開(kāi)發(fā)。四、基于組件的軟件工程大多數(shù)軟件項(xiàng)目都存在某種程度的軟件復(fù)用。通常,這是非正式發(fā)生的。參加項(xiàng)目的人知道有現(xiàn)成的設(shè)計(jì)或編碼類似于他們所需的設(shè)計(jì)或編碼。他們尋找這些設(shè)計(jì)或編碼,根據(jù)需要對(duì)其進(jìn)行修改,并將其吸收進(jìn)他們的系統(tǒng)。對(duì)于使用演化方法進(jìn)行快速系統(tǒng)開(kāi)發(fā),復(fù)用常常是必要的。這種非正式復(fù)用的發(fā)生是不考慮所使用的開(kāi)發(fā)過(guò)程的。然而,在過(guò)去幾年中,出現(xiàn)了一種軟件開(kāi)發(fā)方法,這種方法使用得越來(lái)越多,它依靠復(fù)用,被稱為基于組件的軟件工程。這種面向復(fù)用的方法依靠大量的可復(fù)用軟件組件,以及用于這些組件的某種集成框架。有時(shí),這些組件本身就是可提供文本格式化或數(shù)值計(jì)算等特定功能的系統(tǒng)(商用現(xiàn)成系統(tǒng))。基于組件的軟件工程的類屬過(guò)程模型如圖5A-3所示。就最初的需求規(guī)格說(shuō)明階段和驗(yàn)證階段而言,面向復(fù)用過(guò)程與其他過(guò)程相類似,但它的中間階段與其他過(guò)程不同。這些階段是:1、組件分析。在有需求規(guī)格說(shuō)明的情況下,搜索實(shí)現(xiàn)該規(guī)格的組件。通常,不存在完全相符的組件。可能被使用的組件只在某種程度上提供所要求的功能。2、需求修改。在這個(gè)階段,使用已經(jīng)發(fā)現(xiàn)的組件的相關(guān)信息分析需求,然后修改需求以反映可用的組件。在無(wú)法進(jìn)行修改的情況下,可能重新進(jìn)入組件分析活動(dòng),以搜索可供選擇的解決方案。3、帶復(fù)用的系統(tǒng)設(shè)計(jì)。在這個(gè)階段,設(shè)計(jì)系統(tǒng)框架或復(fù)用現(xiàn)有的框架。設(shè)計(jì)員考慮到復(fù)用的組件,并組織安排框架使其適應(yīng)復(fù)用的要求。如果得不到可復(fù)用的組件,可能得設(shè)計(jì)一些新軟件。4、開(kāi)發(fā)與集成。無(wú)法外部獲得的軟件要進(jìn)行開(kāi)發(fā),組件和商用現(xiàn)成系統(tǒng)要集成以創(chuàng)建新的系統(tǒng)。系統(tǒng)集成在這種模型中可能是開(kāi)發(fā)過(guò)程的一部分,而非一項(xiàng)分開(kāi)的活動(dòng)?;诮M件的軟件工程具有減少需要開(kāi)發(fā)的軟件量并因此降低成本與風(fēng)險(xiǎn)的明顯優(yōu)點(diǎn)。它通常也可更快地交付軟件。然而,需求方面的妥協(xié)不可避免,這可能導(dǎo)致系統(tǒng)不能滿足用戶的真正需要。此外,可復(fù)用組件的新版本不受其使用機(jī)構(gòu)的控制,因此喪失了對(duì)系統(tǒng)演變的某些控制。圖5A-3:基于組件的軟件工程需求規(guī)格說(shuō)明組件分析需求修改帶復(fù)用的系統(tǒng)設(shè)計(jì)系統(tǒng)驗(yàn)證開(kāi)發(fā)與集成第六單元:數(shù)據(jù)庫(kù)課文A:數(shù)據(jù)庫(kù)概覽一、引言數(shù)據(jù)存儲(chǔ)傳統(tǒng)上是使用單獨(dú)的沒(méi)有聯(lián)系的文件,這些文件有時(shí)稱為平面文件。在過(guò)去,一個(gè)機(jī)構(gòu)中的每個(gè)應(yīng)用程序都使用自己的文件。例如,在一個(gè)大學(xué)中,每個(gè)部門(mén)都可能有其自己的文件集:檔案辦公室保存著關(guān)于學(xué)生信息和學(xué)生成績(jī)的文件;經(jīng)濟(jì)資助辦公室保存著其自己的關(guān)于需要經(jīng)濟(jì)資助以繼續(xù)學(xué)業(yè)的學(xué)生的文件;調(diào)度辦公室保存著教授的姓名和他們所教的課程;工薪發(fā)放部門(mén)保存著其自己的關(guān)于全體教職員工(包括教授)的文件,等等。然而,所有這些平面文件今天都可結(jié)合成一個(gè)實(shí)體——供整個(gè)大學(xué)使用的數(shù)據(jù)庫(kù)。雖然難以給出一個(gè)普遍接受的數(shù)據(jù)庫(kù)定義,但我們使用下面常見(jiàn)的定義:一個(gè)數(shù)據(jù)庫(kù)是被一個(gè)機(jī)構(gòu)內(nèi)的應(yīng)用程序所使用的具有邏輯相干性的相關(guān)數(shù)據(jù)的集合。二、數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)定義、創(chuàng)建和維護(hù)數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)管理系統(tǒng)也允許對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行受控的訪問(wèn)。一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)由5個(gè)組成部分構(gòu)成:硬件、軟件、數(shù)據(jù)、用戶和規(guī)程。1、硬件硬件是指允許訪問(wèn)數(shù)據(jù)的計(jì)算機(jī)物理系統(tǒng)。例如,終端、硬盤(pán)、主機(jī)和工作站被認(rèn)為是數(shù)據(jù)庫(kù)管理系統(tǒng)的硬件組成部分。2、軟件軟件是指允許用戶訪問(wèn)、維護(hù)和更新數(shù)據(jù)的實(shí)際程序。另外,軟件還控制著哪個(gè)用戶可以對(duì)數(shù)據(jù)庫(kù)中的哪部分?jǐn)?shù)據(jù)進(jìn)行訪問(wèn)。3、數(shù)據(jù)數(shù)據(jù)庫(kù)中的數(shù)據(jù)存儲(chǔ)在物理存儲(chǔ)設(shè)備上。在一個(gè)數(shù)據(jù)庫(kù)中,數(shù)據(jù)是獨(dú)立于對(duì)其進(jìn)行訪問(wèn)的軟件的一個(gè)實(shí)體。這種獨(dú)立使一個(gè)機(jī)構(gòu)可以在不必更改物理數(shù)據(jù)及其存儲(chǔ)方式的情況下更改軟件。如果一個(gè)機(jī)構(gòu)決定使用一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),那么該機(jī)構(gòu)所需要的所有信息都應(yīng)作為一個(gè)實(shí)體保存在一起,可由數(shù)據(jù)庫(kù)管理系統(tǒng)中的軟件訪問(wèn)。4、用戶在數(shù)據(jù)庫(kù)管理系統(tǒng)中,用戶這個(gè)術(shù)語(yǔ)有著廣泛的定義。我們可以將用戶分為兩類:最終用戶和應(yīng)用程序。最終用戶是指可直接訪問(wèn)數(shù)據(jù)庫(kù)以獲取信息的人。最終用戶又分為兩類:數(shù)據(jù)庫(kù)管理員和普通用戶。數(shù)據(jù)庫(kù)管理員擁有最高程度的特權(quán),可以控制其他用戶及其對(duì)數(shù)據(jù)庫(kù)管理系統(tǒng)的訪問(wèn),可以將其某些特權(quán)授予其他人并保留隨時(shí)收回這些特權(quán)的能力。另一方面,普通用戶只能使用數(shù)據(jù)庫(kù)的一部分,只能進(jìn)行有限的訪問(wèn)。數(shù)據(jù)庫(kù)中數(shù)據(jù)的其他用戶就是應(yīng)用程序。應(yīng)用程序需要訪問(wèn)和處理數(shù)據(jù)。例如,工薪發(fā)放應(yīng)用程序需要在月底訪問(wèn)數(shù)據(jù)庫(kù)中的部分?jǐn)?shù)據(jù),來(lái)開(kāi)支付工薪的支票。5、規(guī)程數(shù)據(jù)庫(kù)管理系統(tǒng)的最后一個(gè)組成部分就是應(yīng)該明確定義并為數(shù)據(jù)庫(kù)用戶所遵循的一套規(guī)程或規(guī)則。三、數(shù)據(jù)庫(kù)體系結(jié)構(gòu)美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)標(biāo)準(zhǔn)計(jì)劃與需求委員會(huì)(ANSI/SPARC)為數(shù)據(jù)庫(kù)管理系統(tǒng)確立了一個(gè)包含3個(gè)層次的體系結(jié)構(gòu):內(nèi)層、概念層和外層(圖6A-1)。1、內(nèi)層內(nèi)層決定數(shù)據(jù)在存儲(chǔ)設(shè)備上的實(shí)際存儲(chǔ)位置。該層涉及低級(jí)訪問(wèn)方法,以及字節(jié)如何傳向和傳自存儲(chǔ)設(shè)備。換句話說(shuō),內(nèi)層直接與硬件交互。2、概念層概念層定義數(shù)據(jù)的邏輯視圖。數(shù)據(jù)模型在該層定義,數(shù)據(jù)庫(kù)管理系統(tǒng)的主要功能——如查詢——也在該層。數(shù)據(jù)庫(kù)管理系統(tǒng)把數(shù)據(jù)的內(nèi)部視圖轉(zhuǎn)化為用戶需要看到的外部視圖。概念層是中介層,它使得用戶不必與內(nèi)層打交道。3、外層外層直接與用戶(最終用戶或應(yīng)用程序)交互。它將來(lái)自概念層的數(shù)據(jù)轉(zhuǎn)化為用戶所熟悉的格式和視圖。四、數(shù)據(jù)庫(kù)模型數(shù)據(jù)庫(kù)模型定義數(shù)據(jù)的邏輯設(shè)計(jì)。它也描述數(shù)據(jù)的不同部分之間的關(guān)系。在數(shù)據(jù)庫(kù)設(shè)計(jì)史上,使用過(guò)3種數(shù)據(jù)庫(kù)模型:層次模型、網(wǎng)絡(luò)模型和關(guān)系模型。1、層次數(shù)據(jù)庫(kù)模型在層次模型中,數(shù)據(jù)被組織成一棵倒置的樹(shù)。每個(gè)實(shí)體只有一個(gè)父,但可有數(shù)個(gè)子。在分層結(jié)構(gòu)的頂部,有一個(gè)實(shí)體,稱為根。圖6A-2給出了一個(gè)層次模型例子的邏輯視圖。層次模型現(xiàn)在已經(jīng)過(guò)時(shí)。2、網(wǎng)絡(luò)數(shù)據(jù)庫(kù)模型在網(wǎng)絡(luò)模型中,實(shí)體以圖的形式來(lái)組織,圖中的有些實(shí)體可通過(guò)多條路徑訪問(wèn)(圖6A-3)。網(wǎng)絡(luò)模型沒(méi)有分層結(jié)構(gòu)。這種模型現(xiàn)在也已經(jīng)過(guò)時(shí)。3、關(guān)系數(shù)據(jù)庫(kù)模型在關(guān)系模型中,數(shù)據(jù)被組織成稱為關(guān)系的二維表。關(guān)系模型沒(méi)有分層或網(wǎng)絡(luò)結(jié)構(gòu)強(qiáng)加于數(shù)據(jù)。然而,表或關(guān)系是相互關(guān)聯(lián)的(圖6A-4)。關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)組織數(shù)據(jù),使其外部視圖呈現(xiàn)為關(guān)系或表的集合。這并不意味著數(shù)據(jù)以表的形式存儲(chǔ):數(shù)據(jù)的物理存儲(chǔ)與數(shù)據(jù)的邏輯組織方式毫無(wú)關(guān)系。圖6A-5給出了一個(gè)關(guān)系的例子。關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)中的關(guān)系具有以下特征:●名稱。關(guān)系數(shù)據(jù)庫(kù)中的每個(gè)關(guān)系都應(yīng)具有一個(gè)名稱,而這個(gè)名稱在所有關(guān)系中是獨(dú)一無(wú)二的?!駥傩?。關(guān)系中的每一列都稱為一個(gè)屬性。在圖6A-5的表中,屬性是列的標(biāo)題。每個(gè)屬性賦予存儲(chǔ)在其下面的數(shù)據(jù)以意義。表中的每一列都必須具有一個(gè)在關(guān)系的范圍內(nèi)獨(dú)一無(wú)二的名稱。一個(gè)關(guān)系的屬性總數(shù)稱為該關(guān)系的度。例如,在圖6A-5中,關(guān)系的度為3。注意屬性名并不存儲(chǔ)在數(shù)據(jù)庫(kù)中:概念層使用屬性給每一列賦予一定的意義?!裨M。關(guān)系中的每一行稱為一個(gè)元組。元組定義一組屬性值。一個(gè)關(guān)系中的總行數(shù)稱為該關(guān)系的基數(shù)。注意一個(gè)關(guān)系的基數(shù)隨著元組的增加或刪除而改變。這使數(shù)據(jù)庫(kù)具有了動(dòng)態(tài)性。關(guān)系模型是今天使用的常見(jiàn)模型之一。源自關(guān)系模型的另外兩種常見(jiàn)模型是分布式模型和面向?qū)ο竽P汀?、分布式數(shù)據(jù)庫(kù)模型分布式數(shù)據(jù)庫(kù)模型并非一種新模型,而是基于關(guān)系模型的。但是,數(shù)據(jù)存儲(chǔ)在通過(guò)因特網(wǎng)或?qū)S脧V域網(wǎng)通信的數(shù)臺(tái)計(jì)算機(jī)上。每臺(tái)計(jì)算機(jī)(或站點(diǎn))保持?jǐn)?shù)據(jù)庫(kù)的一部分或整個(gè)數(shù)據(jù)庫(kù)。換句話說(shuō),數(shù)據(jù)或者是分段存儲(chǔ)的——每個(gè)站點(diǎn)存儲(chǔ)一段,或者被每個(gè)站點(diǎn)復(fù)制一份。在分段型分布式數(shù)據(jù)庫(kù)中,數(shù)據(jù)是本地化的,本地使用的數(shù)據(jù)存儲(chǔ)在相應(yīng)的站點(diǎn)上。然而,這并不意味著一個(gè)站點(diǎn)不能訪問(wèn)存儲(chǔ)在另一個(gè)站點(diǎn)上的數(shù)據(jù),但訪問(wèn)大多是本地性的,偶爾是全局性的。雖然每個(gè)站點(diǎn)對(duì)其本地?cái)?shù)據(jù)具有完全的控制,但也存在通過(guò)因特網(wǎng)或廣域網(wǎng)的全局控制。例如,一家制藥公司可能在許多國(guó)家擁有多個(gè)站點(diǎn)。每個(gè)站點(diǎn)有一個(gè)數(shù)據(jù)庫(kù),存儲(chǔ)著自己雇員的信息。但是,中心人事部門(mén)可以控制所有的數(shù)據(jù)庫(kù)。在復(fù)制型分布式數(shù)據(jù)庫(kù)中,每個(gè)站點(diǎn)都有其他站點(diǎn)的一個(gè)完全副本。對(duì)一個(gè)站點(diǎn)所存儲(chǔ)的數(shù)據(jù)進(jìn)行的任何修改,都要在其他每個(gè)站點(diǎn)上精確地重復(fù)進(jìn)行。擁有這種數(shù)據(jù)庫(kù)是為了安全。如果一個(gè)站點(diǎn)上的系統(tǒng)發(fā)生故障,該站點(diǎn)的用戶可以訪問(wèn)另一個(gè)站點(diǎn)上的數(shù)據(jù)。5、面向?qū)ο髷?shù)據(jù)庫(kù)模型關(guān)系數(shù)據(jù)庫(kù)具有一個(gè)特定的數(shù)據(jù)視圖,該視圖基于數(shù)據(jù)庫(kù)元組與屬性的性質(zhì)。關(guān)系數(shù)據(jù)庫(kù)中最小的數(shù)據(jù)單位是一個(gè)元組與一個(gè)屬性的交集。然而,有些應(yīng)用程序需要將數(shù)據(jù)視為其他形式,如看作一種結(jié)構(gòu),像由字段構(gòu)成的記錄。面向?qū)ο髷?shù)據(jù)庫(kù)試圖保留關(guān)系模型的優(yōu)點(diǎn),同時(shí)允許應(yīng)用程序訪問(wèn)結(jié)構(gòu)化數(shù)據(jù)。在面向?qū)ο髷?shù)據(jù)庫(kù)中,對(duì)象及其之間的關(guān)系得到定義。此外,每個(gè)對(duì)象可以具有可表示為字段的屬性。例如,在一個(gè)機(jī)構(gòu)中,可以為雇員、部門(mén)和客戶定義對(duì)象類型。雇員類可以定義一個(gè)雇員對(duì)象的屬性(名、姓、社會(huì)保險(xiǎn)號(hào)碼、薪水等等),以及可以如何訪問(wèn)它們。部門(mén)對(duì)象可以定義部門(mén)的屬性,以及可以如何訪問(wèn)它們。此外,數(shù)據(jù)庫(kù)還可以在一個(gè)雇員對(duì)象與一個(gè)部門(mén)對(duì)象之間創(chuàng)建一種關(guān)系,以表示該雇員在該部門(mén)工作。五、數(shù)據(jù)庫(kù)設(shè)計(jì)任何數(shù)據(jù)庫(kù)的設(shè)計(jì)都是一項(xiàng)冗長(zhǎng)、復(fù)雜的任務(wù),只能通過(guò)一個(gè)逐步的過(guò)程來(lái)完成。第一步通常涉及對(duì)數(shù)據(jù)庫(kù)潛在用戶的大量訪談,以收集需要存儲(chǔ)的信息和每個(gè)部門(mén)的訪問(wèn)需求。第二步是建立一個(gè)實(shí)體關(guān)系模型,該模型定義必須為之保存一些信息的實(shí)體、這些實(shí)體的屬性以及這些實(shí)體之間的關(guān)系。設(shè)計(jì)的下一步基于所要使用的數(shù)據(jù)庫(kù)的類型。在關(guān)系數(shù)據(jù)庫(kù)中,下一步是建立基于實(shí)體關(guān)系模型的關(guān)系,并規(guī)范化這些關(guān)系。規(guī)范化是一個(gè)過(guò)程,通過(guò)該過(guò)程一組特定的關(guān)系轉(zhuǎn)化成一組具有更堅(jiān)固結(jié)構(gòu)的新關(guān)系。為了達(dá)到以下目的,需要規(guī)范化:允許數(shù)據(jù)庫(kù)中的任何關(guān)系得到表示,允許像SQL(結(jié)構(gòu)化查詢語(yǔ)言)這樣的語(yǔ)言使用由原子操作組成的功能強(qiáng)大的檢索操作,消除插入、刪除和更新操作中的異常,以及減少添加新的數(shù)據(jù)類型時(shí)重構(gòu)數(shù)據(jù)庫(kù)的必要性。第七單元:計(jì)算機(jī)通信課文A:電信與計(jì)算機(jī)電信使世界各地的人們得以互相聯(lián)系,即刻獲取信息,并從邊遠(yuǎn)地區(qū)實(shí)施通信。電信通常涉及一個(gè)信息發(fā)送者和一個(gè)或多個(gè)接收者,他們通過(guò)電話系統(tǒng)等把信息從一地發(fā)送到另一地的技術(shù)相聯(lián)系。電信設(shè)備將不同類型的信息,如聲音和圖像,轉(zhuǎn)換成電子信號(hào)。然后,這些信號(hào)就可以通過(guò)電話線或無(wú)線電波等媒介進(jìn)行發(fā)送。信號(hào)到達(dá)目的地后,接收端的設(shè)備將電子信號(hào)轉(zhuǎn)換回可以理解的信息,如電話中的聲音、電視上的活動(dòng)圖像或計(jì)算機(jī)屏幕上的文字和圖片。電信使人們能夠在城鎮(zhèn)不同地方、國(guó)家之間以及向外層空間和從外層空間發(fā)送和接收個(gè)人信息。電信也為新聞、數(shù)據(jù)、信息和娛樂(lè)提供了關(guān)鍵的媒介。電信信息可通過(guò)各種方式和設(shè)備發(fā)送。信息可由一個(gè)發(fā)送者發(fā)送給一個(gè)接收者(點(diǎn)對(duì)點(diǎn)),或者由一個(gè)發(fā)送者發(fā)送給多個(gè)接收者(點(diǎn)對(duì)多點(diǎn))。個(gè)人通信,如兩個(gè)人之間的電話對(duì)話或傳真信息,通常涉及點(diǎn)對(duì)點(diǎn)的傳輸。通常稱為廣播的點(diǎn)對(duì)多點(diǎn)電信傳輸,為商業(yè)無(wú)線電和電視節(jié)目播送提供了基礎(chǔ)。電信以信息轉(zhuǎn)換為電子信號(hào)為開(kāi)端。然后,這些信號(hào)通過(guò)媒介發(fā)送到接收機(jī),并在那里解碼,恢復(fù)為接收信息的人能夠理解的形式。有各種方法可以生成并解譯信號(hào),也有許多不同方法可以傳輸信號(hào)。電報(bào)機(jī)與電話機(jī)等設(shè)備,通過(guò)生成調(diào)制電脈沖或以系統(tǒng)化方式變化的脈沖,來(lái)傳遞信息。接下來(lái),這些脈沖通過(guò)導(dǎo)線、無(wú)線電波或其他媒介發(fā)送給接收機(jī),并由其進(jìn)行解調(diào)。電報(bào)機(jī)是最早的傳遞電信信息的方法,它通過(guò)將電報(bào)電鍵與金屬導(dǎo)體之間的接觸(使電流得以流動(dòng)的兩個(gè)導(dǎo)體之間的連接)轉(zhuǎn)換成電脈沖而進(jìn)行工作。這些脈沖沿著導(dǎo)線發(fā)送到接收機(jī),而接收機(jī)則將這些脈沖轉(zhuǎn)換成長(zhǎng)與短的聲音脈沖串,或者在簡(jiǎn)單的打印設(shè)備上打印出來(lái)的點(diǎn)與劃。特定的點(diǎn)與劃序列代表字母表中的字母。在早期的電報(bào)中,這些序列由電報(bào)機(jī)操作員進(jìn)行解譯。這樣,電報(bào)機(jī)操作員就可以發(fā)送和接收可拼成詞語(yǔ)的字母。后來(lái)的電報(bào)機(jī)能自動(dòng)解譯字母和數(shù)字。電報(bào)機(jī)在很大程度上已被其他的電信形式所取代,如傳真機(jī)和電子郵件,但在世界有些地方,電報(bào)機(jī)仍然用來(lái)發(fā)送信息。電報(bào)機(jī)、電話機(jī)、無(wú)線電和電視都是通過(guò)修改電子信號(hào),使其模擬或再現(xiàn)原來(lái)的信息,來(lái)進(jìn)行工作的。這種傳輸稱為模擬傳輸。然而,計(jì)算機(jī)和其他類型的電子設(shè)備是傳輸數(shù)字信號(hào)的。數(shù)字技術(shù)將信息轉(zhuǎn)換成電子形式。其方法首先是多次測(cè)量信息的不同特性,如語(yǔ)音的音高和音量。然后,這些測(cè)量值被編譯成多個(gè)系列的二進(jìn)制數(shù)或1與0。最后,數(shù)字技術(shù)生成并發(fā)送與這些系列的1和0相對(duì)應(yīng)的電脈沖。與模擬信號(hào)相比較,數(shù)字信息可以更快、更清晰地傳輸,因?yàn)殡娒}沖僅需與兩個(gè)數(shù)字對(duì)應(yīng),而不是構(gòu)成原信息的所有特性,如人的說(shuō)話聲的音高和音量。數(shù)字信息可以通過(guò)導(dǎo)線、電纜或無(wú)線電波傳輸,但必須由數(shù)字接收機(jī)進(jìn)行解譯。新型數(shù)字電話和電視正在開(kāi)發(fā)中,以提高電信的效率。大多數(shù)個(gè)人計(jì)算機(jī)通過(guò)使用普通電話網(wǎng),來(lái)進(jìn)行彼此間的通信以及與因特網(wǎng)等大型網(wǎng)絡(luò)的通信。因?yàn)殡娫捑W(wǎng)是通過(guò)將語(yǔ)音信號(hào)轉(zhuǎn)換成電子信號(hào)來(lái)工作的,計(jì)算機(jī)必須首先將其數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換成語(yǔ)音信號(hào)。計(jì)算機(jī)使用稱為調(diào)制解調(diào)器的設(shè)備來(lái)完成這項(xiàng)工作。調(diào)制解調(diào)器是調(diào)制器/解調(diào)器的縮略。調(diào)制解調(diào)器將計(jì)算機(jī)輸出的1和0數(shù)字流轉(zhuǎn)換成模擬信號(hào),而模擬信號(hào)可隨后通過(guò)電話網(wǎng)傳輸,就像通話者的聲音那樣。接收端計(jì)算機(jī)的調(diào)制解調(diào)器將模擬語(yǔ)音信號(hào)解調(diào)還原為計(jì)算機(jī)能理解的數(shù)字形式。電信系統(tǒng)使用多種不同的傳輸媒介傳送信息,包括銅線、光纜、通信衛(wèi)星和微波無(wú)線電。劃分電信媒介的一種方法,是看媒介是否使用導(dǎo)線?;趯?dǎo)線(或有線)的電信提供了大多數(shù)電話與電話網(wǎng)之間的最初鏈路,是一種可靠的信息傳輸方式。沒(méi)有導(dǎo)線的電信,通常稱為無(wú)線通信,使用無(wú)繩電話、蜂窩式無(wú)線電話、步話機(jī)、民用波段無(wú)線電臺(tái)、尋呼機(jī)和衛(wèi)星等技術(shù)。無(wú)線通信提高了機(jī)動(dòng)性和靈活性。個(gè)人、企業(yè)和政府使用多種不同的電信系統(tǒng)。有些系統(tǒng),如電話系統(tǒng),使用由電纜、導(dǎo)線和交換臺(tái)組成的網(wǎng)絡(luò),來(lái)進(jìn)行點(diǎn)對(duì)點(diǎn)的通信。另外一些系統(tǒng),如無(wú)線電臺(tái)與電視臺(tái),通過(guò)空間播出信號(hào),任何擁有接收設(shè)備的人都可以接收。有些系統(tǒng)利用數(shù)種媒介完成傳輸。例如,一個(gè)電話從打電話的人傳送到接電話的人,其間可能要通過(guò)銅線、光纜和無(wú)線電波進(jìn)行傳輸。隨著電信技術(shù)的發(fā)展,所有的電信系統(tǒng)都在不斷地演變。計(jì)算機(jī)遠(yuǎn)程通信具有發(fā)送和接收音頻信號(hào)、視頻信號(hào)、文本、軟件和多媒體的能力,是電信市場(chǎng)發(fā)展最快的部分之一。計(jì)算機(jī)遠(yuǎn)程通信利用現(xiàn)有的電話連接來(lái)傳輸數(shù)字?jǐn)?shù)據(jù)。這種傳輸常常通過(guò)因特網(wǎng)進(jìn)行,而因特網(wǎng)是一個(gè)由個(gè)人、企業(yè)、政府和教育機(jī)構(gòu)所使用的計(jì)算機(jī)和信息源構(gòu)成的分散型網(wǎng)絡(luò)。有些計(jì)算機(jī)使用綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)直接連接到電話網(wǎng)的數(shù)字部分,但這需要安裝專門(mén)設(shè)備和進(jìn)行電話線調(diào)整。為了大幅度提高調(diào)制解調(diào)器的速度,目前正在開(kāi)發(fā)一種供常規(guī)電話線使用的改進(jìn)型調(diào)制解調(diào)器系統(tǒng),稱為數(shù)字用戶線路(DSL)。電子郵件是因特網(wǎng)吸引人的一個(gè)關(guān)鍵點(diǎn),也是計(jì)算機(jī)遠(yuǎn)程通信的一種常見(jiàn)形式。電子郵件是基于文本的信息傳輸系統(tǒng),它能將鍵入的信息和多媒體信息等發(fā)送給個(gè)人計(jì)算機(jī)用戶。(一幢建筑或一家公司內(nèi)的)本地電子郵件通常經(jīng)由基于導(dǎo)線的內(nèi)部網(wǎng)傳送給收件人。必須橫穿城鎮(zhèn)或國(guó)家才能到達(dá)最終目的地的電子郵件,通常通過(guò)電話網(wǎng)進(jìn)行傳輸。企業(yè)經(jīng)常使用的其他計(jì)算機(jī)遠(yuǎn)程通信技術(shù)包括自動(dòng)銀行終端及設(shè)備,用來(lái)處理將費(fèi)用直接從顧客銀行帳戶上扣除的信用卡業(yè)務(wù)。隨著越來(lái)越復(fù)雜的計(jì)算機(jī)信息以快速提高的速度通過(guò)電話線發(fā)送,個(gè)人計(jì)算機(jī)拓展了電話系統(tǒng)的作用范圍。這種對(duì)速度的需要促進(jìn)了數(shù)字傳輸技術(shù)的發(fā)展。光纖技術(shù)的革新有望跟上個(gè)人計(jì)算機(jī)在遠(yuǎn)程通信方面不斷增長(zhǎng)的使用。下一代蜂窩電話、尋呼機(jī)和電視機(jī)也將受益于數(shù)字遠(yuǎn)程通信的速度和清晰度。電信和信息技術(shù)正在融合。這意味著,在我們只將其與一種功能聯(lián)系起來(lái)的設(shè)備中,有不少可能演變?yōu)槎嘤猛驹O(shè)備。這種融合已經(jīng)開(kāi)始在各種領(lǐng)域發(fā)生。有些電話機(jī)和尋呼機(jī)不但能存儲(chǔ)電話號(hào)碼,而且還能存儲(chǔ)呼叫者的姓名和個(gè)人信息。現(xiàn)在正在研制帶有鍵盤(pán)和小屏幕的先進(jìn)電話機(jī),可用于訪問(wèn)因特網(wǎng)和接發(fā)電子郵件。個(gè)人計(jì)算機(jī)現(xiàn)在可以訪問(wèn)信息和視頻娛樂(lè)節(jié)目,實(shí)際上正在成為電視機(jī)和計(jì)算機(jī)終端的組合體。我們當(dāng)前將其與廣播和電纜傳輸?shù)囊曨l節(jié)目聯(lián)系在一起的電視機(jī),可以通過(guò)附加的設(shè)備訪問(wèn)因特網(wǎng)。未來(lái)的改進(jìn)和技術(shù)革新可能使設(shè)備之間的區(qū)別進(jìn)一步模糊化。電信技術(shù)的融合也將在可獲得的內(nèi)容以及內(nèi)容提供者的構(gòu)成方面引起改變。電視機(jī)和個(gè)人計(jì)算機(jī)都將不斷地吸納新的多媒體、交互和數(shù)字化特征。例如,一個(gè)娛樂(lè)節(jié)目可能會(huì)有屏幕指針,鏈接到含有演員更多信息的萬(wàn)維網(wǎng)網(wǎng)頁(yè)上。從近期來(lái)看,在全數(shù)字化電信時(shí)代到來(lái)之前,調(diào)制解調(diào)器等設(shè)備在為舊的模擬世界與即將到來(lái)的數(shù)字世界提供基本鏈接方面,仍然必不可少。第八單元:計(jì)算機(jī)網(wǎng)絡(luò)課文A:網(wǎng)絡(luò)基本原理在不同計(jì)算機(jī)之間共享信息和資源的需要,導(dǎo)致了相互連接的計(jì)算機(jī)系統(tǒng)的產(chǎn)生。這種相互連接的計(jì)算機(jī)系統(tǒng)被稱為網(wǎng)絡(luò)。在網(wǎng)絡(luò)中,計(jì)算機(jī)連接在一起,從而數(shù)據(jù)可以從一臺(tái)計(jì)算機(jī)傳輸?shù)搅硪慌_(tái)計(jì)算機(jī)。在網(wǎng)絡(luò)中,計(jì)算機(jī)用戶可以交換信息,并共享分散在整個(gè)網(wǎng)絡(luò)系統(tǒng)的資源,如打印能力、軟件包以及數(shù)據(jù)存儲(chǔ)設(shè)備。支持這類應(yīng)用所需的基本軟件,已經(jīng)從簡(jiǎn)單的實(shí)用軟件包發(fā)展成一個(gè)不斷擴(kuò)展的網(wǎng)絡(luò)軟件系統(tǒng),該系統(tǒng)提供了一個(gè)復(fù)雜的網(wǎng)絡(luò)范圍的基礎(chǔ)結(jié)構(gòu)。從某種意義上說(shuō),網(wǎng)絡(luò)軟件正在演變成一個(gè)網(wǎng)絡(luò)范圍的操作系統(tǒng)。一、網(wǎng)絡(luò)分類計(jì)算機(jī)網(wǎng)絡(luò)常常劃分為局域網(wǎng)、城域網(wǎng)和廣域網(wǎng)。局域網(wǎng)通常由一幢建筑物或一個(gè)建筑群中的若干計(jì)算機(jī)組成。例如,大學(xué)校園里的計(jì)算機(jī)或制造工廠中的計(jì)算機(jī)可以用局域網(wǎng)連接。城域網(wǎng)屬于中型網(wǎng)絡(luò),如一個(gè)覆蓋某一社區(qū)的網(wǎng)絡(luò)。廣域網(wǎng)連接地理范圍更廣的計(jì)算機(jī),這些計(jì)算機(jī)或許在相鄰的城市,或許在地球相反的兩面。網(wǎng)絡(luò)分類的另一種方式是根據(jù)網(wǎng)絡(luò)的內(nèi)部運(yùn)行是基于無(wú)專利權(quán)保護(hù)的設(shè)計(jì)還是基于特定實(shí)體(如個(gè)人或公司)所擁有和控制的革新。前一種類型的網(wǎng)絡(luò)稱為開(kāi)放式網(wǎng)絡(luò),后一種類型的網(wǎng)絡(luò)稱為封閉式網(wǎng)絡(luò),有時(shí)也稱為專有網(wǎng)絡(luò)。因特網(wǎng)屬于開(kāi)放式系統(tǒng)。尤其是,整個(gè)因特網(wǎng)的通信是由一組稱為T(mén)CP/IP協(xié)議組的開(kāi)放標(biāo)準(zhǔn)來(lái)控制的。任何人都可以自由地使用這些標(biāo)準(zhǔn),而不需要付費(fèi)或簽署許可協(xié)議。相反,像Novell股份有限公司這樣的公司可能選擇為其開(kāi)發(fā)的系統(tǒng)保留所有權(quán),通過(guò)出售或出租這些產(chǎn)品獲得收入。基于這類系統(tǒng)的網(wǎng)絡(luò)屬于封閉式網(wǎng)絡(luò)的例子。還有一種網(wǎng)絡(luò)分類方法,它基于網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),即計(jì)算機(jī)相互連接的模式??偩€拓?fù)浣Y(jié)構(gòu)、環(huán)形拓?fù)浣Y(jié)構(gòu)和星形拓?fù)浣Y(jié)構(gòu)是3種流行的拓?fù)浣Y(jié)構(gòu)。其中,星形網(wǎng)絡(luò)或許是最古老的,這種網(wǎng)絡(luò)由一臺(tái)大型中央計(jì)算機(jī)服務(wù)許多用戶的范式演變而來(lái)。隨著這些用戶所使用的簡(jiǎn)單終端本身發(fā)展成小型計(jì)算機(jī),星形網(wǎng)絡(luò)也就出現(xiàn)了。需要強(qiáng)調(diào)的一點(diǎn)是,在一個(gè)網(wǎng)絡(luò)中,計(jì)算機(jī)之間的連接并不一定是物理連接。使用無(wú)線廣播技術(shù)的無(wú)線網(wǎng)絡(luò)正在變得相當(dāng)常見(jiàn)。二、協(xié)議為了網(wǎng)絡(luò)可靠運(yùn)行,確立進(jìn)行網(wǎng)絡(luò)活動(dòng)所遵循的規(guī)則很重要。這類規(guī)則稱為協(xié)議。通過(guò)開(kāi)發(fā)和采用協(xié)議標(biāo)準(zhǔn),不同廠商制造的網(wǎng)絡(luò)應(yīng)用產(chǎn)品能夠相互兼容。因此,在聯(lián)網(wǎng)技術(shù)的開(kāi)發(fā)中,協(xié)議標(biāo)準(zhǔn)的開(kāi)發(fā)是一個(gè)必不可少的過(guò)程。作為對(duì)協(xié)議概念的介紹,讓我們考慮在一個(gè)網(wǎng)絡(luò)的計(jì)算機(jī)之間協(xié)調(diào)報(bào)文傳輸?shù)膯?wèn)題。如果沒(méi)有控制這種通信的規(guī)則,所有的計(jì)算機(jī)就可能堅(jiān)持同時(shí)傳輸報(bào)文,或者在需要傳遞報(bào)文時(shí)而未能傳遞。解決這個(gè)問(wèn)題的一種方法是令牌環(huán)協(xié)議,該協(xié)議由IBM公司20世紀(jì)70年代開(kāi)發(fā),今天在基于環(huán)形拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)中依然是一種很流行的協(xié)議。在這個(gè)協(xié)議里,網(wǎng)絡(luò)中的所有計(jì)算機(jī)都只沿一個(gè)共同的方向傳輸報(bào)文(圖8A-1)。也就是說(shuō),通過(guò)網(wǎng)絡(luò)發(fā)送的所有報(bào)文都沿一個(gè)相同的方向繞環(huán)形網(wǎng)絡(luò)移動(dòng),依次經(jīng)由各個(gè)計(jì)算機(jī)轉(zhuǎn)發(fā)。一份報(bào)文到達(dá)目的地后,目的地的計(jì)算機(jī)保留一個(gè)副本并繞環(huán)形網(wǎng)絡(luò)轉(zhuǎn)發(fā)一個(gè)副本。當(dāng)轉(zhuǎn)發(fā)的副本到達(dá)始發(fā)計(jì)算機(jī)時(shí),該計(jì)算機(jī)知道報(bào)文一定到達(dá)了目的地,并將其移出環(huán)形網(wǎng)絡(luò)。當(dāng)然,這種系統(tǒng)的運(yùn)行依靠計(jì)算機(jī)之間的合作。如果一臺(tái)計(jì)算機(jī)堅(jiān)持不斷地傳輸自己的報(bào)文,而不轉(zhuǎn)發(fā)其他計(jì)算機(jī)的報(bào)文,那么這個(gè)系統(tǒng)就什么也執(zhí)行不了。為了解決這個(gè)問(wèn)題,在環(huán)形網(wǎng)絡(luò)中傳遞一個(gè)稱為令牌的獨(dú)特位模式。擁有令牌的計(jì)算機(jī)得到權(quán)利傳輸自己的報(bào)文,而沒(méi)有令牌的計(jì)算機(jī)則只允許轉(zhuǎn)發(fā)報(bào)文。一般來(lái)說(shuō),每臺(tái)計(jì)算機(jī)只是像傳遞報(bào)文那樣傳遞令牌。然而,如果收到令牌的計(jì)算機(jī)有自己的報(bào)文需要通過(guò)網(wǎng)絡(luò)傳輸,它就會(huì)保存令牌,同時(shí)傳輸一份報(bào)文。這份報(bào)文在環(huán)形網(wǎng)絡(luò)中環(huán)繞一周后,該計(jì)算機(jī)就將令牌傳遞給環(huán)形網(wǎng)絡(luò)中的下一臺(tái)計(jì)算機(jī)。同樣,當(dāng)下一臺(tái)計(jì)算機(jī)收到令牌時(shí),它既可以立即傳遞令牌,也可以先傳輸自己的新報(bào)文,然后將令牌傳遞給下一臺(tái)計(jì)算機(jī)。這樣,隨著令牌繞著環(huán)形網(wǎng)絡(luò)傳遞,網(wǎng)絡(luò)中的每臺(tái)計(jì)算機(jī)都有同等的機(jī)會(huì)傳輸自己的報(bào)文。協(xié)調(diào)報(bào)文傳輸?shù)牧硗庖环N協(xié)議用于基于以太網(wǎng)協(xié)議集的總線拓?fù)渚W(wǎng)絡(luò)。在以太網(wǎng)系統(tǒng)中,傳輸報(bào)文的權(quán)利由稱為帶有沖突檢測(cè)的載波偵聽(tīng)多路訪問(wèn)(CSMA/CD)的協(xié)議控制。該協(xié)議規(guī)定,每一份報(bào)文必須向總線上的所有計(jì)算機(jī)廣播(圖8A-2)。每臺(tái)計(jì)算機(jī)監(jiān)控所有的報(bào)文,但只保留發(fā)送給自己的那些報(bào)文。一臺(tái)計(jì)算機(jī)要等到總線靜默時(shí)才可以傳輸報(bào)文。這時(shí),它開(kāi)始傳輸報(bào)文,同時(shí)繼續(xù)監(jiān)控總線。如果另一臺(tái)計(jì)算機(jī)也開(kāi)始傳輸報(bào)文,這兩臺(tái)計(jì)算機(jī)都會(huì)檢測(cè)到?jīng)_突,并暫停短暫而隨機(jī)的一段時(shí)間,然后再嘗試傳輸。結(jié)果是形成一種體制,這種體制類似于一小群人對(duì)話時(shí)所采用的。如果兩個(gè)人同時(shí)開(kāi)始說(shuō)話,他們都會(huì)停下來(lái)。不同的是,人們隨后可能進(jìn)行這樣的對(duì)話:“抱歉,您想說(shuō)什么?”,“不,不,您先說(shuō)?!倍鶕?jù)CSMA/CD協(xié)議,每臺(tái)計(jì)算機(jī)只是重新進(jìn)行嘗試。三、進(jìn)程間通信在一個(gè)網(wǎng)絡(luò)內(nèi)不同計(jì)算機(jī)上(甚至使用分時(shí)方法在同一臺(tái)計(jì)算機(jī)上)執(zhí)行的各種活動(dòng)(或進(jìn)程)必須經(jīng)?;ハ嗤ㄐ?,以便協(xié)調(diào)行動(dòng),并完成指定的任務(wù)。這種進(jìn)程之間的通信稱為進(jìn)程間通信。進(jìn)程間通信使用的一種流行規(guī)約是客戶機(jī)/服務(wù)器模型。這種模型將進(jìn)程扮演的基本角色或定義為向其他進(jìn)程提出請(qǐng)求的客戶機(jī),或定義為滿足客戶機(jī)所提請(qǐng)求的服務(wù)器??蛻魴C(jī)/服務(wù)器模型的一種早期應(yīng)用,出現(xiàn)在將一組辦公室里的所有計(jì)算機(jī)都連接起來(lái)的網(wǎng)絡(luò)中。在這種應(yīng)用中,一臺(tái)高質(zhì)量的打印機(jī)被連接到網(wǎng)絡(luò)上,供其中的所有計(jì)算機(jī)使用。在這種情況下,打印機(jī)扮演了服務(wù)器(常稱為打印服務(wù)器)的角色,而其他計(jì)算機(jī)則通過(guò)程序設(shè)計(jì)而扮演了向打印服務(wù)器發(fā)送打印請(qǐng)求的客戶機(jī)角色??蛻魴C(jī)/服務(wù)器模型的另外一種早期應(yīng)用是為了降低磁盤(pán)存儲(chǔ)費(fèi)用,同時(shí)消除復(fù)制記錄的需要。在這種情況下,網(wǎng)絡(luò)中的某一臺(tái)計(jì)算機(jī)配備了大容量存儲(chǔ)系統(tǒng)(通常是磁盤(pán)),存儲(chǔ)一個(gè)機(jī)構(gòu)的所有記錄。這樣,網(wǎng)絡(luò)中的其他計(jì)算機(jī)可根據(jù)需要請(qǐng)求訪問(wèn)這些記錄。因此,實(shí)際含有記錄的計(jì)算機(jī)扮演了服務(wù)器(稱為文件服務(wù)器)的角色,而其他計(jì)算機(jī)則扮演了請(qǐng)求訪問(wèn)文件服務(wù)器上存儲(chǔ)的文件的客戶機(jī)角色。今天,客戶機(jī)/服務(wù)器模型在網(wǎng)絡(luò)中廣泛應(yīng)用。不過(guò),客戶機(jī)/服務(wù)器模型并非進(jìn)程間通信的唯一方式。另外一種模型是對(duì)等(peer-to-peer,??s寫(xiě)為P2P)模型,其特性與客戶機(jī)/服務(wù)器模型的特性形成鮮明對(duì)照。客戶機(jī)/服務(wù)器模型涉及一個(gè)進(jìn)程(服務(wù)器)與許多其他進(jìn)程(客戶機(jī))通信,而對(duì)等模型則涉及兩個(gè)進(jìn)程進(jìn)行對(duì)等通信(圖8A-3)。而且,服務(wù)器必須持續(xù)運(yùn)行,以準(zhǔn)備好隨時(shí)服務(wù)于客戶機(jī),而對(duì)等模型則通常涉及兩個(gè)進(jìn)程臨時(shí)運(yùn)行。例如,對(duì)等模型的應(yīng)用包括兩個(gè)人通過(guò)因特網(wǎng)進(jìn)行書(shū)面對(duì)話的即時(shí)通信,以及人們參與下國(guó)際象棋或西洋跳棋等游戲的情況。對(duì)等模型還是通過(guò)因特網(wǎng)共享音樂(lè)錄音、影片等文件的一種流行方法(其合法性有時(shí)值得懷疑)。在這種情況下,尋求特定項(xiàng)目的個(gè)人在因特網(wǎng)上發(fā)布其需求,而擁有他所感興趣項(xiàng)目的人則會(huì)與他取得聯(lián)系。然后,雙方之間就可以使用對(duì)等模型傳輸這些項(xiàng)目。這與應(yīng)用客戶機(jī)/服務(wù)器模型的較早期方法截然不同,這些方法要建立一個(gè)“分發(fā)中心”(服務(wù)器),供客戶機(jī)下載音樂(lè)錄音(或者至少找到可以提供這些項(xiàng)目的地方)。然而,中心服務(wù)器證明是音樂(lè)行業(yè)可以運(yùn)用版權(quán)法的一個(gè)焦點(diǎn)對(duì)象,結(jié)果最終導(dǎo)致這些音樂(lè)分發(fā)中心的解體。與此形成對(duì)照的是,對(duì)等模型缺乏一個(gè)操作中心,這使得運(yùn)用版權(quán)法的努力難度增加。你或許經(jīng)常讀到或聽(tīng)到“對(duì)等網(wǎng)絡(luò)”這個(gè)說(shuō)法,這是當(dāng)技術(shù)術(shù)語(yǔ)被非科技界采用時(shí)可能發(fā)生術(shù)語(yǔ)誤用的一個(gè)例子。“對(duì)等”指的是兩個(gè)進(jìn)程通過(guò)網(wǎng)絡(luò)(或互聯(lián)網(wǎng))進(jìn)行通信的一種體制,并不是網(wǎng)絡(luò)(或互聯(lián)網(wǎng))的一種特性。一個(gè)進(jìn)程可以通過(guò)同一個(gè)網(wǎng)絡(luò)先是使用對(duì)等模型與另一個(gè)進(jìn)程通信,然后又使用客戶機(jī)/服務(wù)器模型與另一個(gè)進(jìn)程通信。因此,比較準(zhǔn)確的說(shuō)法是,使用對(duì)等模型通信,而不是通過(guò)對(duì)等網(wǎng)絡(luò)通信。第九單元:因特網(wǎng)課文A:因特網(wǎng)最著名的互聯(lián)網(wǎng)例子是因特網(wǎng)(Internet,注意大寫(xiě)的I)。因特網(wǎng)起源于20世紀(jì)60年代初的研究項(xiàng)目。其目標(biāo)是發(fā)展一種能力,將各種計(jì)算機(jī)網(wǎng)絡(luò)連接起來(lái),使它們能夠作為一個(gè)不會(huì)因局部災(zāi)難而瓦解的互聯(lián)系統(tǒng)運(yùn)行。最初的工作大多是由美國(guó)政府通過(guò)國(guó)防部高級(jí)研究計(jì)劃局(DARPA——讀作“DAR-pa”)發(fā)起的。隨著歲月的推移,因特網(wǎng)的開(kāi)發(fā)從一個(gè)國(guó)防項(xiàng)目轉(zhuǎn)變成一個(gè)學(xué)術(shù)研究項(xiàng)目。如今,它在很大程度上是一個(gè)商業(yè)項(xiàng)目,連接著全世界的廣域網(wǎng)、城域網(wǎng)和局域網(wǎng),涉及數(shù)百萬(wàn)臺(tái)計(jì)算機(jī)。一、因特網(wǎng)體系結(jié)構(gòu)從概念上說(shuō),因特網(wǎng)可以看作是域的集合。每個(gè)域由一個(gè)網(wǎng)絡(luò)或一個(gè)相對(duì)較小的互聯(lián)網(wǎng)組成,由一個(gè)像大學(xué)、公司或政府機(jī)構(gòu)那樣的組織負(fù)責(zé)運(yùn)行。每個(gè)域是一個(gè)自主系統(tǒng),可根據(jù)本地管理機(jī)構(gòu)的愿望進(jìn)行配置。它可能由一臺(tái)計(jì)算機(jī)或一個(gè)包含許多局域網(wǎng)、城域網(wǎng)、甚至廣域網(wǎng)的復(fù)雜互聯(lián)網(wǎng)組成。域的建立由互聯(lián)網(wǎng)名稱與數(shù)字地址分配機(jī)構(gòu)(ICANN)監(jiān)管。這是一個(gè)非贏利公司,其成立的目的是協(xié)調(diào)域的命名及因特網(wǎng)地址的分配。要在因特網(wǎng)上建立一個(gè)域,該域必須首先通過(guò)一個(gè)得到ICANN授權(quán)做此工作、被稱為域名注冊(cè)服務(wù)商的公司進(jìn)行注冊(cè)。一個(gè)域一旦注冊(cè),即可以使用一個(gè)路由器連接到現(xiàn)有的因特網(wǎng)上。這個(gè)路由器將該域中的一個(gè)網(wǎng)絡(luò)與已經(jīng)在因特網(wǎng)內(nèi)的一個(gè)網(wǎng)絡(luò)相連接。這個(gè)特定的路由器常被稱為該域的網(wǎng)關(guān),因?yàn)樗喈?dāng)于該域通往因特網(wǎng)其余部分的大門(mén)。從單個(gè)域的角度看,位于其網(wǎng)關(guān)外面的那部分因特網(wǎng)有時(shí)被稱為“云”,這是指以下的事實(shí):其網(wǎng)關(guān)外面的因特網(wǎng)結(jié)構(gòu)不受其控制,而且與其本身的操作也沒(méi)有什么關(guān)系。傳輸給該域內(nèi)一個(gè)目的地的任何報(bào)文都在該域內(nèi)處理,傳輸給該域外一個(gè)目的地的任何報(bào)文都首先送至網(wǎng)關(guān),然后由網(wǎng)關(guān)向外發(fā)送到云里。一個(gè)人如果“站”在一個(gè)域的網(wǎng)關(guān)處“向外看”云,就會(huì)發(fā)現(xiàn)各種結(jié)構(gòu)。的確,隨著各種域找到與云建立連接的點(diǎn),因特網(wǎng)也以有點(diǎn)隨意的方式發(fā)展著。然而,一種流行的結(jié)構(gòu)是,將若干域的網(wǎng)關(guān)連接在一起,形成一個(gè)由網(wǎng)關(guān)組成的區(qū)域網(wǎng)絡(luò)。例如,一組大學(xué)可以選擇將其資源集中起來(lái),用于構(gòu)建這樣一個(gè)網(wǎng)絡(luò)。而這個(gè)區(qū)域網(wǎng)絡(luò)接著又連接到一個(gè)更大的網(wǎng)絡(luò)上,后者上面還連接有其他的區(qū)域網(wǎng)絡(luò)。這樣,那部分云就呈現(xiàn)出了層次結(jié)構(gòu)(圖9A-1)。二、連接到因特網(wǎng)為了簡(jiǎn)化連接到因特網(wǎng)上的過(guò)程,許多稱為因特網(wǎng)服務(wù)提供商的公司允許客戶通過(guò)公司的設(shè)備將他們的域連接到因特網(wǎng)上

溫馨提示

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

評(píng)論

0/150

提交評(píng)論