③描述程序功能需求以及程序如何操作和使用所要求的文檔。
軟件的含義比程序更宏觀、更物化。一般情況下,軟件往往指的是設計成熟、功能完善、能夠滿足用戶的功能上、性能上的要求、具有使用價值的計算機程序。人們常常把程序、程序運行需要的數據和軟件文檔,統稱為軟件。其中,程序是軟件的主體,是計算機能夠識別並運行的指令集;數據是程序運行過程中需要處理的對象和參數;文檔是程序開發、維護和操作過程中的相關資料,如需求規格說明、設計規格說明書、係統幫助、使用指南等。現在的軟件基本上都有完整的、規範的文檔。
313計算機軟件的特點在計算機係統中,軟件和硬件是兩種不同的產品,硬件是有形的物理實體,一般看得見、摸得著。而軟件是人類的思維邏輯產品,與傳統意義上的硬件製造不同,軟件是無形的,它的正確與否、是好是壞,一直要到程序在機器上運行才能知道。因此,它具有與硬件不同的特性。
1不可見性軟件是原理、規則、方法的體現,人們無法直接觸摸、觀察和測量軟件,程序和數據以二進第3章計算機軟件係統57製編碼的形式表示存儲在計算機中,人們能夠看見軟件的物理載體,但是軟件的價值不能依靠物理載體的成本來衡量。
2適應性一個成功的軟件不僅能夠滿足特定的應用需求,而且還能適應一類應用問題的需要。例如,微軟的文字處理軟件處理軟件WORD,能夠建立論文、簡曆等文檔,還能協助用戶完成備忘錄、網頁、郵件等工作,而且發布了多個語言版本,不僅處理英文、漢字等還可以進行韓文、日文、德文等多國文字的文檔撰寫。
3依附性軟件的開發和運行常受到計算機硬件的限製,對計算機硬件有著不同程度的依賴性。軟件不可以獨立運行,必須架構在特定的計算機硬件、計算機網絡上。大部分應用型軟件,如文字處理軟件,還要安裝在其他軟件也就是支撐軟件的環境中。沒有一定的硬件環境、軟件平台,軟件就有可能無法正常運行,甚至根本不能運行。比如,Android的遊戲安裝包,就必須安裝在Android手機環境中,而在蘋果手機上根本安裝不了。
4無磨損性軟件的使用沒有硬件那樣的機械磨損和老化問題。由於軟件是邏輯的而不是物理的,所以軟件不會磨損和老化,一個久經考驗的優質軟件可以長期使用下去。很多計算機用戶在選擇新機型時,提出的一個重要的條件:原有的應用程序必須能在新機型的支撐環境下運行,即兼容性問題。
5易複製性軟件是被開發的或被設計的,它沒有明顯的製造過程,一旦開發成功,隻需複製即可。軟件是以二進製表示,以光、電、磁等形式進行存儲和傳輸,因而軟件可以很方便地、毫無失真地進行複製。因為軟件的易複製性,導致市場上的軟件盜版行為比比皆是。軟件開發商除了依法保護軟件外,還經常采用加密狗、設置安裝序列號等行為防止軟件盜版行為。
6複雜性軟件的開發和維護工作是十分複雜的過程,隨著信息技術的發展軟件的複雜性表現在規模越來越大,即總共的指令數或源程序行數越來越多,難度越來越大,程序的結構越來越龐大,智能度越來越高。
7不斷演化性軟件在投入使用後,由於功能需求、運行環境和操作方法等方麵都處於不斷的變化中,一種軟件在有更好的同類軟件開發出來之後,它就麵臨著被市場淘汰的命運。為了延長軟件的生存周期,軟件在投入使用後,軟件人員要不斷地進行修改、完善、擴充新的功能、使用新的環境,使得軟件版本不斷升級。在軟件的整個生存期中,一直處於維護狀態,軟件內部的邏輯關係複雜,軟件在維護過程中還可能產生新的錯誤,常見的軟件升級和打補丁,都是後期對軟件錯誤的修改以及功能的升級。
8脆弱性軟件產品比較脆弱,在安裝使用過程中會給計算機軟件係統帶了一定的安全性威脅。這是因為應用軟件、係統軟件或者通信協議、處理規程本身都存在著一定的設計上的缺陷或者安全漏洞,軟件產品也不是“剛性”的產品,在複製、信息傳遞、文件共享等過程中,很容易被修改和破壞,表現得很脆弱。
58新編大學計算機信息技術教程(第2版)314計算機軟件的分類根據計算機軟件的用途,可以將其分為兩大類,即係統軟件和應用軟件。
1係統軟件係統軟件是指控製和協調計算機及外部設備,支持應用軟件開發和運行的係統,是無需用戶幹預的各種程序的集合,主要功能是調度、監控和維護計算機係統;負責管理計算機係統中各種獨立的硬件,使得它們可以協調工作。各類操作係統、編譯器、數據庫管理、存儲器格式化、文件係統管理、用戶身份驗證、驅動管理、網絡連接等方麵的工具,都是係統類軟件。係統軟件的任務:一是更好地發揮計算機的效率;二是方便用戶使用計算機。
係統軟件是負責管理計算機係統中各種獨立的硬件,使得它們可以協調工作。係統軟件使得計算機使用者和其他軟件將計算機當作一個整體而不需要顧及到底層每一個硬件是如何工作的。一般來講,係統軟件具體包括以下四類:(1)操作係統。
(2)語言程序,如彙編程序、編譯程序、解釋程序。
(3)數據庫管理係統。
(4)各種服務性程序,如診斷程序、排錯程序等。
2應用軟件應用軟件(ApplicationSoftware)是和係統軟件相對應的,是為滿足用戶不同領域、不同問題的應用需求而提供的那部分軟件。它可以拓寬計算機係統的應用領域,放大硬件的功能。
開發者可以使用的各種程序設計語言,根據用戶的需求設計、編碼實現應用程序的集合,分為應用軟件包和用戶程序。應用軟件包是利用計算機解決某類問題而設計的程序的集合,供多用戶使用。
應用軟件往往都是針對用戶的需要,它可以是一個特定的程序,比如一個圖像瀏覽器;也可以是一組功能聯係緊密、可以互相協作的程序的集合,比如微軟的Office軟件套件;也可以是一個由眾多獨立程序組成的龐大的軟件係統,比如聯機事務處理、數據分析係統、決策支持信息係統等,主要有辦公自動化係統、電子商務交易平台、教務管理係統、人事檔案係統、工資管理係統、財務係統、股票交易分析平台、掛號係統、電子病曆、健康管理係統、火車購票係統、航空票務係統、研究生入學考試報名係統、超市管理係統、圖書管理係統等等。可以這麼說,隨著信息技術的發現,軟件應用係統無處不在,計算機的作用之所以如此強大,最根本的原因是計算機能夠運行各種各樣的程序,從而發揮強大的作用。
按照軟件的適用性、專業性、普遍性來分,應用軟件分為通用應用軟件、專業應用軟件。專業應用軟件又稱為行業應用軟件。
通用應用軟件、專業應用軟件都是相對的,隨著時代的發展,它們之間可以相互轉換。不得不說,所有得到廣泛使用的軟件,一般都具有如下的特點:(1)能替代現實世界中已有的其他同類工具軟件,使用起來方便、簡單、有效。
(2)能完成已有工具軟件很難甚至是完全完成不了的功能,擴展了人們的信息處理能力和效率。
如果按照軟件權益的處置來分類,應用軟件可分為商品軟件、共享軟件(shareware)和自由軟件(freeware)。
①商品軟件。通常除了受版權保護,還要受到軟件許可證保護的軟件,用戶需要付費才第3章計算機軟件係統59能得到使用權。
②共享軟件。是一種“買前免費試用”的具有版權的軟件,通常允許用戶試用一段時間,也允許用戶進行複製和不可修改性散發,但是過了試用期還想繼續使用,就得交一定的注冊費,稱為注冊用戶或者合法用戶。其實這是一種為了節約市場營銷費用的有效軟件推廣與促銷手段,通過試用獲取潛在的用戶,主要目的就是為了銷售軟件。
③自由軟件。理查德·斯塔爾曼(RichardStallman)於1984年創建了自由軟件基金會,啟動開發“類UNIX係統”的自由軟件工程GUN,擬定了公共軟件許可證,倡導自由軟件的非版權原則。自由軟件的基本原則:用戶可以共享自由軟件,允許拷貝,允許修改源代碼,允許銷售和自由傳播;但是軟件源代碼的任何修改都必須公開、共享,還必須允許此後的用戶進一步自由拷貝、傳播、修改。
32操作係統321操作係統概述操作係統(OperationSystem,簡稱OS)是計算機裸機與應用程序及用戶之間的橋梁(如圖32所示),管理計算機係統的全部硬件資源包括軟件資源及數據資源、控製程序運行、改善人機界麵、為其他應用軟件提供支持等,使計算機係統所有資源最大限度地發揮作用,為用戶提供方便的、有效的服務界麵。
圖32操作係統的地位操作係統通常是最靠近硬件的一層係統軟件,它把硬件裸機改造成為功能完善的一台虛擬機,使得計算機係統的使用和管理更加方便,計算機資源的利用效率更高,上層的應用程序可以獲得比硬件提供的功能更多的支持。
操作係統是一個大型的軟件係統,是一個龐大的管理控製程序,大致包括5個方麵的管理功能:進程與處理機管理、作業管理、存儲管理、設備管理、文件管理。
從程序員的角度看,操作係統可以將硬件細節與程序員隔離開來,即硬件對於程序員來說是透明的,是一種簡單的、高度抽象的設備驅動層。如果沒有操作係統,程序員在開發軟件的時候就必須陷入複雜的硬件實現細節,將大量的精力花費在這些重複的工作上,使得程序員無法集中精力放在程序設計工作中。
從用戶的角度看,操作係統用來管理複雜係統的各個部分,負責在相互競爭的程序之間有序地控製對CPU、內存及其他I/O接口設備的分配。比如說,假設在一台計算機上運行的4個程序,試圖同時在同一台打印機上輸出計算結果。如果頭幾行是程序1的輸出,下幾行是程60新編大學計算機信息技術教程(第2版)序2的輸出,然後又是程序3、程序4的輸出,那麼最終結果將是一團糟。在操作係統管理下,可以將每個程序要打印的輸出送到磁盤上的緩衝區,在一個程序打印結束後,將暫存在磁盤上的文件送到打印機輸出,這樣就可以避免這種混亂。從這個角度來看,操作係統是係統的資源管理者,用戶通過操作係統來管理整個計算機資源。
322操作係統的分類操作係統可按照不同方式進行分類。
1按操作係統管理的原理進行分類①批處理係統。批處理操作係統將作業組織成批並一次將該作業的所有描述信息和作業內容通過輸入設備提交給操作係統,並暫時存入外存,等待運行。當係統需要調入新的作業時,根據當時的運行情況和用戶要求,按某種調試原則,從外存中挑選一個或幾個作業裝入內存運行。
批處理係統可以分為簡單批處理係統和多道批處理係統。簡單批處理係統是指在主存儲器中隻存放一批程序或一個程序。多道批處理係統是指在主存中同時存放若幹道用戶作業,允許這些作業交替地在係統中運行,當CPU運行某個程序發生條件等待時,可以轉向執行另外的程序,使另一個作業在係統中運行。
②分時係統。分時係統是在多道批處理係統的基礎上發展起來的。在分時係統中,用戶通過計算機交互會話來聯機控製作業運行,一個分時係統可以帶幾十甚至上百個終端,每個用戶都可以在自己的終端上操作或控製作業的完成。從宏觀上看,多用戶同時工作,共享係統資源;從微觀上看,各進程按時間片輪流運行,提高了係統資源利用率。
③實時係統。實時係統指計算機對特定輸入做出快速反應,以控製發出實時信號的對象,即計算機及時響應外部事件的請求,在規定的短時間內完成該事件的處理,並控製所有實時設備和實時任務協調有致地運行。例如,導彈飛行控製、工業過程控製和各種訂票業務等場合,要求計算機係統對用戶的請求立即做出響應,實時係統是專門適合這類環境的操作係統。
2按計算機的體係結構進行分類隨著計算機體係結構的發展,又出現了許多不同分類的新型操作係統,如個人操作係統、網絡操作係統、分布式操作係統和嵌入式操作係統。
①個人操作係統,是一種單用戶的操作係統,主要供個人使用,功能強、價格便宜,在幾乎任何地方都可安裝使用。它能滿足一般人操作、學習、遊戲等方麵的需求。個人操作係統的主要特點是:計算機在某一時間內為單個用戶服務;采用圖形界麵人機交互的工作方式,界麵友好、使用方便,用戶即使不具備專門知識,也能熟練地操縱係統。
②網絡操作係統,是使網絡上各計算機能方便而有效地共享網絡資源,為網絡用戶提供各種服務的軟件和有關規程(如協議)的集合。網絡操作係統提供網絡操作所需的最基本的核心功能,如網絡文件係統、內存管理及進程任務調度等。網絡服務程序運行在網絡操作係統軟件之上,各計算機通過通信軟件使網絡硬件與其他計算機建立通信。通信軟件還提供所支持的通信協議,以便通過網絡發送請求或響應信息。
③分布式操作係統,隨著程序設計環境、人機接口和軟件工程等方麵的不斷發展,出現了由高速局域網互聯的若幹計算機組成的分布式計算機係統,需要配置相應的操作係統,即分布式操作係統。分布式計算機係統與計算機網絡相似,它通過通信網絡將獨立功能的數據處理係統或計算機係統互聯起來,可實現信息交換、資源共享和協作完成任務等,可以獲得極高的第3章計算機軟件係統61運算能力及廣泛的數據共享。
④嵌入式操作係統,是嵌入式係統的軟件組成部分。目前嵌入式係統已經滲透到人們生活中的每個角落,如MP3、智能手機、數控家電、微型工業控製計算機等。嵌入式係統的構架可以分成4個部分:處理器、存儲器、輸入/輸出(I/O)和軟件(多數嵌入式設備的應用軟件和操作係統都是緊密結合的)。
3按用戶數量進行分類按用戶數目的多少,可分為單用戶和多用戶操作係統。單用戶操作係統一次隻能支持一個用戶進程的運行,MSDOS是一個典型的單用戶操作係統。多用戶操作可以支持多個用戶同時登錄,允許運行多個用戶的進程,比如Windows係列的操作係統,它本身就是個多用戶操作係統,不管是在本地還是遠程都允許多個用戶同時處在登錄狀態。它向用戶提供聯機交互式的工作環境。
323操作係統的作用在係統軟件中,操作係統是負責直接控製和管理硬件的係統軟件,也是一係列係統軟件的集合。主要有三方麵的重要作用。
1管理和分配計算機中的軟硬件資源計算機資源可分為兩大類:硬件資源和軟件資源。硬件資源指組成計算機的硬件設備,軟件資源主要指存儲於計算機中的各種數據和程序。當多個軟件同時運行時,係統的硬件資源和軟件資源都由操作係統根據用戶需求按一定的策略分配和調度。從硬件和軟件資源管理的角度,操作係統的主要功能有進程與處理機管理、存儲管理、設備管理、文件管理、作業管理。
2提供友好的人機界麵人機界麵又稱用戶界麵、用戶接口或人機接口,通過鍵盤、鼠標、顯示器、操縱杆、攝像頭等及其軟件應用程序實現用戶與計算機間的交互。操作係統向用戶提供了一種圖形用戶界麵(GraphicalUserInterface,GUI,又稱圖形用戶接口),與早期計算機使用的命令行界麵相比,圖形界麵對於用戶來說在視覺上更易於接受。然而這界麵若要通過在顯示屏的特定位置,以“各種美觀而不單調的視覺消息”提示用戶“狀態的改變”,勢必比以往的簡單消息呈現需要更多的計算能力。
3提供高效的應用程序開發和運行平台人們常把沒有安裝任何軟件的計算機稱為裸機,在裸機上開發和運行應用程序,難度大、效率低、難以實現。安裝了操作係統後,實際上呈現給應用程序和用戶麵前的是一台“操作係統虛擬機”(如圖33所示)。操作係統屏蔽了幾乎所有的物理設備的技術細節,以規範的、高效的係統調用、庫函數方式向應用程序提供服務和支持,從而為應用程序開發、應用軟件的運行提交了一圖33操作係統與計算機軟件、硬件間的關係個高效率的平台。
有了操作係統,計算機才能成為一個高效、可靠、通用的信息處理係統。除了上述三個主要作用外,操作係統還具有幫助功能、處理軟硬件異常、係統安全等功能。
62新編大學計算機信息技術教程(第2版)324操作係統的管理功能操作係統承擔著計算機軟件、計算機硬件係統資源的調度和分配功能,以避免衝突,使得暴增的應用程序能夠正常有序地運行。從硬件和軟件資源管理的角度來看,操作係統的主要管理功能包括進程與處理機管理、存儲管理、設備管理、文件管理、作業管理。
①操作係統的進程與處理器管理功能根據一定的策略將處理器交替地分配給係統內等待運行的程序。
②操作係統的存儲管理功能是管理內存資源,主要實現內存的分配與回收、存儲保護以及內存擴充。
③操作係統的設備管理功能負責分配和回收外部設備以及控製外部設備按用戶程序的要求進行操作。
④操作係統的文件管理功能向用戶提供創建文件、撤銷文件、讀寫文件、打開和關閉文件等管理。
⑤操作係統的作業管理功能主要有用戶任務調度、界麵管理、人機交互、圖形界麵、語音控製和虛擬現實等。
325操作係統的啟動計算機的存儲器分為大容量存儲器(通常為硬盤)和主存儲器(即內存),操作係統(如Windows、UNIX、Linux、MacOS)安裝在大容量存儲器上,而主存儲器又分為兩部分:能夠永久保存數據的ROM(ReadOnlyMemory)和易失性存儲器RAM(RandomAccessMemory,隨機存取存儲器,即在關機後數據全部丟失)。在ROM部分中,有兩個程序:引導(bootstrapping,boot)和基本輸入輸出係統(BasicInputOutputSystem,BIOS)。
在計算機開機時,boot被自動執行,指引CPU把操作係統從大容量存儲器中傳送到主存儲器的易失區。一旦操作係統放到主存儲器中,boot要求CPU執行一條轉移指令,轉到這個存儲區域,操作係統接管並且開始控製整個機器的活動。在操作係統變成可用之前,boot執行BIOS,完成基本的輸入輸出活動。
操作係統的啟動過程簡述如下:①開機執行BIOS(基本輸入輸出係統)引導程序進行係統自檢,標識和配置所有的即插即用設備,並配置DMA通道;②完成加電自檢,測試內存,端口,鍵盤,視頻適配器,磁盤驅動器等基本設備,以及CDROM驅動器;③對引導驅動器可引導分區定位,在CMOS(ComplementaryMetalOxideSemiconductor,互補金屬氧化物半導體)中,可以自行設置引導順序,一般順序是:軟驅→磁盤→光驅;④加載主引導記錄以及引導驅動器的分區表,執行主引導記錄MBR;⑤主引導記錄在硬盤上找到可引導分區,將其分區引導記錄裝入內存,並將控製權交給分區引導記錄,由分區引導記錄定位根目錄,然後裝入操作係統。
上述是計算機在加電後的啟動過程,也叫冷啟動。對應冷啟動,還有一種啟動為熱啟動,那麼對於熱啟動,其過程又是怎樣的呢?其實熱啟動與加電冷啟動的主要區別就是省去在自檢過程中對存儲器的檢測。
第3章計算機軟件係統63326常用的操作係統1DOS操作係統磁盤操作係統(DiskOperationSystem,DOS),是一種單用戶單任務的計算機操作係統,通常存放在磁盤上,主要功能是針對磁盤存儲的文件進行管理。DOS采用字符界麵,必須通過鍵盤輸入各種命令來操作計算機。也就是說計算機是一個一個字母在黑色的電腦屏幕上打上命令,再回車把命令輸送給電腦,就連畫圖也是這麼做的。後來人們編程通過畫圖做出菜單,通過菜單給計算機發命令就簡單多了。
2Windows操作係統MicrosoftWindows,是美國微軟公司研發的一套操作係統,它問世於1985年,起初僅僅是MicrosofttDOS模擬環境、MSDOS之下的桌麵環境,後續版本逐漸發展成為個人電腦和服務器用戶設計的操作係統,並最終獲得世界個人電腦操作係統軟件的壟斷地位。由於微軟不斷地更新升級係統版本,使得Windows操作係統不但易用,而且慢慢地成為人們最喜愛的操作係統。係統可以在幾種不同類型的平台上運行,如個人電腦、服務器和嵌入式係統等,其中在個人電腦的領域應用最為普遍。
Windows采用圖形化模式GUI,比起DOS需要鍵入指令使用的方式更為人性化。隨著電腦硬件和軟件的不斷升級,微軟的Windows也在不斷升級,從架構的16位、32位再到64位,甚至128位,微軟一直在致力於Windows操作係統的開發和完善,係統版本不斷持續更新升級。
Windows是目前世界上用戶最多且兼容性最強的彩色界麵操作係統,支持鍵鼠功能。其默認的平台是由任務欄和桌麵圖標組成的:任務欄由顯示正在運行的程序、“開始”菜單、時間、快速啟動欄、輸入法以及右下角托盤圖標組成;而桌麵圖標是進入程序的途徑,默認係統圖標有“我的電腦”“我的文檔”“回收站”等,另外還會顯示出係統自帶的“IE瀏覽器”圖標。
3Unix操作係統Unix操作係統於1969年在貝爾實驗室誕生,是一個強大的多用戶、多任務的操作係統,支持多種處理器架構;是一個交互式分時操作係統;Unix係統可以在微型機、工作站、大型機及巨型機上安裝運行;由於Unix係統穩定可靠,因此在金融、保險等行業得到廣泛應用。
Unix操作係統具有以下特性:(1)Unix係統是一個多用戶,多任務的分時操作係統。
(2)Unix的係統結構可分為三部分:操作係統內核(Unix係統核心管理和控製中心,在係統啟動或常駐內存)、係統調用(供程序開發者開發應用程序時調用係統組件,包括進程管理,文件管理,設備狀態等)、應用程序(包括各種開發工具、編譯器、網絡通信處理程序等,所有應用程序都在Shell的管理和控製下為用戶服務)。
(3)Unix係統大部分是由C語言編寫的,這使得係統易讀、易修改、易移植。
(4)Unix提供了豐富的、精心挑選的係統調用,整個係統的實現十分緊湊,簡潔。
(5)Unix提供了功能強大的可編程的Shell語言(外殼語言)作為用戶界麵,具有簡潔、高效的特點。
(6)Unix係統采用樹狀目錄結構,具有良好的安全性,保密性和可維護性。
(7)Unix係統采用進程對換(Swapping)的內存管理機製和請求調頁的存儲方式,實現了虛擬內存管理,大大提高了內存的使用效率。
64新編大學計算機信息技術教程(第2版)(8)Unix係統提供多種通信機製,如管道通信、軟中斷通信、消息通信、共享存儲器通信,信號燈通信。
4Linux操作係統Linux操作係統是一套免費使用和自由傳播的類Unix操作係統,是一個基於POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作係統。它能運行主要的Unix工具軟件、應用程序和網絡協議,支持32位和64位硬件。Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩定的多用戶網絡操作係統。
Linux操作係統誕生於1991年10月5日,存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux操作係統可安裝在各種計算機硬件設備中,比如手機、平板電腦、路由器、視頻遊戲控製台、台式計算機、大型機和超級計算機。
Linux操作係統具有完全免費、兼容性強、多用戶、多任務、界麵友好、支持多種平台等優點。
5手機操作係統手機也像電腦一樣,也有自己的操作係統,沒有操作係統的智能手機就是一塊“廢鐵”。智能手機操作係統是一種運算能力及功能比傳統功能手機更強的操作係統。因為可以像個人電腦一樣安裝第三方軟件,這樣智能手機就能不斷煥發新生的、豐富的功能。智能手機能夠顯示與個人電腦所顯示出來一致的正常網頁,它具有獨立的操作係統以及良好的用戶界麵,擁有很強的應用擴展性、能方便隨意地安裝和刪除應用程序。
目前,在智能手機市場上,中國市場仍以個人信息管理型手機為主,隨著更多廠商的加入,整體市場的競爭已經開始呈現出分散化的態勢。從市場容量、競爭狀態和應用狀況上來看,整個市場仍處於啟動階段。目前應用在手機上的操作係統主要有Android(安卓)、IOS(蘋果)、WindowsPhone(微軟)、Symbian(塞班)、BlackBerryOS(黑莓)等。目前市場上比較主流的智能手機操作係統有Google、Android和蘋果的IOS等。
Android是Google公司開發的基於Linux平台的開源手機操作係統,是穀歌企業戰略的重要組成部分。Google公司通過與運營商、設備製造商、開發商和其他有關各方結成深層次的合作夥伴關係,希望借助建立標準化、開放式的移動電話軟件平台,在移動產業內形成一個開放式的生態係統。
IOS是由蘋果公司開發的移動操作係統。蘋果公司最早於2007年1月9日的Macworld大會上公布這個係統,最初是設計給iPhone使用的,後來陸續套用到iPodtouch、iPad以及AppleTV等產品上。IOS與蘋果的MacOSX操作係統一樣,屬於類Unix的商業操作係統。
原本這個係統名為iPhoneOS,因為iPad、iPhone、iPodtouch都使用iPhoneOS,所以2010年WWDC大會上宣布改名為IOS。
33程序設計語言及其處理係統331程序設計語言概述人們使用自然語言進行日常溝通,要與計算機進行通信就必須采用程序設計語言。在計算機剛剛問世的時候,程序員必須手動控製計算機,後來人們想到利用程序設計語言來編寫程序以及軟件來控製計算機。
程序設計語言就是一種人能方便地使用且計算機也能理解的語言。程序員使用程序語言第3章計算機軟件係統65來編製程序,精確地表達需要計算機完成的任務,計算機就能按照程序的規定去完成任務。
程序設計語言填補了人與計算機交流的鴻溝(如圖34所示)。程序設計語言已經經曆了60年左右的發展,其技術和方法日臻成熟。
圖34程序設計語言在人———機之間的地位程序設計語言的基礎是一組記號和一組規則。根據規則由記號構成的記號串的總體就是語言。在程序設計語言中,這些記號串就是程序。程序設計語言有三個方麵的因素:語法、語義和語用。
(1)語法表示程序的結構或形式。
表示構成語言的各個記號之間的組合規律,但不涉及這些記號的特定含義,也不涉及使用者。
(2)語義表示程序的含義。
表示按照各種方法所表示的各個記號的特定含義,但不涉及使用者。
(3)語用表示程序與使用者的關係。
有許多用於特殊用途的語言,隻在特殊情況下使用。例如,PHP專門用來顯示網頁;Perl更適合文本處理;C語言被廣泛用於操作係統和編譯器(所謂的係統編程)的開發。
高級程序設計語言(也稱高級語言)的出現使得計算機程序設計語言不再過度地依賴某種特定的機器或環境。這是因為高級語言在不同的平台上會被編譯成不同的機器語言,而不是直接被機器執行。最早出現的編程語言之一Fortran的一個主要目標,就是實現平台獨立。
程序設計語言具有心理、工程及技術等特性。
①心理特性:歧義性、簡潔性、局部性、順序性、傳統性。
66新編大學計算機信息技術教程(第2版)②工程特性:可移植性,開發工具的可利用性,軟件的可重用性、可維護性。
③技術特性:支持結構化構造的語言有利於減少程序環路的複雜性,使程序易測試、易維護。
332程序設計語言的分類自20世紀60年代以來,世界上公布的程序設計語言已有上千種之多,但是隻有很小一部分得到了廣泛的應用。
1從發展曆程來看,程序設計語言可以分為四代(1)第一代語言———機器語言計算機的硬件特性使得其隻能存儲和執行由“0”和“1”表示的二進製信息,將一定位數的0和1組成各種排列組合,通過線路變成電信號,讓計算機執行各種不同的操作。這些按照一定規則編寫的二進製代碼能被計算機直接識別和執行,稱為機器語言,它是能被硬件直接識別和執行的計算機語言。
機器語言是由二進製0、1代碼指令構成,不同的CPU具有不同的指令係統。機器語言程序難編寫、難修改、難維護,需要用戶直接對存儲空間進行分配,編程效率極低。目前,這種語言已經漸漸被淘汰。
(2)第二代語言———彙編語言彙編語言指令是機器指令的符號化,與機器指令存在著直接的對應關係,所以彙編語言同樣存在著難學難用、容易出錯、維護困難等缺點。但是彙編語言也有優點:可直接訪問係統接口,彙編程序翻譯成的機器語言程序的效率高。
彙編語言亦稱為符號語言,機器不能直接識別使用彙編語言編寫的程序,而是要由一種程序將彙編語言翻譯成機器語言,這種起翻譯作用的程序叫彙編程序,彙編程序是係統軟件中的語言處理係統軟件。彙編程序把彙編語言翻譯成機器語言的過程稱為彙編。
從軟件工程角度來看,隻有在高級語言不能滿足設計要求,或不具備支持某種特定功能的技術性能時,彙編語言才被使用。
(3)第三代語言———高級語言高級語言是麵向用戶的、基本上獨立於計算機種類和結構的語言。其最大的優點是:形式上接近於算術語言和自然語言,概念上接近於人們通常使用的概念。高級語言的一個命令可以代替幾條、幾十條甚至幾百條彙編語言的指令。因此,高級語言易學易用,通用性強,應用廣泛。
(4)第四代語言———非過程化語言,簡稱4GL4GL是非過程化語言,編碼時隻需說明“做什麼”,不需描述算法細節。
數據庫查詢和應用程序生成器是4GL的兩個典型應用。用戶可以用數據庫查詢語言(SQL)對數據庫中的信息進行複雜的操作。用戶隻需將要查找的內容在什麼地方、根據什麼條件進行查找等信息告訴SQL,SQL將自動完成查找過程。應用程序生成器則是根據用戶的需求“自動生成”滿足需求的高級語言程序。
真正的第四代程序設計語言應該說還沒有出現。目前,所謂的第四代語言大多是指基於某種語言環境上具有4GL特征的軟件工具產品。
2從語言的執行方式劃分:解釋語言和編譯語言(1)解釋語言:執行方式類似於我們日常生活中的“同聲翻譯”,應用程序源代碼一邊由相應語言的解釋器“翻譯”成目標代碼(機器語言),一邊執行,效率比較低,而且不能生成可獨立第3章計算機軟件係統67執行的可執行文件,應用程序不能脫離其解釋器,但這種方式比較靈活,可以動態地調整、修改應用程序。例如,Basic腳本語言也是一種解釋性的語言,還有Vbscript、Javascript、Perl、Python等。
(2)編譯語言:編譯是指在應用源程序執行之前,就將程序源代碼“翻譯”成目標代碼,以二進製的機器碼表示,因此其目標程序可以脫離其語言環境獨立執行,使用比較方便、效率較高(如圖35所示)。但應用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目標文件(.OBJ)才能執行,隻有目標文件而沒有源代碼,修改很不方便。現在大多數的編程語言都是編譯型的,例如C、C++、Delphi等。
(3)Java很特殊,Java程序也需要編譯,但是沒有直接編譯成為機器語言,而是編譯成為偽碼,然後用解釋方執行字節碼。
由如C、Java、Fortran、BASIC等高級語言編寫的程序稱為源程序,符合一定的語法,必須先由一個叫作編譯器或者是解釋器的軟件將其翻譯成特定的機器語言程序之後,才能在計算機上運行。
圖35源程序編譯、連接過程編譯(Compiler)主要有初始階段、源程序的分析、目標過程綜合三個過程構成(如圖36所示)。
①初始階段:建立數據結構,為分析和綜合做準備。
②源程序的分析:詞法分析、語法分析和語義分析。
②目標程序的綜合:存儲分配、代碼優化、代碼生成。
圖36源程序的編譯過程解釋器讀取事件激發的相應代碼,並逐條將其轉換為機器代碼,然後執行;編譯器讀取程序的全部代碼,將其轉換為機器代碼,並保存在exe類型的可執行文件中,以便以後脫離開發環境運行。
3從客觀係統的描述分類:程序設計語言分為麵向過程語言和麵向對象語言麵向過程和麵向對象,這是兩種思想。麵向過程語言是以“數據結構+算法”程序設計範式構成的程序設計語言,主要有C、Pascal等語言是麵向過程的編程語言,開發過程通常會大量定義函數和結構體。
68新編大學計算機信息技術教程(第2版)麵向對象語言(ObjectOrientedMethod)是以“對象+消息”程序設計範式構成的程序設計語言,是一種把麵向對象的思想應用於軟件開發過程中,指導開發活動的係統方法,簡稱OO(ObjectOriented)方法。就是基於對象概念,以對象為中心,以類和繼承為構造機製來認識、理解、刻畫客觀世界和設計、構建相應的軟件係統。比較流行的麵向對象語言有VisualBasic、Java、C++等。
總的說來,結構化語言以業務的處理流程來思考,重在每個步驟功能問題;麵向對象語言以對象的屬性和行為來思考,重在抽象和對象間的協作問題。
數據庫結構化查詢語言(StructuredQueryLanguage)是為關係數據庫管理係統開發的一種查詢語言,隨著信息技術的發展SQL語言得到了廣泛的應用。SQL與其他高級語言的選擇並不衝突,反而是緊密結合的。應用軟件無論用到哪種高級編程語言來開發,如果軟件中使用數據庫來存儲數據,那麼SQL的運用是必不可少的。
333程序設計語言的組成程序設計語言的基礎是一組記號和一組規則。根據規則由記號構成的記號串的總體就是語言。程序設計語言有三個方麵的因素,即語法、語義和語用。語法表示程序的結構或形式,亦表示構成語言的各個記號之間的組合規律,但不涉及這些記號的特定含義,也不涉及使用者。語義表示程序的含義,亦即表示按照各種方法所表示的各個記號的特定含義,但不涉及使用者。語用表示程序與使用者的關係。
程序設計語言的種類千差萬別,一般說來其基本成分包括數據成分、運算成分、控製成分、傳輸成分。
1數據成分程序語言的數據成分指的是一種程序語言的數據類型。數據對象總是對應著應用係統中某些有意義的東西,數據表示指定了程序中值的組織形式。數據類型用於代表數據對象,同時還可用於檢查表達始終對運算的應用是否正確。
數據是程序操作的對象,具有存儲類別、類型、名稱、作用域和生存期等屬性,使用時要為他分配內存空間。數據名稱由用戶通過標識符命名,標識符是由字母、數字和稱為下劃線的特殊符號“_”組成的標記;類型說明數據占用內存的大小和存放形式;存儲類別說明數據在內存中的位置和生存期;作用域則說明可以使用數據的代碼範圍;生存期說明數據占用內存的時間範圍。從不同角度可將數據進行不同的劃分。
數據類型的分類如下:①按程序運行過程中數據的值能否改變,可分為常量(整型常量、實型常量、字符常量、符號常量)和變量。
②按數據的作用域範圍可分為全局量和局部量。
③按數據組織形式的不同可分為基本類型(整型、實型、字符型、枚舉型)、構造類型(數組、結構、公用)、指針類型和空類型。
2運算成分用以描述程序中所包含的運算。大多數程序設計語言的基本運算可分為算術運算、關係運算、邏輯運算。為了確保運算結果的唯一性,運算符號規定優先級和結合性。
以C語言為例,主要的運算符有以下幾類:算術運算符:+-/第3章計算機軟件係統69關係運算符:><==!=>=<=邏輯運算符:!&&||位運算符:<<>>~|^&賦值運算符:=及擴展賦值運算符條件運算符:?:指針運算符:和&求字節數運算符:sizeof強製類型轉換運算符:(類型)分量運算符:.→下標運算符:[]其他如函數調用運算符:()3控製成分用以表達程序中的控製構造;控製成分指明語言允許表達的控製結構,程序員使用控製成分來構造程序中的控製邏輯。理論上已經表明,可計算問題的程序都可以用順序、選擇和循環這三種控製結構來描述(如圖37所示)。
圖37程序的三種控製結構4傳輸成分用以表達程序中數據的傳輸。完成變量與變量之間、對象和對象之間數據傳遞。
334算法人們常說,程序=算法+數據結構,算法是計算機程序的靈魂,數據結構是靈魂的載體。
算法和數據結構是程序設計的兩個重要的概念。
算法是在有限步驟內求解某一問題所使用的一組定義明確的規則。通俗地說,就是計算機解題的過程。一般地,當算法在處理信息時,數據會從輸入設備讀取,寫入輸出設備,可保存起來以供以後使用。
下麵舉一個算法的例子,問題是從一串隨機數列找到最大的數。如果將數列中的每一個數字看成是一顆豆子的大小,則可以將該算法形象地稱為“撿豆子”。
首先將第一顆豆子(數列中的第一個數字)放入口袋中。從第二顆豆子開始檢查,直到最後一顆豆子。如果正在檢查的豆子比口袋中的還大,則將它撿起放入口袋中,同時丟掉原先的豆子。最後口袋中的豆子就是所有的豆子中最大的一顆。
70新編大學計算機信息技術教程(第2版)以上是使用自然語言描述算法,還可以使用流程圖、偽語言、類語言等來描述算法。
1算法的重要特征①有窮性。一個算法必須保證執行有限步驟之後結束,且每一步驟都在有窮時間內完成。
②確切性。算法的每一步驟必須有確切的定義,不存在二義性,且算法隻有一個入口和一個出口。
③可行性。原則上算法能夠精確地運行,即在計算機的能力範圍之內,且在有限的時間內能夠完成。
④輸出項。一個算法有一個或多個輸出,以反映對輸入數據加工後的結果,沒有輸出的算法是毫無意義的。
⑤輸入項。一個算法有零個或多個輸入,以刻畫運算對象的初始情況。例如,在歐幾裏得算法中,有兩個輸入,即m和n。
2算法的評價標準①正確性。算法應滿足具體問題的需求。對合法範圍內任何輸入數據都能產生滿足規格要求的結果,對邊界數值、不常用的數據都能正確返回結果。
②可讀性。算法應該有利於閱讀和交流,有助於對算法的理解,有助於對算法的調試和修改。
③高效率與低存儲量。算法應盡量使處理速度快、存儲容量小。時間和空間是矛盾的,實際問題的求解往往是求得時間和空間的統一、折中。
④容錯性。是指一個算法對不合理數據輸入的反應能力和處理能力,又稱為健壯性。
常常以時間複雜度和空間複雜度來評價算法。時間複雜度是指在計算機上運行該算法所花費的時間。空間複雜度是指算法在計算機上運行所占用的存儲空間。
3算法的分類算法可大致分為基本算法、數據結構的算法、數論與代數算法、計算幾何的算法、圖論的算法、動態規劃以及數值分析、加密算法、排序算法、檢索算法、隨機化算法、並行算法。算法可以分為三類:①有限的、確定性算法。這類算法在有限的一段時間內終止。它們可能要花很長時間來執行指定的任務,但仍將在一定的時間內終止。這類算法得出的結果常取決於輸入值。
②有限的、非確定算法。這類算法在有限的時間內終止,然而對於一個(或一些)給定的數值,算法的結果並不是唯一的或確定的。
③無限的算法。是指那些由於沒有定義終止定義條件,或定義的條件無法由輸入的數據滿足而不終止運行的算法。通常,無限算法的產生是由於未能確定的定義終止條件。
335數據結構程序=算法+數據結構,算法是計算機程序的靈魂,數據結構是靈魂的載體。
數據結構是計算機存儲、組織數據的方式。數據結構是指相互之間存在一種或多種特定關係的數據元素的集合。通常情況下,精心選擇的數據結構可以帶來更高的運行或者存儲效率。數據結構往往同高效的檢索算法和索引技術有關。
計算機解決一個具體問題時,首先要從具體問題中抽象出一個適當的數學模型,然後設計一個解此數學模型的算法,最後編寫程序、進行測試、調整直至得到最終解答。
第3章計算機軟件係統71尋求數學模型的實質是分析問題,從中提取操作的對象,並找出這些操作對象之間含有的關係,然後用數學的語言加以描述。
計算機算法與數據結構密切相關,算法無不依附於具體的數據結構,數據結構直接關係到算法的選擇和效率。運算是由計算機來完成的,這就要設計相應的插入、刪除和修改的算法。
也就是說,數據結構還需要給出每種結構類型所定義的各種運算的算法。
數據是對客觀事物的符號表示,在計算機科學中是指所有能輸入到計算機中並由計算機程序處理的符號的總稱。
數據結構有數據的邏輯結構和數據的物理結構之分。
1數據的邏輯結構數據的邏輯結構是指反映數據元素之間的邏輯關係的數據結構,其中的邏輯關係是指數據元素之間的前後件關係,而與它們在計算機中的存儲位置無關。
(1)數組(Array)。在程序設計中,為了處理方便,把具有相同類型的若幹變量按有序的形式組織起來。這些按序排列的同類數據元素的集合稱為數組。
(2)棧(Stack)。是隻能在某一端插入和刪除的特殊線性表。它按照後進先出的原則存儲數據,先進入的數據被壓入棧底,最後的數據堆在棧頂,需要讀數據的時候從棧頂開始彈出數據。
(3)隊列(Queue)。一種特殊的線性表,它隻允許在表的前端進行刪除操作,而在表的後端進行插入操作。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。隊列中沒有元素時,稱為空隊列。
(4)鏈表(LinkedList)。是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。鏈表由一係列結點(鏈表中每一個元素稱為結點)組成,結點可以在運行時動態生成。每個結點包括兩個部分:一個是存儲數據元素的數據域;另一個是存儲下一個結點地址的指針域。
(5)樹(Tree)。是由n(n>=1)個有限節點組成一個具有層次關係的集合。把它叫作“樹”是因為它看起來像一棵倒掛的樹,也就是說它是根朝上,而葉朝下的。
(6)圖(Graph)。是由結點的有窮集合V和邊的集合E組成的。其中,為了與樹結構加以區別,在圖結構中常常將結點稱為頂點,邊是頂點的有序偶對,若兩個頂點之間存在一條邊,就表示這兩個頂點具有相鄰關係。
2數據的物理結構數據的物理結構是指數據的邏輯結構在計算機存儲空間的存放形式。
數據的物理結構是數據結構在計算機中的表示(又稱映像),它包括數據元素的機內表示和關係的機內表示。由於具體實現的方法有順序、鏈接、索引、散列等多種,所以一種數據結構可表示成一種或多種存儲結構。
336常用的程序設計語言程序設計語言的種類有很多。1956年出現的Fortran語言標誌著高級語言的到來。下麵介紹幾種常用的程序設計語言。
1彙編語言彙編語言是麵向機器的程序設計語言。彙編語言比機器語言易於讀寫,易於調試和修改,同時也具有機器語言的執行速度快、占內存空間少等優點,但在編寫複雜程序時具有明顯的局72新編大學計算機信息技術教程(第2版)限性,彙編語言依賴於具體的機型,不能通用,也不能在不同機型之間移植。
彙編語言至今仍然是從事係統軟件開發的程序員必須了解的語言,在某些行業與領域,彙編語言是必不可少的。在熟練的程序員手裏,使用彙編語言編寫的程序,其運行效率與性能比用其他語言寫的程序更加優秀,但是代價是需要更長的時間來優化。
2BASIC和VB語言BASIC是BeginnersAllPurposeSymbolicInstructionCode的縮寫,其中文含義為“初學者通用符號指令代碼”,其特點是簡單易學。
VB是VisualBasic的簡稱,是微軟公司推出的一種Windows應用程序開發工具。Visual指的是采用可視化的開發圖形用戶界麵(GUI)的方法,一般不需要編寫大量代碼去描述界麵元素的外觀和位置,而隻要把需要的控件拖放到屏幕上的相應位置即可;Basic指的是BASIC語言,因為VB是在原有的BASIC語言的基礎上發展起來的,至今仍包含數百條語句、函數及關鍵詞。專業人員可以用VB實現其他任何Windows編程語言的功能,而初學者隻要掌握幾個關鍵詞就可以建立實用的應用程序。
3C語言和C++語言C語言是CombinedLanguage(組合語言)的簡稱。它既具有高級語言的特點,又具有彙編語言的特點。它可以作為工作係統設計語言,編寫係統應用程序,也可以作為應用程序設計語言,編寫不依賴於計算機硬件的應用程序。因此,它的應用範圍廣泛,不僅僅是在軟件開發上,而且很多科研項目都需要用到C語言。C語言的具體應用,如單片機以及嵌入式係統的開發。
C++語言是一種優秀的麵向對象程序設計語言,在C語言的基礎上發展而來。C++以其獨特的語言機製在計算機科學的各個領域中得到了廣泛的應用。麵向對象的設計思想是在原來結構化程序設計方法基礎上的一個質的飛躍,C++完美地體現了麵向對象的各種特性。
4Java語言Java語言是由SUN公司發布的一種麵向對象的、用於網絡環境的程序設計語言。其基本特征是:適用於網絡分布環境,具有一定的平台獨立性、安全性和穩定性。Java語言受到各種應用領域的重視,取得快速的發展,在因特網上已推出了用Java語言編寫的很多應用程序。
Java編程語言的風格十分接近C、C++語言。Java是一個純的麵向對象的程序設計語言,它繼承了C++語言麵向對象技術的核心,Java舍棄了C++語言中容易引起錯誤的指針(以引用取代)、運算符重載(operatoroverloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用於回收不再被引用的對象所占據的內存空間,使得程序員無需再為內存管理而擔憂。
5腳本語言腳本語言是為了縮短傳統的編寫→編譯→鏈接→運行(edit→compile→link→run)過程而創建的計算機編程語言。它的命名起源於一個腳本“screenplay”,每次運行都會使對話框逐字重複。早期的腳本語言經常被稱為批量處理語言或工作控製語言。
一個腳本通常是解釋執行而非編譯。腳本語言通常都有簡單、易學、易用的特征,目的就是希望能讓程序員快速完成程序的編寫工作。而宏語言則可視為腳本語言的分支,兩者也有實質上的相同之處,特點如下:第3章計算機軟件係統73①腳本語言(JavaScript,VBscript等)介於HTML和C、C++、Java、C#等編程語言之間。HTML通常用於格式化和鏈接文本。而編程語言通常用於向機器發出一係列複雜的指令。
②腳本語言與編程語言也有很多相似地方,其函數與編程語言比較相像一些,其也涉及到變量,與編程語言之間最大的區別是編程語言的語法和規則更為嚴格和複雜一些.③腳本語言一般都是以文本形式存在,類似於一種命令。與程序代碼的關係,腳本也是一種語言,其同樣由程序代碼組成。
④相對於編譯型計算機編程語言,用腳本語言開發的程序在執行時,由其所對應的解釋器(或稱虛擬機)解釋執行。例如,Python、vbscript、javascript、installshieldscript、ActionScript等等,腳本語言不需要編譯,可以直接由解釋器來負責解釋。
337程序設計語言的選擇程序設計語言特點不同,適用領域也不同,以下從不同角度介紹選擇的方法。
1項目的應用領域(1)科學工程計算。需要大量的標準庫函數,以便處理複雜的數值計算,可供選用的語言有FORTRAN語言、C語言等。
(2)數據處理與數據庫應用。可選用SQL語言處理數據層,4GL也就是第4代語言進行業務處理、人機界麵等。
(3)實時處理。實時處理軟件一般對性能的要求很高,可選用的語言有彙編語言、Ada語言、C語言等。
(4)係統軟件。如果編寫操作係統、編譯係統等係統軟件時,可選用彙編語言、C語言、Pascal語言和Ada語言。
(5)人工智能。如果要完成知識庫係統、專家係統、決策支持係統、推理工程、語言識別、模式識別等人工智能領域內的係統,應選擇Prolog、Lisp語言。
2軟件開發的方法有時編程語言的選擇依賴於開發的方法,如果要用快速原型模型來開發,要求能快速實現原型,因此宜采用4GL。如果是麵向對象方法,宜采用麵向對象的語言編程。
3軟件執行的環境良好的編程環境不但能有效提高軟件生產率,同時能減少錯誤,有效提高軟件質量。不同的軟件環境,需要采用不同的程序設計語言進行應用軟件的開發,隻有這樣,才能保證軟件的兼容性、效率性,減少軟件開發周期。
4算法和數據結構的複雜性科學計算、實時處理和人工智能領域中的問題算法很複雜,而數據處理、數據庫應用、係統軟件領域的問題,數據結構比較複雜,因此選擇語言時可考慮是否有完成複雜算法的能力,或者有構造複雜數據結構的能力。
5軟件開發人員的知識編寫語言的選擇與軟件開發人員的知識水平及心理因素有關,開發人員應仔細地分析軟件項目的類型,敢於學習新知識,掌握新技術。
34常用的應用軟件應用軟件是為完成某一特定任務或特殊目的而開發的軟件。它可以是一個特定的程序,74新編大學計算機信息技術教程(第2版)也可以是一組緊密協作的軟件集合體,或由眾多獨立軟件組成的龐大軟件係統。應用軟件是基於係統軟件工作的,因此不麵向最基礎的硬件,隻根據係統軟件提供的各種資源進行運作。
應用軟件包括專用軟件和通用軟件兩大類。專用軟件是指專門為某一個指定的任務設計或開發的軟件,如專門求某個年級平均分數的軟件等,通用軟件是指可完成一係列相關任務的軟件,如處理文本、製作網頁的各種軟件等。常用的應用軟件見表31。
表31常用的應用軟件彙總表類別功能常用的應用軟件文本編輯、文字處理、網站文字處理軟件Word、AdobeAcrobat、WPS、FrontPage等編輯與排版等表格定義、數值計算和統電子表格軟件Excel等計、繪圖等圖像處理、幾何圖形繪製、AutoCAD、Photoshop、CorelDraw、3DSMAX、美圖、圖形圖像軟件動畫製作等會聲會影、光影魔術手等播放各種數字音頻和視頻MediaPlayer、RealPlayer、Winamp、Realplayer、Win媒體播放軟件文件dowsMediaPlayer、暴風影音、千千靜聽等編輯各種數字音頻和視頻會聲會影、聲音處理軟件Cool2.1、視頻解碼器ffd媒體編輯器文件show等網絡通信軟件電子郵件、聊天、IP電話等MSN、QQ、飛信、微信、百度hi、阿裏旺旺等演示軟件投影片製作、放映等PowerPoint等輸入法文字的文本輸入紫光輸入法、智能ABC、五筆QQ拚音、搜狗等在數據庫和因特網中查找信息檢索軟件Google,百度等需要的信息金山詞霸PowerWord、MagicWin(多語種中文係翻譯軟件多語種轉換和翻譯統)、Systran、有道英語等遊戲軟件遊戲、教育和娛樂棋類遊戲、撲克遊戲等蘋果公司的Appstore、微南中醫APP、中醫養生鍾、手機APP智能手機應用程序雲中醫等其他方便生活百度地圖、導航、壓縮軟件等1辦公軟件辦公軟件是指在辦公應用中使用的各種軟件,這類軟件的用途主要包括文字處理、表格數據的製作、演示動畫製作、簡單數據庫處理等。在這類軟件中,最常用的辦公軟件套裝就是微軟公司的Office係列軟件,除此以外,國內常見的辦公軟件還包括金山WPS、永中Office等。
2網絡軟件網絡軟件是指支持數據通信和各種網絡活動的軟件。隨著因特網技術的普及和發展,產生了越來越多的網絡軟件,如各種網絡通信軟件、下載,上傳軟件、網頁瀏覽軟件等。
常用的網絡通信軟件主要包括騰訊QQ、微信、阿裏旺旺等;常用的下載和上傳軟件包括迅雷、LeapFTP、CuteFTP等;常用的網頁瀏覽軟件包括微軟的火狐狸、360安全瀏覽器、IE等。
3安全軟件安全軟件是指輔助用戶管理計算機安全的軟件。廣義的安全軟件用途十分廣泛,主要包括防止病毒傳播、防護網絡攻擊、屏蔽網頁木馬和危害性腳本以及清理流氓軟件等。
第3章計算機軟件係統75常用的安全軟件有很多,如防止病毒傳播的卡巴斯基個人安全套裝、防護網絡攻擊的天網防火牆、屏蔽網頁木馬和危害性腳本的360安全衛士以及清理流氓軟件的惡意軟件清理助手等。
多數安全軟件的功能並非是唯一的,如卡巴斯基個人安全套裝既可以防止病毒傳播,又可以防護網絡攻擊,而360安全衛士也可以清理一些流氓軟件等。
4圖形圖像軟件圖形圖像軟件是瀏覽、編輯、捕捉、製作、管理各種圖形和圖像文檔的軟件。它既包含為各種專業設計師開發的圖像處理軟件,如Photoshop等,也包含一些圖像瀏覽和管理軟件,如ACDsee等。
隨著計算機技術的進步,圖形圖像處理技術的發展也是日新月異。以處理照片為例,早期的圖像處理軟件往往需要用戶對軟件操作熟練。而如今,隨著數碼相機“飛入尋常百姓家”,出現了越來越多的“傻瓜式”圖像處理軟件,例如大名鼎鼎的AdobePhotoshopLightroom以及國產的“光影魔術手”、美圖秀秀軟件等。
5多媒體軟件多媒體軟件是指播放各種視頻、音頻以及處理、分割、轉換這些視頻、音頻的軟件。多媒體的數據文件通常都是先通過壓縮編碼,然後進行傳輸和存儲等操作。每種編碼方式都需要由特定的軟件進行解碼才能夠播放和處理。幾乎每一種多媒體壓縮編碼方式都有其指定的播放、處理和分割轉換軟件,如專門針對微軟的WMV流媒體格式的WindowsMediaPlayer等。
6桌麵工具桌麵工具主要是指一些應用於桌麵的小型軟件,可以幫助用戶實現一些簡單而瑣碎的功能,提高用戶使用計算機的效率,或為用戶帶來一些簡單而有趣的體驗。例如,幫助用戶定時清理桌麵、計算四則運算、即時翻譯單詞和語句、提供日曆和日程提醒、改變操作係統的界麵外觀等。
7手機APP手機軟件,就是安裝在智能手機上的客戶端軟件,完善原始係統的不足與個性化。隨著科技的發展,現在手機的功能也越來越多,越來越強大。
不像過去的那麼簡單死板,目前發展到了可以和電腦相媲美。手機軟件與電腦一樣,下載手機軟件時還要考慮你購買這一款手機所安裝的係統來決定要下載相對應的軟件。
據統計國內醫療健康類APP達2000多款,“移動醫療”的出現,勢必將改變人們傳統就醫、養生方式。比如中醫問診APP“雲中醫”,通過個人手機攝像頭,能抓拍下問診者的麵部、舌苔等多個部位,再根據相關的問題問答方式進行“問診”,就能給出基本診斷結果,並輔以起居養生、飲食調整、發病傾向等多方麵健康管理意見。
35計算機病毒351計算機病毒概述計算機病毒(ComputerVirus)在《中華人民共和國計算機信息係統安全保護條例》中被明確定義:“編製者在計算機程序中插入的破壞計算機功能或者破壞數據,影響計算機使用並且能夠自我複製的一組計算機指令或者程序代碼”。
計算機病毒與醫學上的“病毒”不同,計算機病毒不是天然存在的,是人為利用計算機軟件76新編大學計算機信息技術教程(第2版)和硬件所固有的脆弱性編製的一組指令集或程序代碼。它能潛伏在計算機的存儲介質(或程序)裏,條件滿足時即被激活,通過修改其他程序的方法將自己的精確拷貝或者可能演化的形式放入其他程序中,從而感染其他程序,對計算機資源進行破壞。
計算機病毒是一個程序,一段可執行碼,就像生物病毒一樣,具有自我繁殖、互相傳染以及激活再生等生物病毒特征。計算機病毒有獨特的複製能力,它們能夠快速蔓延,又常常難以根除。它們能把自身附著在各種類型的文件上,當文件被複製或從一個用戶傳送到另一個用戶時,它們就隨同文件一起蔓延開來。
352計算機病毒的主要特征1破壞性計算機中毒後,可能會導致正常的程序無法運行,把計算機內的文件刪除或受到不同程度的損壞。破壞引導扇區及BIOS,硬件環境破壞。
2傳染性計算機病毒傳染性是指計算機病毒通過修改別的程序將自身的複製品或其變體傳染到其他無毒的對象上,這些對象可以是一個程序,也可以是係統中的某一個部件。
3潛伏性計算機病毒潛伏性是指計算機病毒可以依附於其他媒體寄生的能力,侵入後的病毒潛伏到條件成熟才發作,會使計算機運作變慢。
4隱蔽性計算機病毒具有很強的隱蔽性,通過病毒軟件檢查出來少數,隱蔽性計算機病毒時隱時現、變化無常,這類病毒處理起來非常困難。
5可觸發性編製計算機病毒的人,一般都為病毒程序設定一些觸發條件。例如,係統時鍾的某個時間或日期、係統運行了某些程序等。一旦條件滿足,計算機病毒就會“發作”,使係統遭到破壞。
另外計算機病毒還有很多其他特性,比如繁殖性、寄生性等。
353計算機病毒的典型征兆計算機病毒的典型征兆主要有以下幾點:①屏幕上出現不應有的特殊字符或圖像、字符無規則變或脫落、靜止、滾動、雪花、跳動、小球亮點、莫名其妙的信息提示等顯示器上經常出現一些莫名其妙的信息或異常現象。
②發出尖叫、蜂鳴音或非正常奏樂等。
③經常無故死機,隨機地發生重新啟動或無法正常啟動、運行速度明顯下降、內存空間變小、磁盤驅動器以及其他設備無緣無故地變成無效設備等現象。
④磁盤標號被自動改寫、出現異常文件、出現固定的壞扇區、可用磁盤空間變小、文件無故變大、失蹤或被改亂、可執行文件(exe)變得無法運行等。
⑤能正常運行的軟件,運行時卻提示內存不足。
⑥未使用軟件,但自動出現讀寫操作。
⑦打印異常、打印速度明顯降低、不能打印、不能打印漢字與圖形等或打印時出現亂碼。
⑧收到來曆不明的電子郵件、自動鏈接到陌生的網站、自動發送電子郵件等。
⑨程序或數據無故消失,文件名不能辨認,丟失文件或者文件損壞等。
第3章計算機軟件係統77⑩磁盤卷發生變化,甚至次判卷丟失。
瑏瑡文件無法正確讀取,複製,或者打開、編輯、保存。
瑏瑢操作係統無故頻繁出現錯誤。
瑏瑣係統異常重新啟動等。
354計算機病毒的預防預防計算機病毒,需要有主動保護文檔數據的習慣,在使用計算機過程中,注重數據文件的備份,以防意外發生。
為了保護計算機安全,需要下載安裝殺毒軟件或防火牆。在這裏不得不提的是殺毒軟件,知道殺毒軟件怎麼應用以及官方地址,有些網民通過搜索,鏈接到非法網站下載後感染病毒。
把有害端口關閉。Windows下關閉23、135、445、139、3389等端口。
使用推薦的搜索引擎。若想打開陌生網頁可以在搜索引擎中輸入其首頁地址,可以在一定程度上防止中病毒或木馬。大型的搜索引擎有檢測網站首頁是否有掛馬的功能。
黑客等往往都是用工具掃描係統的漏洞,從而進行攻擊或放木馬,打滿補丁在很大程度上可以減少中毒。
盡管目前的殺毒軟件和木馬掃描軟件越來越好,但是很多新型病毒在一定時間內殺毒軟件等並未及時發現。所以為了計算機的安全,最好不要去搜索一些不健康的詞以便鏈接到病毒頁麵。
計算機的病毒預防有以下幾點:①注意對係統文件、可執行文件和數據寫保護;②不使用來曆不明的程序或數據;③盡量不用外存進行係統引導;④不輕易打開來曆不明的電子郵件;⑤使用新的計算機係統或軟件時,先殺毒後使用;⑥備份係統和參數,建立係統的應急計劃等;⑦安裝殺毒軟件;⑧分類管理數據等。
36軟件知識產權保護知識產權是基於創造性智力成果和工商業標記依法產生的權利的統稱。作為人類創造的諸多知識的一種,軟件同樣需要知識產權的保護。隨著軟件行業的發展,越來越多的軟件開發企業和個人都認識到知識產權的重要性,開始使用法律武器保護軟件的著作權益。
361軟件許可的分類在了解軟件知識產權之前,首先需要了解軟件的許可和許可證。軟件由開發企業或個人開發出來後,就會創建一個授權許可證。許可證的許可範圍包括發表權、署名權、修改權、複製權、發行權、出租權、信息網絡傳播權、翻譯權等。
根據中華人民共和國《計算機軟件保護條例》的規定,軟件著作權人可以許可他人行使其軟件著作權,並有權獲得報酬。軟件著作權人可以全部或者部分轉讓其軟件著作權,並有權獲得報酬。任何企業或個人隻有在取得相應的許可後,才能進行相關的行為。
78新編大學計算機信息技術教程(第2版)軟件開發企業或個人有權向任何用戶授予全部的軟件許可或部分許可。根據授予的許可權利,可以將目前的軟件分為以下兩大類。
1專有軟件專有軟件,又稱非自由軟件、專屬軟件、私有軟件等,是指由開發者開發出來之後,保留軟件的修改權、發布權、複製權、發行權和出租權等,限製非授權者使用的軟件。
專有軟件最大的特征就是閉源,即封閉源代碼,不提供軟件的源代碼給用戶或其他人。對於專有軟件而言,源代碼是保密的。專有軟件又可以分為商業軟件和非商業軟件兩種。
(1)商業軟件商業軟件是指由於商業原因而對專有軟件進行的限製。包含商業限製的專有軟件又被稱作商業專有軟件。目前大多數在銷售的軟件都屬於商業專有軟件,例如Windows、Office、VisualStudio等。
商業專有軟件限製了用戶的所有權利,包括使用權、複製權和發布權等。用戶在行使這些權利之前,必須向軟件的所有者支付費用或提供其他的補償行為。
軟件的所有者為防止用戶非授權的使用、複製等行為,往往會在軟件中設置種種障礙甚至軟件陷阱,例如各種激活、軟件鎖定、破壞用戶計算機數據等。這些行為也給商業專有軟件帶來了一些爭議。
(2)非商業軟件除了商業專有軟件外,還有一些軟件也屬於專有軟件。這些軟件的所有者保留了軟件的源代碼、開發和使用的權利,但免費授權給用戶使用。非商業限製的軟件目前也比較多,包括各種共享軟件和免費軟件等。
共享軟件主要是授予用戶部分使用權的軟件。用戶可以免費地複製和使用軟件,但軟件所有者往往在軟件上賦予一定的限製。例如,鎖定一些功能或限製使用時間等,需要用戶支付一些費用(往往隻包括開發成本)或捐助,或和軟件所有者聯係,提供一些信息等才能解除這些限製,是一種“買前免費試用”的軟件。
免費軟件是另一類非商業專有軟件。這一類軟件的所有者向用戶免費提供使用、複製和分發的權利,用戶無需支付任何費用。
2開源軟件除了封閉源代碼的軟件外,還有一類軟件往往在發布時連帶源代碼一起發布,這類軟件稱為開源軟件。開源軟件往往會遵循開源軟件許可協議以及開源社區的一些規則。
開源軟件都有三點共同的特征:(1)發布義務。遵循開源軟件許可協議的軟件開發者有將軟件源代碼免費公開發布的義務。
(2)保護代碼完整。在發布源代碼時,必須保證源代碼的完整性、可用性。
(3)允許修改。已發布的源代碼允許他人修改和引用,以開發出其他產品。
原則上,對於普通用戶而言,無論是商業用途還是個人用途,開源軟件是免費且允許隨意複製使用的。隨著計算機技術的發展,投身於開源軟件的開發者逐漸增多,未來的開源軟件發展將更加迅速。
362軟件知識產權保護近年來,國家對知識產權十分重視,在保護知識產權方麵做出了卓有成效的努力。自第3章計算機軟件係統791990年以來,兩次修訂了《計算機軟件保護條例》,並不斷加大打擊侵犯軟件知識產權的違法犯罪活動。
1保護軟件知識產權的目的計算機行業和軟件開發行業是高新技術產業,無論企業還是個人,在開發軟件時,都需要投入巨大的人力和物力。因此,保護知識產權對軟件行業的健康發展有著重要的意義。
(1)鼓勵科學技術創新。
保護軟件知識產權,可以保護軟件開發者以及投資軟件開發的企業和個人的利益,鼓勵其繼續投入人力、物力到新的創造活動中去。
(2)保護行業健康發展。
保護軟件知識產權,可以降低軟件開發者的開發成本,促進軟件行業的持續、快速、健康發展,有利於提高國內軟件行業的競爭力,保護民族產業。
(3)保護消費者的利益。
保護軟件知識產權,可以使軟件開發者將全部的精力投入到軟件設計與開發以及對已發布軟件產品的維護、更新和升級中去,最大限度保障軟件用戶的使用安全,防止計算機病毒、木馬和流氓軟件等的流行。
2依法使用軟件作為廣大的計算機軟件用戶,有責任、有義務從我做起,依法使用軟件。在日常工作和生活中,應做到以下幾點。
(1)拒絕盜版軟件。
在使用各種軟件工作以及娛樂時,應使用正版或授權版本,拒絕各種破解版、綠色版、第三方修改版的軟件。
(2)依法使用軟件。
在獲取軟件方麵,需依法向軟件開發者、軟件零售商購買或索取軟件。在未獲得軟件授權時不下載、不使用、不傳播。
根據《計算機軟件保護條例》第十七條規定:“為了學習和研究軟件內含的設計思想和原理,通過安裝、顯示、傳輸或者存儲軟件等方式使用軟件的,可以不經軟件著作權人許可,不向其支付報酬。”(3)在發現他人非法銷售、使用和複製盜版軟件時,有義務舉報這些非法行為,維護法律的公平與公正。
本章小結計算機軟件是指計算機係統中的程序及其文檔。程序是計算任務的處理對象和處理規則的描述;文檔是為了便於了解程序所需的闡明性資料。程序必須裝入機器內部才能工作,文檔一般是給人看的,不一定裝入機器。
程序是指一組指示計算機每一步動作的指令,通常用某種程序設計語言編寫,運行於某種目標體係結構上。
計算機軟件總體分為係統軟件和應用軟件兩大類。軟件一般是用某種程序設計語言來實現的,通常可以采用軟件開發工具進行軟件開發。係統軟件是負責管理計算機係統中各種獨立的硬件,使得它們可以協調工作。係統軟件使得計算機使用者和其他軟件將計算機當作一個整體而不需要顧及到底層每個硬件是如何工作的。應用軟件是計算機上加載的程序,可借80新編大學計算機信息技術教程(第2版)助計算機的能力實現特定的功能,是專門為某一應用目的而編製的軟件。
計算機病毒是編製者在計算機程序中插入的破壞計算機功能或者數據的代碼,能影響計算機使用,能自我複製的一組計算機指令或者程序代碼。計算機病毒具有傳播性、隱蔽性、感染性、潛伏性、可觸發性和破壞性。計算機病毒的生命周期:開發期→傳染期→潛伏期→發作期→發現期→消化期→消亡期。
不同的軟件一般都有對應的軟件許可,軟件的使用者必須在獲得所使用軟件許可的情況下才能合法地使用軟件。從另一方麵來講,某種特定軟件的許可條款也不能夠與法律相抵觸。
未經軟件版權所有者許可的軟件複製將會引發法律問題,一般來講,購買和使用這些盜版軟件也是違法的。
醫藥相關軟件可參閱後續章節。
第3章計算機軟件係統81習題與自測題一、選擇題1利用計算機進行圖書館管理,屬於計算機應用中的。
A數值計算B數據處理C人工智能D輔助設計2下列軟件中,不屬於應用軟件。
AWordBExcelCWindowsXPDAutoCAD3算法和程序的首要區別在於:一個程序不一定滿足下麵所列特性中的。
A具有0個或者多個輸入量B至少產生一個輸出量(包括參量狀態的改變)C在執行了有窮步的運算後終止(有窮性)D每一步運算有確切的定義(確定性)4下列不屬於計算機軟件的組件是。
A程序B數據C相關的文檔D存儲軟件的光盤5算法的表示可以有多種形式,包括。
A文字說明B流程圖表示C偽代碼D以上都是6下列敘述中,不屬於操作係統的重要作用。
A為計算機中運行的程序管理和分配各種軟硬件資源B為用戶提供友善的人機界麵C為不同領域用戶的特定應用要求而提供專門設計開發D為應用程序的開發和運行提供一個高效率的平台7用助記符來代替機器指令的操作碼和操作數。
A機器語言B彙編語言C低級語言D高級語言8下列軟件中,不屬於應用軟件的是。
AUnixBExcelCWordDAutoCAD9下列軟件中,不屬於應用軟件的是。
A具有數據庫技術的軟件B具有係統軟件技術的軟件C具有程序設計技術的軟件D具有單片機接口技術的軟件10下列不屬於計算機軟件技術的是。
A數據庫技術B係統軟件技術C程序設計技術D單片機接口技術二、填空題1根據計算機軟件的用途,可以將其分為兩大類,即係統軟件和。
2程序設計語言按其級別可以劃分為、彙編語言和高級語言三大類。
3C語言屬於程序設計語言中的。
4常常以和空間複雜度來評價算法的優劣。
5算法和是程序設計的兩個重要的概念。
三、判斷題1操作係統是計算機係統中最重要的應用軟件。()82新編大學計算機信息技術教程(第2版)2彙編語言用助記符來代替機器指令的操作碼和操作數,因此彙編語言是高級語言。
()3通常的操作係統如Windows10、WindowsXP等,都具有一定的網絡通信和網絡服務功能,所以都可以安裝在服務器上用作網絡操作係統。()4用計算機機器語言編寫的程序可以由計算機直接執行,用高級語言編寫的程序必須經過編譯或解釋才能執行。()5Word、Excel、AutoCAD等軟件都屬於應用軟件。()四、簡答題1什麼是計算機軟件?計算機軟件有哪些主要特性?
2計算機軟件的分類有哪些?
3簡述計算機操作係統的作用。計算機操作係統的管理功能。
4結合上機實踐和手機應用,說一說您使用的操作係統的類型和特點。
5在程序設計語言中有哪些數據類型?為什麼要說明變量的數據類型。
6在程序設計語言中有哪些控製結構?
7什麼是程序、算法、數據結構?
8什麼是計算機病毒?簡述計算機病毒的主要特征。
9如何預防計算機病毒?
10什麼是計算機軟件的版權和使用許可證?它們有什麼意義?
【微信掃碼】習題解答&相關資源第4章計算機網絡【微信掃碼】本章導學&拓展閱讀計算機網絡是計算機技術與通信技術緊密結合的產物,網絡技術對信息產業的發展產生了深遠的影響,並且發揮著越來越大的作用。本章在介紹網絡形成與發展曆史的基礎上,對網絡定義分類與基本原理進行了係統的討論,並對因特網及其應用、網絡安全以及計算機網絡在醫藥行業的應用進行討論。
41計算機網絡概述411計算機網絡定義計算機網絡(ComputerNetwork)是利用通信設備和通信線路將地理位置分散、功能獨立的多個計算機係統相互連接起來,以功能完善的網絡軟件來實現網絡中信息傳遞和資源共享的係統。它包含三層含義:自主計算機,相互連接,信息交換、資源共享、協調工作。從概念上講,計算機網絡由通信子網和資源子網兩部分組成,其功能是將數據劃分成不同長度的分組進行傳輸和處理。
資源共享觀點將計算機定義為“以能夠相互共享資源的方式互聯起來的自治計算機係統的集合”。資源共享觀點的定義符合當前計算機網絡的基本特征,這主要表現在以下幾個方麵:(1)計算機網絡建立的主要目的是實現計算機資源的共享。計算機資源主要指計算機硬件、軟件與數據。網絡用戶不但可以使用本地計算機資源,而且可以通過網絡訪問聯網的遠程計算機資源,還可以調用網中的不同計算機共同完成某項任務。
(2)聯網的計算機是指分布在不同地理位置的多台獨立的“自治計算機”,互聯的計算機之間應該沒有明確主從關係,每台計算機既可以聯網工作,也可以脫網獨立工作。聯網計算機既可以為本地用戶提供服務,也可以為遠程網絡的合法用戶提供服務。
(3)聯網計算機之間的通信必須遵循共享的網絡協議。計算機網絡是由多個互聯的結點組成,結點之間要做到有條不紊地交換數據,每個結點都必須遵守一些事先規定好的通信規則。
412計算機網絡發展過程1計算機網絡的產生背景計算機網絡是20世紀60年代美蘇冷戰的產物。傳統的電路交換的電信網有一個缺點:正在通信的電路中有一個交換機或有一條鏈路被炸毀,則整個通信電路就要中斷,如要改用其他迂回電路,必須重新撥號建立連接,這將要延誤一定的時間。這在戰爭中是非常不利的,於是在20世紀60年代,美國國防部領導的遠景研究規劃局(AdvancedResearchProjectAgency,ARPA)提出要研究一種生存性很強的網絡,要求這種新型網絡必須具有以下幾個基本特點:(1)網絡用於計算機之間的數據傳送,而不是為了打電話。
84新編大學計算機信息技術教程(第2版)(2)網絡能夠連接不同類型的計算機,不局限於單一類型的計算機。
(3)所有的網絡結點都同等重要,因而大大提高了網絡的生存性。
(4)計算機在進行通信時,必須有冗餘的路由。
(5)網絡的結構應當盡可能的簡單,同時還能夠非常可靠地傳送數據。
計算機網絡數據具有突發性,利用電路交換傳送計算機數據,效率低,導致通信線路的利用率很低,ARPANET(AdvancedResearchProjectAgencyNetwork)引入分組交換技術,分組交換技術網由若幹個結點交換機和連接這些交換機的鏈路組成。在分組交換網絡中,主機是為用戶進行信息處理的,結點交換機則進行分組交換,用來轉發分組的。各結點交換機之間要經常交換路由信息,為轉發分組進行路由選擇,從而帶來分組交換的優點:高效,動態分配傳輸帶寬,對通信鏈路是逐段占用的;靈活,以分組為發送單位和查找路由;迅速,不必先建立連接就能向其他主機發送分組,充分利用鏈路的帶寬;可靠,完善的網絡協議,自適應和路由選擇協議使網絡有很好的分組。ARPANET的成功使計算機網絡的概念發生根本變化,從以主機為中心到以網絡為中心,主機都處在網絡的外圍,用戶通過分組交換網可共享連接在網絡上各種資源。ARPANET是計算機網絡發展的一個重要的裏程碑,它對計算機網絡技術發展的主要貢獻表現在以下幾個方麵:①完成了計算機網絡定義、分類與子課題研究內容的描述。
②提出了資源子網、通信子網的兩級網絡結構的概念。
③研究了報文分組的數據交換方法。
④采用了層次結構的網絡體係結構模型與協議體係。
⑤促進了TCP/IP協議的發展。
⑥為Internet的形成和發展奠定了基礎。
ARPANET研究成果對世界計算機網絡的發展有深遠的意義。
2計算機網絡的組成組成計算機網絡的計算機可以是巨型機、大型機、小型機、個人計算機、筆記本電腦或其他具有處理器的智能終端,要實現計算機網絡必須有相應的硬件和軟件。
(1)計算機網絡中的硬件計算機網絡是在物理上分布的相互協作的計算機係統,其硬件部分主要包括以下幾種:①計算機(智能終端)。
②光纖、同軸電纜和雙絞線等傳輸媒體。
③通信網卡:用於收發數據。
④集線器(Hub):用來把多台計算機連在一起。
⑤交換機(Switch):用來擴展帶寬及連接多台計算機。
⑥路由器(或ATM交換機):負責路徑管理和網絡交通的控製。
在上述設備中,集線器和交換機是用於組成局域網的設備,而路由器和ATM交換機則主要用於組成廣域網。
(2)計算機網絡中的軟件計算機網絡中的軟件主要分為五類。
①操作係統操作係統是網絡軟件係統的核心軟件。目前最常用的局域網操作係統是WindowsServer、Linux和Unix。很多提供網絡服務的操作係統都由這些操作係統作為平台的。
第4章計算機網絡85②通信協議通信協議是計算機網絡中各部分之間必須遵守的規則的集合。它定義了各設備之間信息交換的格式和順序。相互通信的兩個計算機係統必須高度協作工作才行,而這種協調是相當複雜的。分層可將龐大而複雜的問題轉化為若幹較小的局部問題,而這些較小的局部問題就比較易於研究和處理。網絡的各層功能描述及其集合已經計算機網絡體係結構。通信協議是計算機網絡體係結構中最重要的的部分。常用的通信協議主要有TCP/IP、Novell的IPX/SPX和Microsoft的NetBEUI。
③管理軟件管理軟件的內容包括網絡的配置、出錯處理及用戶與網絡的接入等,它負責計算機網絡的安全運行和維護等工作。
④交換與路由軟件交換與路由軟件是通信的各部分之間建立和維護傳輸信息所需的通道。
⑤應用軟件計算機網絡中的應用軟件是計算機網絡為用戶提供網絡服務的中介。如電子郵件、瀏覽工具和搜索工具等。
3計算機網絡發展階段計算機網絡技術的發展速度與應用的廣泛程度是驚人的。縱觀計算機網絡的形成與發展曆史,大致可以將它劃分為四個階段。
第一階段:可以追溯到20世紀50年代。人們將彼此獨立發展的計算機技術與通信技術集合起來,進行數據通信技術與計算機通信網絡的研究,為計算機網絡的產生做好技術準備,並且奠定了理論基礎。
第二階段:應該從20世紀60年代美國的ARPANET與分組交換技術開始。ARPANET是計算機網絡技術發展中的一個裏程碑,它的研究成果對促進網絡技術發展和理論體係的研究產生重要的作用,並為Internet的形成奠定基礎。
第三階段:可以從20世紀70年代中期起。這個時期國際上各種廣域網、局域網與公用分組交換網發展十分迅速,各個計算機生產商紛紛發展各自的計算機網絡,隨之而來的是網絡體係結構與網絡協議的標準化問題。國際標準化組織在推動開放係統參考模型與網絡協議的研究方麵做了大量的工作,對網絡理論體係的形成與網絡技術的發展起到重要的作用,但它同時也麵臨著TCP/IP的嚴峻挑戰。
第四階段:要從20世紀90年代開始,這個階段最有挑戰性的話題是Internet、高速通信網絡、無線網絡與網絡安全技術。Internet作為國際性的國際網與大型信息係統,在經濟、文化、科學研究、教育與社會生活等方麵發揮越來越重要的作用。寬帶網絡技術的發展為社會信息化提供了技術基礎,網絡安全技術為網絡應用提供了安全技術保障。基於光纖技術的寬帶城域網與無線網絡技術,以及移動網絡計算、網絡多媒體計算、網絡並行計算、物聯網、雲計算等正在成為網絡應用與研究的熱點問題。
413計算機網絡分類在計算機網絡發展過程的不同階段,人們對計算機提出了不同的定義。不同的定義反映當網絡技術發展水平,以及人們對網絡的認識程度。這些定義可以分為三類:廣義觀點、資源共享的觀點與用戶透明性觀點。從當前計算機網絡的特點來看,資源共享觀點定義能比較準86新編大學計算機信息技術教程(第2版)確地描述計算機網絡的主要特征。相比之下,廣義的觀點定義了計算機通信網絡,而用戶透明性的觀點定義了分布式計算機係統。
1按網絡傳輸技術進行分類網絡采用的傳輸技術決定了網絡的主要技術特點,因此根據所采用的傳輸技術對網絡進行分類是一種重要的方法。
在通信技術中,通信信道有兩種類型:廣播式通信信道和點對點通信信道。在廣播通信信道中,多個結點共享一個通信信道,一個結點為廣播信息,其他結點必須接收信息。在點對點通信信道中,一條通信線路隻能連接一對結點,如果兩個結點之間沒有直接連接的線路,則它們隻能通過中間結點轉接。
顯然網絡要通過通信信道來完成數據傳輸任務,它所采用的傳輸技術也隻可能有兩類:廣播方式與點對點方式。因此,相應的計算機網絡也可以分為兩類:廣播式網絡(BroadcastNetworks)與點對點式網絡(PointtoPointNetworks)。
(1)廣播式網絡在廣播式網絡中,所有聯網計算機都共享一個公共通信信道。當一台計算機利用共享通信信道發送報文分組時,所有計算機都會“收聽”到這個分組。由於分組中帶有目的地址與源地址,接收到該分組的計算機將檢查目的地址是否與本結點相同。如果被接收報文分組的目的地址與本結點地址相同,則接收該分組,否則丟棄該分組。顯然,在廣播式網絡中,分組的目的地址可以有三類:單一結點地址、多結點地址和廣播地址。
(2)點對點式網絡在點對點式網絡中,每條物理線路連接一對計算機。如果兩台計算機之間沒有直接連接的線路,則它們之間的分組傳輸需要通過中間結點的接收、存儲與轉發,直至目的結點。由於連接多台計算機之間的線路結構可能很複雜,因此從源結點到目的結點可能存在多條路由。
決定分組從源結點到目的結點的路由需要路由選擇算法。采用分組存儲轉發與路由選擇機製是點對點式網絡與廣播式網絡的重要區別之一。
2按網絡覆蓋範圍進行分類計算機按照其覆蓋的地理範圍進行分類,可以很好地反映不同類型網絡的技術特征。由於網絡覆蓋的地理範圍不同,它們所采用的傳輸技術也就不同,因此形成不同的網絡技術特點與網絡服務功能。
按覆蓋的地理範圍劃分,計算機網絡可以分為以下三類。
(1)局域網局域網(LocalAreaNetwork,LAN)用於將有限範圍內(例如一個實驗室、大樓或校園)的各種計算機、終端與外部設備互聯成網。按照采用的技術、應用範圍和協議標準的不同,局域網可以分為共享局域網與交換局域網。局域網技術發展非常迅速並且應用日益廣泛,是計算機最為活躍的領域之一。
從局域網應用的角度來看,局域網的技術特點主要表現在以下幾個方麵:①局域網覆蓋有限的地理範圍,它適用於機關、校園、工廠等有限範圍內的計算機終端與各類信息處理設備聯網的需求。
②局域網提供高數據傳輸速度(10Mb/s~10Gb/s)、低誤碼率的高質量數據傳輸環境。
③局域網一般屬於一個單位所有,易於建立、維護與擴展。
④從介質訪問控製方法的角度來看,局域網可以分為共享介質式局域網與交換式局域第4章計算機網絡87網;從使用的傳輸介質的類型角度來看,局域網可以分為使用有線介質與無線通信信道的無線局域網。
局域網可以用於個人計算機局域、大型計算機設備群的後端網絡與存儲區域網絡、高速辦公室網絡、企業與學校的主幹局域網。
(2)城域網城市地區網絡常簡稱為城域網(MetropolitanAreaNetwork,MAN)。城域網是介於廣域網與局域網之間的一種高速網絡。城域網設計目標是滿足幾十千米範圍內的大量企業、機關、公司的多個局域網的互聯需求,以實現大量用戶之間的數據、語音、圖形與視頻等多種信息傳輸。
(3)廣域網廣域網(WideAreaNetwork,WAN)又稱為遠程網,所覆蓋的地理範圍從幾十到幾千千米。廣域網覆蓋一個國家、地區或橫跨幾個洲,形成國際性的遠程計算機網絡。廣域網的通信子網可以利用公用分組交換網、衛星通信網和無線分組交換網,它將分布在不同地區的計算機係統互聯起來,以達到資源共享的目的。
414計算機網絡通信原理通信的基本任務是傳遞信息,因而至少需由三個要素組成,即信息的發送者(稱為信源)和信息的接收者(稱為信宿)、攜帶了信息的電(或光)信號以及信息的傳輸通道(稱為信道)。最簡單的通信模型如圖41所示。以有線電話係統為例,發話人(及其使用的電話機)和受話人(及其使用的電話機)相當於信源和信宿,說話人的話音經電話機轉換得到強度隨時間而變化的電流就是攜帶了信息的信號,信號在電話線和中繼器、交換機等設備中傳輸,電話線是信號的傳輸介質,它和中繼器、交換機等構成了傳輸信號的信道。信源和信宿中使用的發信和收信設備(電話機),也稱為通信終端。
圖41通信係統的簡單模型光(或電)信號有兩種形式:模擬信號和數字信號。模擬信息通過連續變化的物理量(如信號電平的幅度或電流的強度)來表示信息。例如,人們打電話或播音員播音時的聲音經過話筒(麥克風)轉換得到的電信號就是模擬信號。數字信號的電平高低或電流大小隻有有限個狀態(一般是兩個狀態),它們在時間上有時也是不連續的。例如,電報機、傳真機和計算機發出的信號都是數字信號。
模擬信號在傳輸過程中容易受噪聲信號的幹擾,傳輸質量不夠穩定。隨著數字技術的發展,目前已經越來越多地把模擬信號轉換成數字信號進行傳輸,這種通信傳輸技術稱為數字通信。數字通信抗幹擾能力強,差錯可控製,可靠性好,還可以方便地對信號加密,安全性更容易得到保證。由於傳輸的數字信號,可以直接由計算機進行信息的存儲、處理和管理。
數字通信是計算機網絡的基礎,在計算機內部各部件之間、計算機與各種外部設備之間以及計算機與計算機之間,都是以數字信號通信的方式傳遞、交換數據信息的。
數字信號可以直接采用基帶傳輸。基帶傳輸就是在線路中直接傳送數字信號對應的電脈88新編大學計算機信息技術教程(第2版)衝,它是一種最簡單的傳輸方式,近距離通信的局域網都采用基帶傳輸。
為了利用廉價的公共電話交換網實現計算機之間的遠程通信,必須將發送端的數字信號變換成能夠在公共電話網上傳輸的模擬信號,經傳輸後再在接收端將音頻信號逆變換成對應的數字信號。把數字信號轉變為模擬信號叫調製,把模擬信號轉變為數字信號叫解調,同時實現調製和解調的設備稱作調製解調器(Modem)。
1通信方式通信有兩種基本方式。
(1)並行通信方式。並行數據傳輸時,同時傳輸多個數據位。發送設備將這些數據位通過對應的數據線傳送給接收設備,還可附加一位數據校驗位。接收設備可同時接收到這些數據,不需要做任何變換就可直接使用。並行方式主要用於近距離通信,計算機內的總線結構就是並行通信的例子。
(2)串行通信方式。串行數據傳輸時,數據是一位一位地在通信線上傳輸的。先由發送端計算機將計算機內的並行數據經並串轉換硬件轉換成串行方式,經傳輸線逐位傳輸到接收端的設備中,並在接收端將數據從串行方式重新轉換成並行方式,以供接收方使用。串行數據傳輸的速度要比並行傳輸慢得多,但對於覆蓋麵極其廣闊的公用電話係統來說具有更大的現實意義。
按串行數據通信的方向不同,分為三種方式:單工、半雙工和全雙工。
①單工數據傳輸隻支持數據在一個方向上傳輸。
②半雙工數據傳輸允許數據在兩個方向上傳輸,但是在某一時刻隻允許數據在一個方向上傳輸,它實際上是一種切換方向的單工通信。
③全雙工數據通信允許數據同時在兩個方向上傳輸,因此全雙工通信是兩個單工通信方式的結合,它要求發送設備和接收設備都有獨立的接收和發送能力。
2數據交換技術數據經編碼後在通信線路上進行傳輸,按數據傳送技術劃分,可分為電路交換技術、報文交換技術和分組交換技術。
(1)電路交換電路交換(CircuitSwitching)就是在通信的過程中維持的實際的電子電路(物理線路),用戶想要交換數據必須先建立這條電子電路,電子電路建立後用戶始終占用從發送端到接收端的固定傳輸帶寬。
電路交換技術有兩大優點:一是傳輸延遲小,唯一的延遲是物理信號的傳播延遲;二是一旦線路建立,便不會發生衝突。前者得益於一旦建立物理連接,便不再需要交換開銷;後者來自於獨享物理線路。
電路交換的缺點是建立物理線路所需的時間比較長,在數據開始傳輸之前,呼叫信號必須經過若幹個交換機,得到各交換機的認可,並最終傳到被呼叫方,這個過程常常需要10s甚至更長的時間(呼叫市內電話、國內長途和國際長途所需時間是不同的)。對於許多應用(如商店信用卡確認)來說,過長的電路建立時間是不合適的。
在電路交換係統中,物理線路的帶寬是預先分配好的。對於已經預先分配好的線路,即使通信雙方都沒有數據要交換,線路帶寬也不能為其他用戶所使用,從而造成帶寬的浪費。當然這種浪費也有好處,對於占用信道的用戶來說,其可靠性和實時響應能力都得到了保證。
第4章計算機網絡89(2)報文交換報文交換(MessageSwitching)又稱為包交換。報文交換不需事先建立物理電路,當發送方有數據要發送時,它將把要發送的數據當作一個整體交給中間交換設備,中間交換設備先將報文存儲起來,然後選擇一條合適的空閑輸出線將數據轉發給下一個交換設備,如此循環往複直至將數據發送到目的結點。
在報文交換中,一般不限製報文的大小,這就要求各個中間結點必須使用磁盤等外設來緩存較大的數據塊。同時,某一塊數據可能會長時間占用線路,導致報文在中間結點的延遲非常大(一個報文在每個結點的延遲時間等於接收整個報文的時間加上報文在結點等待輸出線路所需的排隊延遲時間),這使得報文交換不適合交互式數據通信。為了解決上述問題又引入了分組交換技術。
(3)分組交換分組交換(PacketSwitching)技術是報文交換技術的改進。在分組交換網中,用戶的數據被劃分成一個個分組(Packet),而且分組的大小有嚴格的上限,這樣使得分組可以被緩存在交換設備的內存而不是磁盤中。同時,由於分組交換網能夠保證任何用戶都不能長時間獨占某傳輸線路,因而它非常適合於交互式通信。
3調製與解調技術由於導體存在電阻,因此,電信號直接傳輸距離不能太遠。研究發現,高頻振蕩的正弦信號在長距離通信中能夠比低頻信號傳送得更遠。因此可以把這種高頻正弦波信號作為攜帶信息的“載波”。信息傳輸時,利用信源信號去調整(改變)載波的某個參數(幅度、頻率或相位),這個過程稱為“調製”,經過調製後,載波攜帶著被傳輸的信號在信道中進行長距離傳輸,到達目的地時,接收方再把載波攜帶著被傳輸的信號檢測出來恢複為原始信號,這個過程稱為“解調”。
載波信號是頻率比被傳輸信號(稱為調製信號或基帶信號)高得多的正弦波。調製的方法有三種:幅度調製、頻率調製和相位調製。如圖42所示是三種不同調製方法的示意圖。
圖42三種調製方式對載波信號進行調製所使用的設備稱為“調製器”,調製器輸出的信號即可在信道上進行長距離傳輸。到達目的地之後再由接收方使用“解調器”進行解調,恢複出被傳輸的基帶信號。
不同類型的調製信號和不同的調製方法,需使用不同的調製和解調設備。由於大多數情況下通信總是雙向進行的,所以調製器與解調器往往做在一起,這樣的設備稱為“調製解調器”(Modem),如圖43所示。
90新編大學計算機信息技術教程(第2版)圖43使用調製解調器進行遠距離通信4多路複用技術由於傳輸線路的建設和維護成本在整個通信係統中占相當大的份額,而且一條傳輸線路的容量通常也遠遠超過傳輸一路用戶信號所需的帶寬。為了提高傳輸線路的利用率,降低通信成本,一般總是讓多路信號同時共用一條傳輸線路,這就是多路複用技術。
多路複用技術有兩類:一類是“時分多路複用”(TDM)技術,各終端設備(計算機)以事先規定的順序輪流使用同一傳輸線路進行數據(或信號)傳輸。時分多路複用技術中,收方和發方也可以異步進行信息的傳輸,隻要被傳輸的信息中附加上接收方的“地址”即可;另一類是多路複用技術,是“頻分多路複用技術”(FDM),它將每個信源發送的信號調製在不同頻率的載波上,通過多路複用器將它們複合成為一個信號,然後在同一傳輸線路上進行傳輸。抵達接收端後,借助分路器(例如收音機和電視機的調諧裝置)把不同頻率的載波送到不同的數據接收設備,從而實現傳輸線路的複用。
用不同波長的光調製信號在同一光信道上傳輸時,叫波分多路複用。它是一種特殊的頻分多路複用技術。移動通信中,第一代模擬蜂窩係統采用頻分多路複用技術(FDMA);第二代GSM係統主要采用時分多路複用技術(TDMA);第三代移動通信使用的是碼分多路尋址(CDMA)技術;第四代移動通信主要采用多載波正交頻分複用調製技術(OFDM)。
總之,采用多路複用技術後,同軸電纜、光纖、無線電波等可以同時傳輸成千上萬路不同信源的信號,大大降低了通信的成本。
5通信技術的發展現代通信技術的不斷發展,給人們的生活、工作帶來極大的方便,人類正在向著一個數字化、信息化的社會邁進。為應對席卷全球的金融危機,國家提出要大力發展戰略性新興產業,確定了七個戰略性新興產業,其中新一代信息通信就是發展的重點,具體聚焦在新一代通信網絡和互聯網、物聯網與泛在網、三網融合、雲計算和高端軟件等方麵。下一代網絡核心基礎產業能夠催生出基礎設備和相關設備產業鏈的研發,而最關鍵的是帶寬,隻有實現高帶寬,下一代互聯網、新一代移動通信、物聯網、雲計算才可以大力發展。
現代通信技術的發展主要有以下七個方向:(1)大容量、遠距離、高速度。波分複用技術已進入實用階段,光孤子通信已取得重大進展。光放大代替光電轉換中繼器可使無中繼距離延長到幾百千米甚至上千千米。無線傳輸已經發展到11/14GHz的Ku頻段,並正在向20/30GHz的Ku頻段甚至更高發展,這樣不但擴充了可用頻段,而且大大增加了容量。同時,采用數字交叉連接設備(DXC)使傳輸網上具有電路群交換功能,組網便捷並且大大提高了網絡的效率和可靠性。
(2)交換技術的發展。一方麵是速度越來越快,已經從千兆跳躍到萬兆;另一方麵是從最初的二層交換發展到三層交換,目前已經發展到網絡的第七層應用層的交換。總之,未來的網絡應用是極其多樣的,而網絡則是極其簡單的。
第4章計算機網絡91(3)網絡傳輸速度快、質量高、誤碼率小、規程簡化,幀中繼方式廣泛應用。各種網絡協議產生並廣泛應用,各種服務器、連接器也層出不窮,得到大量應用。
(4)業務的集成與綜合。由於現在的需求錯綜複雜,單個獨立網絡已經不能滿足需求,對業務的整合和集成已成了網絡通信的一大特色。
(5)網絡智能化。原來由話務員、報務員操作的功能已轉由用戶自己來操作,因此把由用戶來判斷、操作的相當部分功能交給網絡來進行,從而使通信網具有人工智能。目前已經出現一些智能業務,如被叫集中付費、轉移呼叫、電話卡、語言信箱等業務。隨著需求和技術的發展,還將有更多的智能業務被開發。
(6)移動通信的發展。現在移動通信已經從第二、三代通信發展到了第四代移動通信(4G),第四代移動通信信息傳輸的速度更快,距離更遠,更加穩定可靠,第五代移動通信的研發也早已拉開序幕,隨著其發展與成熟,一定會在將來給用戶帶來更為完美的通信體驗。
(7)接入方式的發展。概念上已從用戶線發展為接入網,目前已開始有采用原電話對稱銅線提高使用頻率,原電纜電視的同軸線與光纖混合,使用全光纖、無線接入的多種方式,這是一個正在蓬勃發展的領域。
“千裏之行,始於足下”,在競爭如此激烈的全球化環境下,信息化是體現一個國家綜合實力和國際競爭力的重要所在,大力發展信息化建設還需要當代年輕人不斷地奮鬥。
6通信技術在醫學領域的應用通信技術在醫藥衛生領域的應用,給醫藥行業帶來革命性的變化。“數字化醫療”“信息化醫療”等名詞被炒得熱火朝天,這使計算機網絡化通信技術在醫藥衛生領域中的作用也顯得越來越重要。根據客戶端是采用一般計算機還是手持移動設備,通信技術的應用主要分為有線通信技術應用和無線通信技術應用。
由於有線通信受地理、響應時間等因素的限製,在醫藥衛生領域中,有線通信技術主要用於機對機通信,要求緊密耦合,智能型網絡及外部設備將采用電纜作為接口,對安全性、可靠性及靈活性有嚴格要求,帶寬要求較高的基礎設施及網絡建設。包括醫院電話、電視、整個醫院的局域網、服務器等基礎設施的建設。
相對於有線通信,無線通信技術則顯得非常活躍。
(1)跟蹤治療。病人跟蹤治療管理信息係統采用多種途徑,比如局域網或因特網、掃描儀、攝像頭等錄入患者的各種健康資料,應用臨床路徑知識庫進行保存、編輯和修改更新,形成完整的個體電子檔案。當患者再次就診或體檢時,其資料又可以續存入檔,所有資料都通過網絡進行查詢。不管病人在什麼地方,都可以通過自己的手機,隨時隨地把各種設備(如智能手環,可以體重、血壓、心率等)連接到網絡上,上傳各種數據,接收自己個性化的治療方案,發出健康預警,給出治療建議,了解自己的治療進程。醫生可以通過跟蹤治療係統,了解病人的各種信息,對病人做出正確的診療。
(2)移動觀察。把移動通信係統與救護車聯係在一起,使緊急醫療援助服務中心能夠不間斷地收到救護車上安裝的設備記錄下來的數據,隨時觀察病人在運送過程中的狀態,實時地了解通過救護車運往緊急醫療機構的病人的運送條件和病情變化。
(3)遠程醫療。遠程醫療是指通過計算機技術、遙感、遙測、遙控技術為依托,充分發揮大醫院或專科醫療中心的醫療技術和醫療設備優勢,對醫療條件較差的偏遠地區、海島或艦船上的傷病員進行遠距離診斷、治療和谘詢。遠程醫療旨在提高診斷與醫療水平、降低醫療開支、92新編大學計算機信息技術教程(第2版)滿足廣大人民群眾保健需求的一項全新的醫療服務。目前,遠程醫療技術已經從最初的電視監護、電話遠程診斷發展到利用高速網絡進行數字、圖像、語音的綜合傳輸,並且實現了實時的語音和高清晰圖像的交流,為現代醫學的應用提供了更廣闊的發展空間。國外在這一領域的發展已有40多年的曆史,而我國隻是在最近幾年才得到重視和發展。目前,我們國家用遠程醫療係統主要實現家庭醫療保健、偏遠地區的緊急醫療、醫院之間共享病曆和診斷資料、遠程教育等。
(4)患者數據管理。醫院在住院病房鋪設無線局域網,住院處的每個臨床醫生使用配置筆記本無線網卡的手持式平板電腦,在其巡視病房時直接通過手寫筆,將患者每天的病情資料、診療意見及藥劑配方輸入到醫院的醫療管理係統中;與此同時,護士在護士站根據醫生輸入的巡視結果,為患者及時地調整護理方案;藥劑師根據醫生當天修改的患者用藥情況來配藥;財務人員則可及時地統計患者住院費用。整個運作過程摒棄了原來傳統的臨床紙質病例卡,避免了因紙質病曆在醫生、護士、藥劑師及財務部門之間傳遞過程中發生的由於字跡不清、誤讀等造成的醫療事故。針對特殊疑難患者,臨床醫生可以通過手持式平板電腦在無線局域網覆蓋範圍內的任何地方及時查閱相關資料,避免了為查詢資料,醫生往來於辦公室和病房的麻煩。將手持式平板電腦用於電子處方及診斷結果報告,增加了現場醫療服務新的空間。手持式平板電腦的應用可以消除許多基於紙的過程,如處方抄寫、提交和跟蹤試驗單、報告診斷結果以及書寫患者用藥注意事項等。
(5)藥物跟蹤。製藥商、經銷商和零售商將RFID標簽貼到藥瓶上,然後通過配送渠道發送到目的地。使用RFID跟蹤單個藥瓶、改進庫存管理、防止零售商缺貨以及當藥品需要召回時跟蹤藥品。另外,在醫藥品行業中,RFID標簽將有助於解決與藥品相關的眾多問題,如召回產品、追蹤產品在供應鏈中的流通履曆以及杜絕假冒產品等。
(6)手機求救。IBM的研究人員給手機增添了一項新功能———為心髒病高危者發送求救信息。新係統的核心是隻有一塊口香糖大小的無線電信號轉發裝置,利用藍牙技術連接便攜式心跳監測儀和手機。當使用者心跳達到“危險”水平時,這套係統能夠自動撥打一個預設的手機號碼,以短信息的方式發出心跳數據。
(7)病人數據收集。病人利用智能穿戴設備,通過手機與網絡連接,實時采集病人的相關數據。
(8)醫療垃圾跟蹤。利用RFID跟蹤醫療垃圾,利用跟蹤係統確定醫院和運輸公司的責任,防止違法傾倒醫療垃圾。
(9)短信溝通。一種依靠手機短信實現醫患溝通的新型就醫形式,已經在哈爾濱醫科大學第一附屬醫院實現。中國移動手機用戶將短信發送至指定號碼(如023234)後,即可獲得醫院回複的短信,指導患者怎樣通過短信求醫問藥。此種數字化就醫形式可以避免患者排隊就診帶來的麻煩,也可為部分患者保住隱私。患者在就醫的過程中,還可以通過發送短信獲取該醫院專家醫生的詳細個人資料和具體出診時間,以確定自己要找的醫生和去醫院就診的時間及地點。此業務逐漸開展後,還有望實現手機掛號、短信預約手術、短信完成醫保手續等。屆時患者通過短信在家中就可以“搞定”很多的看病程序。
近年來,我國無線醫療技術應用十分活躍,但比起歐美國家來還相差較遠,僅僅處於起步階段。因此,我國無線醫療、數字醫療發展的潛力巨大。
第4章計算機網絡9342計算機網絡體係結構網絡體係結構是網絡技術中最基本的結構,要保證一個龐大而複雜的計算機網絡有條不紊地工作,就必須製定一係列的通信協議。
421網絡體係結構與協議標準化的研究在計算機網絡技術、產品與應用發展的同時,人們認識到必須研究和製定網絡體係結構與協議標準。一些大的計算機公司在開發計算機網絡研究與產品開發的同時,紛紛提出各種網絡體係結構與網絡協議。例如,IBM公司的係統網絡體係結構(SystemNetworkArchitecture,SNA)、DEC公司的數字網絡體係結構(DistributedNetworkArchitecture,DNA)與UNIVAC公司的分布式計算機體係的形成提供很多重要的經驗,很多網絡體係結構經過適當的修改後仍在廣泛使用。20世紀70年代後期,人們認識到不同的體係結構與協議標準不統一,將會限製計算機網絡自身的發展和應用,網絡體係結構與網絡協議必須走國際化的道路。
國際標準化組織成立計算機與信息處理標準化技術委員會(TC97),該委員會專門成立了一個分委員會(SC16),從事網絡體係結構與網絡協議的國際標準化問題研究,經過多年的努力,ISO正式製定了開放係統互聯(OpenSystemInterconnection,OSI)參考模型,即ISO/IEC7498國際標準。OSI參考模型與協議的研究成果對推動網絡體係結構理論的發展起了很大的作用。
在ISO/OSI參考模型發展的同時,TCP/IP協議與體係結構也逐漸發展起來。
在1969年ARPANET的實驗性階段,研究人員就開始TCP/IP協議雛形的研究。到了1979年,越來越多的研究人員投入到TCP/IP協議的研究中。在1980年前後,ARPANET的所有主機都轉向了TCP/IP協議。到1980年1月,ARPANET向TCP/IP的轉換全部結束。在ISO/OSI參考模型製定過程中,TCP/IP協議已經成熟並開始應用,贏得了大量的用戶和投資。TCP/IP協議的成功促進了Internet的發展,Internet的發展又進一步擴大了TCP/IP協議的影響。TBM、DEC等大公司紛紛宣布支持TCP/IP協議,網絡操作係統和大型數據庫都支持TCP/IP協議。相比之下,符合OSI參考模型與協議標準產品遲遲沒有推出,妨礙了其他廠家開發相應硬件和軟件,從而影響了OSI研究成果的市場占有率,而隨著Internet的高速發展,TCP/IP協議與體係結構已成為業內公認的標準。
422兩種網絡體係結構1OSI參考模型的基本理念(1)OSI參考模型的提出從曆史上來看,製定網絡計算機標準起很大作用的兩大國際組織是:國際電報與電話谘詢委員會(ConsultativeCommitteeonInternationalTelegraphandTelephone,CCITT)和國際標準化組織(Internationalorganizationforstandardization,ISO)。CCITT和ISO的工作領域不同,CCITT主要從通信的角度考慮一些標準的製定,而ISO則關心信息處理與網絡體係結構。隨著科學技術的發展,通信與信息處理之間的界限變得比較模糊。於是,通信與信息處理就都成為CCITT與ISO共同關心的領域。1974年,ISO發布了著名的ISO、IEC7498標準,它定義了網絡互聯的七層框架,就是開發係統互聯的參考模型。在OSI框架下,進一步詳細規定了每層的功能,以實現開放係統環94新編大學計算機信息技術教程(第2版)境中的互連性(Interconnection)、互操作性(Interoperation)與應用的可移植性(Portability)。
CCITT的X.400建議書也定義了一些相似的內容。
(2)OSI參考模型的概念OSI中的“開放”是指隻要遵循OSI標準,一個係統就可以與位於世界上任何地方、同樣遵循統一標準的其他任何係統進行通信。在OSI標準的製定過程中,采用的方法是將整個龐大而複雜的問題劃分為若幹個容易處理的小問題,這就是分層的體係結構方法。在OSI標準中,采用的是三級抽象:體係結構(Architecture)、服務定義(ServiceDefinition)與協議規範(ProtocolSpecifications)。
OSI參考模型定義了開放係統的層次結構。層次之間的相互關係,以及各層所包括的可能服務。它是作為一個框架來協調與組織各層協議的製定,也是對網絡內部結構最精練地概括與描述。OSI標準中的各種協議精確定義了應該發送的控製信息,以及應該通過哪種過程來解釋這個控製信息,協議的規範說明具有最嚴格的約束。
OSI的服務定義詳細地說明了各層所提供的服務。某一層提供的服務是指該層級以下各層的一種能力,這種服務通過接口提供給更高一層。各層所提供的服務與這些服務的具體實現無關。同時,服務定義還定義了層與層之間的接口與各層使用的原語,但是並不涉及接口的具體實現方法。
OSI參考模型並沒有提供一個可以實現的方法。OSI參考模型隻是描述了一些概念,用來協調進程之間通信標準的製定。在OSI的範圍內,隻有各種協議是可以被實現的,而各種產品隻有和OSI的協議一致時才能互聯。也就是說,OSI參考模型並不是一個標準,而是一個在製定標準時所使用的概念性的框架。
(3)OSI參考模型的結構OSI是分層體結構的一個實例,每一層是一個模塊,用於執行某種主要功能,並具有自己的一套通信指令格式(稱為協議)。用於相同層之間通信的協議稱為對等協議。根據分而治之的原則,OSI將整個通信功能化為七個層次,其劃分層次的重要原則是:①網中各結點都具有相同的層次。②不同結點的同等層具有相同的功能。③同一結點內相鄰層之間通過接口通信。④每層可以使用下層提供的服務,並向其上層提供服務。⑤不同結點的同等層通過協議來實現同等層之間的通信。
(4)OSI參考模型各層的功能OSI參考模型結構包括了以下七層:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。OSI參考模型結構如圖44所示。
①物理層在OSI參考模型中,物理層是參考模型的最低層。物理層的主要功能是:利用傳輸介質為通信的網絡結點之間建立、管理和釋放物理連接,實現比特流的透明傳輸,為數據鏈路層提供數據傳輸服務。物理層的數據傳輸單元是“bit”。
②數據鏈路層在OSI參考模型中,數據鏈路層是參考模型的第二層。數據鏈路層的主要功能是:在物理層提供服務的基礎上,數據鏈路層在通信的實體間建立數據鏈路連接,傳輸以“幀”為單位的數據鋸,並采用差錯控製與流量控製方法,使有差錯的物理線路變成無差錯的數據線路。
③網絡層在OSI參考模型中,網絡層是參考模型的第三層。網絡層的主要功能是:通過路由選擇第4章計算機網絡95圖44OSI參考模型算法為分組通過通信子網選擇最適當的路徑,以及實現擁塞控製,網絡互聯等功能。網絡層的數據傳輸單元是分組。
④傳輸層在OSI參考模型中,傳輸層是參考模型的第四層,傳輸層的主要功能是向用戶提供可靠的端到端服務。傳輸層向高屏蔽了下層數據通信的細節,因此,它是計算機通信體係中關鍵的一層。
⑤會話層在OSI參考模型中,會話層是參考模型的第五層。會話層的主要功能是負責維護兩個節點之間會話連接的建立。
⑥表示層在OSI參考模型中,表示層是參考模型的第六層。表示層的主要功能是用於處理兩個通信係統中交換信息的方式,主要包括數據格式轉換、數據加密與解密、數據壓縮與恢複等功能。
⑦應用層在OSI參考模型中,應用層是參考模型的最高層。應用層的主要功能是為應用程序提供網絡服務。應用層需要識別並保證通信對方的可用性,使得協同工作的應用程序之間同步,建立傳輸錯誤糾正與保證數據完整性控製機製。
2TCP/IP參考模型各層的功能(1)TCP/IP參考模型的層次如圖45所示是為TCP/IP參考模型與OSI參考模型的對應關係。
TCP/IP參考模型可以分為四個層次:應用層(ApplicationLayer)、傳輸層(TransportLayer)、網際層(InternetLayer)、網絡接口層(HosttoNetworkLayer)。
從實現的功能角度來看,TCP/IP參考模型的應用層與OSI參考模型的應用層、表示層、會話層對應,TCP/IP參考模型的傳輸層與OSI參考模型的傳輸層對應,TCP/IP參考模型的96新編大學計算機信息技術教程(第2版)圖45TCP/IP參考模型與OSI參考模型的對應關係網際層與OSI參考模型的網絡層對應,TCP/IP參考模型的網絡接口層與OSI參考模型的數據鏈路層和物理賣勁對應。
(2)TCP/IP參考模型各層的主要功能①網絡接口層在TCP/IP參考模型中,網絡接口層是參考模型的最低層,它負責通過網絡發送和接收IP數據報。TCP/IP參考模型允許主機聯入網絡時使用多種現成的與流行的協議,例如局域網協議或其他一些協議。在TCP/IP參考模型的主機網絡層中,它包括各種類型的物理網協議,如局域網的Ethernet與TokenRing、分組交換網的X.25等。當這種物理網被用作傳送IP數據包的通道時,就可以認為是這一層的內容。這體現了TCP/IP協議的兼容性與適應性,它也為TCP/IP的成功奠定了基礎。
②網際層在TCP/IP參考模型中,網際層(也稱為互聯網絡層)是參考模型的第二層,它相當於OSI網絡層的無連接網絡服務。網際層負責將源主機的報文分組發送到目的主機,源主機與目的主機可以在一個網絡中,也可以在不同網絡中。
網際層的主要功能包括以下幾點:●來自傳輸層的分組發送請求。在收到分組發送請求之後,將分組裝入IP數據報,填充報頭,選擇發送路徑,然後將數據報發送到相應的網絡輸出線。
●處理接收的數據包。在接收到其他主機發送的數據包之後,檢查目的地址。如需要轉發,則選擇發送路徑,轉發出去;如目的地址為本結點IP地址,則除去報頭,將分組交送傳輸層處理。
●處理互聯的路由選擇、流控與擁塞問題。
在TCP/IP參考模型中網絡層協議是IP(InternetProtocol)協議。IP協議是一種不可靠無連接的數據包傳送服務的協議,它提供的是種“盡力而為”(BestEffort)服務,IP協議的協議數據單元是IP分組。
(3)傳輸層在TCP/IP參考模型中,傳輸層是參考模型的第三層,它負責在應用進程之間建立端到端通信。傳輸層用來在源主機與目的主機的對等實體之間建立用於會話的端到端連接。從這點上來說,TCP/IP參考模型與OSI參考模型的傳輸層功能相似。
在TCP/IP參考模型中的傳輸層,定義了兩種協議:傳輸控製協議(TransmissionControlProtocol,TCP)和用戶數據報協議(UserDatagramProtocol,UDP)。
第4章計算機網絡97①TCP是一種可靠的麵向連接的協議,它允許將一台主機的字節流無差錯地傳送到目的主機。TCP將應用層的字節流分成多個字節段,然後將每個字節段傳送到互聯層,發送到目的主機。當互聯層將接收到的字節段傳送給傳輸層時,傳輸層將多個字節段還原成字節流傳送到應用層。TCP協議需要完成流量控製功能,協調收發雙方的發送與接收速度,以達到正確傳輸的目的。
②UDP是一種不可靠的無連接協議,它主要用於不要求分組順序到達的傳輸中,分組傳輸順序檢查與排序由應用層完成。
(4)應用層在TCP/IP參考模型中,應用層是參考模型的最高層。應用層包括了所有的高層協議,並且總是不斷有新的協議加入。目前,應用層協議主要有遠程登錄協議(Telnet)、文件傳送協議(FileTransferProtocol,FTP)、簡單郵件傳輸協議(SimpleMailTransferProtocol,SMTP)、域名係統(DomainNameSystem,DNS)、超文本傳輸協議(HyperTextTransferProtocol,HTTP)等。
423網絡連接設備與傳輸介質1網絡連接設備網絡連接設備是把網絡中的通信線路連接起來的各種設備的總稱,這些設備包括中繼器、集線器、交換機、網關和路由器等設備。圖46為不同層次的網絡連接設備。
圖46不同層次的網絡連接設備(1)物理層。中繼器(Repeater)和集線器(Hub),用於連接物理特性相同的網段,這些網段隻是位置不同而已。Hub的端口沒有物理和邏輯地址。
(2)數據鏈路層。網橋(Bridge)和交換機(Switch),用於連接同一邏輯網絡中物理層規範不同的網段,這些網段的拓撲結構和其上的數據幀格式都可以不同。Bridge和Switch可以識別端口上所連設備的物理地址,但不能識別邏輯地址。
(3)網絡層。路由器(Router),用於連接不同的邏輯網絡。Router的每一個端口都有唯一的物理地址和所連網絡分配的邏輯地址。
(4)應用層。網關(Gateway),用於互聯網絡上使用不同協議的應用程序之間的數據通信,目前尚無硬件產品。
以下是常見的網絡互聯設備:98新編大學計算機信息技術教程(第2版)(1)中繼器。中繼器(Repeater)是用來延長網絡距離的互聯設備。局域網絡互聯長度是有限製的,例如,在10MB以太網中任何兩個數據終端設備允許的傳輸通路最多由5個中繼器、4個網段組成。Repeater可以增強線路上衰減的信號,它的兩端既可以連接相同的傳輸媒體,也可以連接不同的傳輸媒體,如一頭是同軸電纜,另一頭是雙絞線。
(2)集線器。集線器(Hub)實際上就是一個多端口的中繼器,它有一個端口與主幹網相連,並有多個端口連接一組工作站。它應用於使用星型拓撲結構的網絡中,連接多個計算機或網絡設備。
集線器就是一種共享設備,本身不能識別目的地址,當同一局域網內的A主機給B主機傳輸數據時,數據包在以Hub為架構的網絡上是以廣播方式傳輸的,由每一台終端通過驗證數據包頭的地址信息來確定是否接收。也就是說,在這種工作方式下,同一時刻網絡上隻能進行傳輸一組數據幀的通信,如果發生碰撞還得重試。這種方式就是共享網絡帶寬。
中繼器和集線器屬於OSI和TCP/IP模型的最底層,即物理層,起到數字信號放大和中轉的作用。網橋和交換機屬於OSI和TCP/IP的第二層,即數據鏈路層。數據鏈路層的作用包括數據鏈路的建立、維護和拆除、幀包裝、幀傳輸、幀同步、幀差錯控製以及流量控製等。
(3)網橋。網橋(Bridge)工作在數據鏈路層,根據MAC地址(物理地址)來轉發幀,將兩個局域網(LAN)連起來,可以看作是一個“低層的路由器”。它可以有效地連接兩個LAN,使本地通信限製在本網段內,並轉發相應的信號至另一網段。網橋通常用於連接數量不多的、同一類型的網段。
(4)交換機。交換機又稱交換式集線器,交換機的原理同網橋,隻不過它的端口比網橋多,因此一般也稱之為多端口網橋。交換機主要在網絡中用於完成與它相連的線路之間的數據單元的交換,是一種基於MAC(網卡的硬件地址)識別,完成封裝、轉發數據包功能的網絡設備。在局域網中可以用交換機來代替集線器,其數據交換速度比集線器快得多。
利用交換機連接的局域網叫交換式局域網。在用集線器連接的共享式局域網中,當數據和用戶數量超過一定的限量時,就會發生堵塞的現象。交換式局域網則不同,交換機為每個用戶提供專用的信息通道,除非兩個源端口企圖同時將信息發往同一個目的端口,負責各個源端口與各自的目的端口之間可同時進行通信而不發生衝突。除了在工作方式上與集線器不同之外,交換機在連接方式、速度選擇等方麵與集線器基本相同。
(5)路由器。路由器是一種連接多個網絡或網段的網絡設備,它能將不同網絡或網段之間的數據信息進行“翻譯”,以使它們能夠相互“讀”懂對方的數據,實現不同網絡或網段間的互聯互通,從而構成一個更大的網絡。目前,路由器已成為各種骨幹網絡內部之間、骨幹網絡之間、一級骨幹網和因特網之間連接的樞紐。校園網一般就是通過路由器連接到因特網上的。
路由器的工作方式與交換機不同,交換機利用物理地址(MAC地址)來確定轉發數據的目的地址,而路由器則是利用網絡地址(IP地址)來確定轉發數據的地址。另外,路由器具有數據處理、防火牆及網絡管理等功能。
(5)網關。網關(Gateway)是一種複雜的網絡連接設備,它工作在OSI的高三層(會話層、表示層和應用層),用於連接網絡層之上執行不同協議的子網,組成異構的互聯網。網關具有對不兼容的高層協議進行轉換的功能。為了實現硬件、數據結構以及使用協議等不同的異構設備之間的通信,網關要對不同的傳輸層、會話層、表示層、應用層協議進行翻譯和轉換。
2網絡傳輸介質網絡傳輸介質是網絡中發送方與接收方之間的物理通路,它對網絡的數據通信具有一定第4章計算機網絡99的影響。常用的傳輸介質有雙絞線、同軸電纜、光纖、無線傳輸媒介。無線傳輸媒介是指信號通過空氣傳輸,而不被約束在一個物理導體內,一般包括無線電波、微波及紅外線等。
(1)雙絞線雙絞線(TwistedPair,TP)是目前使用最廣、價格相對便宜的一種傳輸介質,由兩條相互絕緣的銅導線組成。這兩條線絞在一起,可以減少對鄰近線對的電氣幹擾,因為兩條平行的金屬線可以構成一個簡單的天線,而雙絞線則不會。
由若幹對雙絞線構成的電纜稱為雙絞線電纜。雙絞線可以並排放在保護套中。目前雙絞線電纜廣泛應用於電話係統。幾乎所有的電話機都是通過雙絞線接到電話局的。在雙絞線中傳輸的信號在幾千米的範圍內不需放大,但傳輸距離比較遠時就必須使用放大器。
雙絞線既能傳輸模擬信號,又能傳輸數字信號。用雙絞線傳輸數字信號時,其數據傳輸率與電纜的長度有關,距離短時,數據傳輸率可能高一些。在幾千米的範圍內,雙絞線的數據傳輸率可達10Mbps,甚至100Mbps,因而可以采用雙絞線來構成價格便宜的計算機局域網。
雙絞線的技術和標準都是比較成熟的,價格也比較低廉,而且雙絞線電纜的安裝也相對容易。雙絞線電纜的最大缺點是對電磁幹擾比較敏感,另外雙絞線電纜不能支持非常高速的數據傳輸。
(2)同軸電纜同軸電纜(CoaxialCable)也是一種常用的傳輸介質。同軸電纜中的材料是共軸的,同軸之名正是由此而來。外導體是一個由金屬絲編織而成的圓形空管,內導體是圓形的金屬芯線,內外導體之間填充著絕緣介質,內芯線和外導體一般都采用銅質材料,如圖47所示。同軸電纜可以是單芯的,也可以是將多條同軸電纜安排在一起形成的同軸電纜。
圖47同軸電纜可按不同的極性對同軸電纜進行分類。
①按直徑的不同可分為粗纜和細纜。
粗纜:傳輸距離長,性能好,但成本高,網絡安裝、維護困難,一般用於大型局域網的幹線,使用時兩端需要接上終接器。
細纜:與BNC網卡相連,兩端裝50Ω的終端電阻。用T形頭,T形頭之間的間距最小為0.5m。細纜網絡每段幹線長度最大為185m,每段幹線最多接入30個用戶。如采用4個中繼器連接5個網段,網絡最大距離可達925m。
②按傳輸頻帶的不同分為基帶同軸電纜和寬帶同軸電纜。
基帶同軸電纜主要用於傳輸數字信號,信號占整個信道,同一時間內能傳送一種信號,可以作為計算機局域網的傳輸介質。基帶同軸電纜的帶寬取決於電纜長度。1km電纜可達到10Mbps的數據傳輸率,電纜增長,其數據傳輸率將會下降。短電纜可獲得較高的數據傳輸率。
寬帶同軸電纜用於傳輸模擬信號,可傳送不同頻率的信號。“寬帶”這個詞來源於電話業,是指比4kHz寬的頻帶。寬帶電纜技術使用標準的閉路電視技術,可以使用的頻帶高達100新編大學計算機信息技術教程(第2版)900MHz。由於其使用模擬信號,故可傳輸近100km,對信號的要求也遠沒有像對數字信號要求得那樣高。
同軸電纜的低頻串音及抗幹擾性不如雙絞線電纜,但當頻率升高時,外導體的屏蔽作用加強,同軸電纜所受的外界幹擾以及同軸電纜間的串音都將隨頻率的升高而減小,因而特別適用於高頻傳輸。由於同軸電纜具有壽命長、頻帶寬、質量穩定、外界幹擾小、可靠性高、維護便利、技術成熟等優點,而且其費用又介於雙絞線與光纖之間,在光纖通信沒有大量應用之前,同軸電纜在閉路電視傳輸係統中一直占主導地位。
(3)光纖隨著光通信技術的飛速發展,人們已經可以利用光導纖維來傳輸數據。用光脈衝的出現表示1,不出現表示0。由於可見光所處的頻段為108MHz左右,因而光纖傳輸係統可以使用的帶寬範圍極大。事實上,目前的光纖傳輸技術使得人們可以獲得超過50000GHz的帶寬,今後將有可能實現完全的光交叉和光互連,即構成全光網絡,那時網絡的速度將成千上萬倍地增加。
光纖傳輸係統由三個部分組成:光纖傳輸介質、光源和檢測器。
光纖是圓柱形結構,如圖48所示,它包含有纖芯和包層,纖芯直徑為5μm~75μm,包層的外直徑約為100μm~150μm,最外層是塑料,對纖芯起保護作用。
圖48光纖光纖一般有單模光纖和多模光纖兩種。單模光纖很昂貴,且需要激光光源,但其傳輸距離非常遠,且能獲得非常高的數據傳輸率。目前在實際中用到的光纖係統能以2.4Gbps的速率傳輸100km,而且不需要中繼。若在實驗室裏,則可以獲得更高的數據傳輸率。多模光纖相對來說傳播距離要短些,數據傳輸率也要小於單模光纖,但多模光纖的優點在於價格便宜,並且可以用發光二極管作為光源。單模光纖與多模光纖的比較如表41所示。
表41單模光纖和多模光纖對比項目單模光纖多模光纖距離長短數據傳輸率高低光源激光發光二極管信號衰減小大小大端接較難較易造價高低光纖支持十分高的帶寬,因為它們僅受光的高頻光子特性的限製,而不受電信號的低頻特性限製。光纖通信的優點是頻帶寬、傳輸容量大、重量輕、尺寸小、不受電磁幹擾和靜電幹擾、無串音幹擾、保密性強、原料豐富、生產成本低。因此,由多條光纖構成的光纜已成為當前主要第4章計算機網絡101發展的傳輸介質。
(4)無線電波信息時代的人們對信息的需求是多樣的。很多人需要隨時保持在線連接,他們需要利用筆記本計算機、掌上型計算機隨時隨地獲取信息,對於用戶的這些需求,雙絞線、同軸電纜和光纖都無法滿足,而無線介質可以解決這個問題。
無線電波的傳播特性與頻率有關。在低頻上,無線電波能輕易地繞過一般障礙物,但其能量隨著傳播距離的增大而急劇衰減。在高頻上,無線電波趨於直線傳播並易受障礙物的阻擋,還會被雨水吸收。對於所有頻率的無線電波來說,它很容易受到其他電子設備的各種電磁幹擾。
(5)微波微波是指頻率為300MHz~300GHz的電磁波,是無線電波中一個有限頻帶的簡稱,即波長在1m(不含1m)~1mm之間的電磁波,是分米波、厘米波、毫米波和亞毫米波的統稱。
微波頻率比一般的無線電波頻率高,通常也稱為“超高頻電磁波”。
微波通信按所提供的傳輸信道可分為模擬和數字兩種類型,分別簡稱為“模擬微波”與“數字微波”。目前,模擬微波通信主要采用頻分多路複用技術和頻移鍵控調製方式,其傳輸容量可達30~6000個電話信道。
微波通信在傳輸質量上比較穩定,但微波在雨雪天氣時會被吸收,從而造成損耗。與同軸電纜相比,由於微波通信的中繼站數目比同軸電纜的增音站數目(在同軸電纜係統中,增音站間距為幾千米)少得多,而且不需要鋪設電纜,所以其成本低得多,在當前的長距離通信方麵是一種十分重要的手段。微波通信的缺點是保密性不如電纜和光纜好,對於保密性要求比較高的應用場合需要另外采取加密措施。目前,數字微波通信被大量應用於計算機之間的數據通信。
(6)紅外線紅外線是太陽光線中眾多不可見光線中的一種,又稱為紅外熱輻射,在太陽光譜中,紅光的外側存在著看不見的光線,即紅外線,它可以作為傳輸媒介。太陽光譜上紅外線的波長大於可見光線,波長為0.75μm~1000μm。紅外線可分為三部分,即近紅外線,波長在0.75μm~1.50μm之間;中紅外線,波長在1.50μm~6.0μm之間;遠紅外線,波長在6.0μm~1000μm之間。
424網絡拓撲結構計算機網絡拓撲結構是指網絡中的通信設備和通信鏈路所組成的幾何形狀。計算機網絡的拓撲結構按形狀通常可以分為以下幾種類型:星形、總線形、環形、樹形、網狀形和混合型拓撲結構。
1星形拓撲結構星形拓撲結構如圖49所示,網絡中的每個結點都由一條點到點鏈路連接到一個功能較強的中心結點(集線器或交換機),各個結點之間不能直接通信,而要通過中心結點采用存儲轉發技術才能實現兩個結點之間的數據幀的傳輸。目前,在局域網係統中普遍采用星形拓撲結構。
星形拓撲結構的優點是:網絡結構簡單,便於安裝、管理和維護;采用集線器或交換機進行級聯,易於擴展和升級。其缺點是:通信線路專用,需要大量的連接電纜,成本較高;中心結點102新編大學計算機信息技術教程(第2版)是網絡可靠性的“瓶頸”,一旦出現故障,會導致全網癱瘓。
2總線形拓撲結構總線形拓撲結構如圖410所示,網絡上的所有結點采用一條單根的通信線路(總線)作為傳輸信道,所有結點通過相應的接口直接連接到總線上。總線型拓撲結構的網絡采用廣播技術進行通信,即一個結點發出的信息可被網絡上的多個結點接收,每個結點接收到信息後,先分析該信息中的目的地址是否與本機地址相同,如果相同就接收,否則忽略。由於所有結點共享同一條公共通道,所以在任何時候隻允許一個結點發送數據。
圖圖49星形拓撲結構410總線形拓撲結構總線形拓撲結構的優點是:一般采用同軸電纜連接,不需要中繼設備,建網成本較低;網絡結構簡單靈活,可擴充性較好,安裝使用方便。其缺點是:采用廣播傳輸方式,網絡效率和帶寬利用率較低;某個結點故障或者總線電纜的斷裂都會導致整個網絡癱瘓,而且進行故障點的排查較為困難。
3環形拓撲結構環形拓撲結構如圖411所示,網絡上的所有結點通過環結點連在一個首尾相接的閉合的環形通信線路中,稱為環形拓撲結構。環形拓撲結構有兩種類型;單環結構和雙環結構。令牌環網(TokenRing)采用單環結構,而光纖分布式數據接口(FiberDistributedDataInterconnect,FDDI)是雙環結構的典型代表。
環形拓撲結構的優點是:各個工作站之間沒有主從關係,結構簡單;信息流在網絡中沿環單向傳遞,延遲固定,實時性較好;兩個結點之間僅有唯一的路徑,簡化了路徑選擇。其缺點是:可靠性差,任何線路或結點的故障都有可能引起全網故障,且故障檢測困難;可擴充性較差。
4樹形拓撲結構樹形拓撲結構如圖412所示。樹形拓撲結構是總線形和星形結構的擴展。在樹形拓撲結構中,頂端由一個根結點,它帶有分支,每個分支還可以有子分支,其幾何形狀像是一棵倒置的樹,故得名樹形拓撲結構。
樹形拓撲結構的優點是:天然的分級結構,各結點按一定的層次連接;易於擴展;易進行故障隔離,可靠性高。其缺點是:對根結點的依賴性大,一旦根結點出現故障,將導致全網癱瘓。
圖411環形拓撲結構圖412樹形拓撲結構第4章計算機網絡1035網狀拓撲結構網狀拓撲結構如圖413所示,在網狀結構中,網絡結點與通信線路互聯成不規則的形狀,結點之間沒有固定的連接形式,一般每個結點至少與其他兩個結點相連。目前一般在大型網絡中采用這種結構。
網狀結構的優點是:每個結點都有冗餘鏈路,可靠性高;可選擇最圖413網狀拓撲結構佳路徑,減少時延,改善流量分配,提高網絡性能。其缺點是:結構複雜,必須采用路由選擇和流量控製方法;線路成本較高。
6混合型拓撲結構混合型拓撲結構是由以上幾種拓撲結構混合而成的,如星形總線形拓撲結構是由星形拓撲結構和總線型拓撲結構混合而成的,還有環星狀拓撲結構等。
43局域網與廣域網431局域網1局域網的定義局域網(LocalAreaNetwork,LAN)是指在幾十米到幾千米範圍內的計算機相互連接所構成的計算機網絡。一個局域網可以容納幾台至幾千台計算機。目前,計算機局域網被廣泛應用於校園、工廠及企事業單位的個人計算機或工作站的組網方麵。
局域網是一個通信網絡,它僅提供通信功能。局域網包含了物理層和數據鏈路層的功能,所以連到局域網的數據通信設備必須加上高層協議和網絡軟件才能組成計算機網絡。
局域網連接的是數據通信設備包括PC、工作站、服務器等大、中小型計算機和智能終端設備以及各種計算機外圍設備。
2局域網的特點由於局域網傳輸距離有限,網絡覆蓋的範圍小,因而具有以下主要特點:局域網覆蓋的地理範圍較小、數據傳輸率高(可到10000Mbps)、傳輸延時小、誤碼率低、價格便宜,一般是為某一單位或組織所擁有。
3局域網的發展趨勢局域網是一個開放的信息平台,可以隨時集成新的應用。未來的局域網將集成包括一整套服務器程序、客戶程序、防火牆、開發工具、升級工具等,給企業向局域網轉移提供一個全麵的解決方案。
隨著無線局域網(WLAN)產品迅速發展並走向成熟,許多企業為了提高員工的工作效率,開始部署無線網絡。包括中學及大學在內的許多學校也開始實施無線網絡,隨著家庭電腦的普及和住房裝修的高檔化,家庭無線網絡也成為一個潛在的市場。
4局域網的基本原理計算機局域網的邏輯組成如圖414所示,它包括網絡工作站(PC機、平板電腦、智能手機等)、網絡服務器、網絡打印機、網絡接口卡、傳輸介質(雙絞線、光纜、無線電波等)、網絡互連設備(集線器、交換機等)等。
104新編大學計算機信息技術教程(第2版)圖414局域網的邏輯組成網絡上的每一台設備,包括網絡工作站、服務器以及打印機等,它們都有自己的物理地址,以便相互區別,實現計算機之間的通信。
局域網采用分組交換技術,為了使網絡上的計算機都能得到迅速而公平的數據傳輸機會,局域網要求每台計算機把傳輸的數據分成小塊,稱為“幀”(frame),一次隻能傳輸1幀,而不允許任何計算機連續傳輸任意多的數據,這樣來自多台計算機的不同的數據幀就以時分多路複用方式共享傳輸介質,顯著提高了傳輸效率。