第1章 微型計算機概述
摘要 本章首先介紹微型計算機的發展概況,并從應用角度出發,介紹微型計算機中數的表示及編碼方法,最后介紹微機系統的概念、組成和各部分的功能、特點。本章內容將對后續章節的學習打下良好的基礎。
1.1 微型計算機發展簡史
微型計算機是由大規模集成電路組成的、體積較小的電子計算機。而電子計算機又是一種能夠按照事先存儲的程序,自動、高速地進行大量數值計算和各種信息處理的現代化智能電子設備。微型計算機是電子計算機發展的一個分支。
1.1.1 微型計算機的硬件發展
1.電子計算機的發展概況
電子計算機的誕生及發展,是科學技術和生產力發展的卓越成就之一,反過來,它也極大地促進了科學技術和生產力的發展。1946年,在美國賓夕法尼亞大學莫爾電工學院誕生了世界上第一臺電子計算機ENIAC(electronic numerical integrator and computer)。它使用了18800多個電子管和1500多個繼電器,重達30t,占地150m2,耗電150kW,每秒可以完成5000次加法運算。從此以后,電子計算機為世人矚目,而且對它寄予了無限的厚望。自從第一臺電子計算機問世以來,計算機科學和技術獲得了日新月異的飛速發展。計算機的發展大致經歷了以下4代。
(1)第一代:電子管計算機
發展年代為1946—1958年。這一代計算機的主要邏輯元件采用電子管,存儲器采用磁芯和磁鼓,軟件主要使用機器語言。在此期間,形成了電子管計算機體系,確定了程序設計的基本方法,數據處理機(指專門用于數據處理的計算機)開始得到應用。此時的計算機運算速度一般為每秒幾千至幾萬次,體積龐大,成本很高。雖然它的體積、速度、軟件等方面都不能與今天的微型計算機相比,但它卻奠定了計算機科學和技術的發展基礎。這一代計算機主要應用于科學計算。
(2)第二代:晶體管計算機
發展年代為1958—1965年。這一代計算機的主要邏輯元件為晶體管,主存儲器仍采用磁芯,外存儲器已開始使用磁盤,軟件也有較大發展,出現了各種高級語言。在此期間,計算機的可靠性和速度均得到提高,速度一般為每秒幾萬次至幾十萬次,體積減小,成本降低。工業控制機(指專門用于工業生產過程控制的計算機)開始出現并得到應用。這一代計算機除用于科學計算外,也開始應用于各種事務的數據處理、工業控制等領域。
(3)第三代:集成電路計算機
發展年代為1965—1971年。這一代計算機的主要邏輯元件采用中小規模集成電路。在此期間,計算機的可靠性和速度都有了進一步的提高,速度一般為每秒幾十萬至幾百萬次,體積進一步減小,成本進一步降低。小型計算機(指規模小,結構簡單,操作方便的計算機)開始出現并迅速發展,操作系統、會話式高級語言等軟件發展迅速。機種多樣化,生產系列化,結構積木化,使用系統化是這一階段計算機發展的主要特點。
(4)第四代:大規模集成電路計算機
發展年代為1971年至今。這一代計算機采用大規模集成電路(LSI,large scale integrator)或超大規模集成電路(VLSI,very large scale integrator)。由于LSI和VLSI的體積小,耗電少,可靠性高,因而使這一階段的計算機體積更小,可靠性和運算速度更高,成本更低。計算機的速度可達每秒運算幾千萬至上億次。超大規模集成電路的發明,使電子計算機不斷向著小型化、微型化、低功耗、智能化、系統化的方向更新換代。同時,以并行處理為特征的用于科學計算和尖端技術中的巨型機也得到了發展,由若干臺計算機組成的計算機網絡也已開始實際使用。
目前,用計算機進行的輔助設計、翻譯、檢索、繪圖、寫作、游戲、機械作業等方面的發展,已經向計算機的智能化邁進了一步。人工智能是綜合了計算機科學與控制理論而發展的一門新技術,它能模擬人的智能,如識別圖形、語言、物體等。電子計算機對社會的發展將帶來不可估量的影響。電子計算機的發展概況見表1.1。
表1.1 電子計算機的發展概況
微型計算機是20世紀70年代初才發展起來的,是人類重要的創新之一。從微型計算機問世至今經歷了以下幾個發展階段。
(1)第一代:低檔8位微處理器和微型計算機
發展年代為1971—1973年,是微型計算機的問世階段。1971年美國Intel公司生產了4004芯片,它本來是為高級袖珍計算機設計的,但生產出來后卻獲得了意外的成功。經過改進,于1972年生產了8位微處理器8008。這一代微型計算機的特點是采用PMOS(P-channel metal oxide semiconductor)工藝,集成度為每個硅片上集成2300個晶體管,字長分別為4位和8位,運算速度較慢,指令系統不完整,存儲器容量很小,只有幾百字節,沒有操作系統,只有匯編語言,主要用于工業儀表和過程控制。
(2)第二代:中檔8位微處理器和微型計算機
發展年代為1973—1977年。這一代微型計算機采用(NMOS,N-channel metal oxide semiconductor)工藝,集成度提高了1~4倍,每個硅片上集成了8000個晶體管,字長為8位。運算速度提高了10~15倍,基本指令執行時間為2ms左右,指令系統相對比較完善。典型的微處理器有1973年生產的Intel 8085,Motorola 6800,以及1976年Zilog 公司生產的Z80。這些微處理器具有完整的接口電路,如可編程的并行接口電路、串行接口電路、定時/計數器接口電路,以及直接存儲器存取接口電路等,并且已具有高級中斷功能。軟件除采用匯編語言外,還配有BASIC,FORTRAN,PL/M等高級語言及其相應的解釋程序和編譯程序,并在后期配上了操作系統。
(3)第三代:16位微處理器和微型計算機
發展年代為1977—1984年。1977年前后,超大規模集成電路(VLSI)工藝的研制成功,使一個硅片上可以容納10萬個以上的晶體管,64K位及256K位的存儲器已生產出來。這一代微型計算機采用(HMOS,high performance metal oxide semiconductor)工藝,基本指令執行時間約為0.5ms。代表產品是Intel的8086、Zilog的Z8000和Motorola的MC68000。這類16位微處理器比8位微處理器有更大的尋址空間、更強的運算能力、更快的處理速度和更完善的指令系統。軟件方面可以使用多種編程語言,有匯編程序、完整的操作系統、大型的數據庫,并可構成多處理器系統。此外,在這一階段,為了方便原來的8位機用戶,還出現了一種準16位的微處理器,典型產品有Intel 8088和Motorola 6809,它們的特點是能用8位數據線在內部完成16位數據操作,工作速度和處理能力均介于8位機和16位機之間。
(4)第四代:32位微處理器和微型計算機
發展年代為1984—1993年。20世紀80年代初,在每個單片硅片上可集成幾十萬個晶體管,產生了第四代32位微處理器。典型產品有Intel的80386、National Semiconductor的16032、Motorola的68020等。在32位微處理器中,具有支持高級調度、調試及系統開發的專用指令。由于集成度高,系統的速度和性能大為提高,可靠性增加,成本降低。
(5)第五代:64位高檔微處理器和微型計算機
發展年代為1993年至今。隨著人們對圖形圖像、定時視頻處理、語音識別、計算機輔助設計(CAD,computer-aided design)、計算機輔助工程(CAE,computer-aided engineering)、計算機輔助教學(CAI,computer-aided instruction)、大規模財務分析和大流量客戶、服務器應用等的需求日益迫切,現有的微處理器已難以勝任此類任務。于是,在1993年3月,Intel公司率先推出了統領(PC,personal computer)達10余年之久的第五代微處理器體系結構產品——Pentium(奔騰),代號為P5,也稱為80586。從它的設計制造工藝到性能指標,都比第四代產品有了大幅度的提高。微型計算機的發展概況見表1.2。
表1.2 微型計算機的發展概況
80x86、Pentium及Core微處理器是Intel公司的系列產品,微處理器芯片從低級向高級、從簡單到復雜的發展過程,也可以看成個人計算機家族的進化史。其設計、制造和處理技術的不斷更新換代,以及處理能力的不斷增強,使微型計算機的應用領域越來越廣泛。
(1)Intel 8086微處理器
1978年Intel公司生產的8086是第一個16位的微處理器。這就是第三代微處理器的起點。8086微處理器最高主頻速度為8MHz,具有16位數據總線,內存尋址能力為1MB。
1979年,Intel公司又開發出了8088。8086和8088在芯片內部均采用16位數據傳輸,所以都稱為16位微處理器,但8086每個總線周期能傳送或接收16位數據,而8088每個總線周期只能傳送或接收8位數據。因為最初的大部分設備和芯片是8位的,而8088的外部8位數據傳送、接收能與這些設備相兼容,所以8088得到了廣泛的應用。8088采用40針的(DIP,dual in-line package)封裝,工作頻率為6.66MHz,7.16MHz或8MHz,微處理器集成了大約29000個晶體管。
(2)Intel 80286微處理器
1982年,Intel公司在8086的基礎上,研制出了80286微處理器,該微處理器的最大主頻為20MHz,內、外部數據傳輸均為16位,使用24位內存儲器的尋址,內存尋址能力為16MB。80286有兩種工作方式,分別是實模式和保護方式。在實模式下,微處理器可以訪問的內存總量限制在1MB。而在保護方式之下,80286可直接訪問16MB的內存。此外,80286工作在保護方式下,可以保護操作系統,使之不像實模式或8086等不受保護的微處理器那樣,在遇到異常時會使計算機停機。
80286在以下4個方面有顯著的改進:支持更大的內存;能夠模擬內存空間;能同時運行多個任務;提高了處理速度。最早,PC的速度是4MHz,第一臺基于80286的AT機運行速度為6~8MHz,一些制造商還自行提高速度,使80286達到了20MHz,這意味著在性能上有了重大的進步。
(3)Intel 80386微處理器
1985年,Intel公司研制開發出Intel 80386 DX微處理器,其內部包含27.5萬個晶體管,時鐘頻率為12.5MHz,每秒可執行6百萬條指令,比80286快2.2倍。后來逐步提高到20MHz,25MHz,33MHz,最后還有少量的40MHz產品。
80386 DX的內部和外部數據總線是32位的,地址總線也是32位的,可以尋址4GB內存,并可以管理64TB的虛擬存儲空間。它的運算模式除了具有實模式和保護模式外,還增加了一種“虛擬8086”的工作方式,可以通過同時模擬多個8086微處理器來提供多任務處理能力。80386還有較豐富的外圍配件支持,如82258(DMA控制器)、8259A(中斷控制器)、8272(磁盤控制器)、82385(Cache控制器)、82062(硬盤控制器)等。同時,針對內存的速度瓶頸,Intel公司為80386設計了高速緩存(Cache),采取預讀內存的方法來緩解速度瓶頸,從此,Cache就成了CPU的標準配件。
(4)Intel 80486微處理器
1989年,Intel推出80486芯片。這款芯片首次使用1mm的制造工藝,突破了100萬個晶體管的界限,單個硅片上集成了120萬個晶體管。80486的時鐘頻率從25MHz逐步提高到33MHz,40MHz,50MHz。80486中集成的80487的運算速度是以前80387的兩倍,內部緩存縮短了微處理器與慢速DRAM之間的等待時間。并且,在80486系列中首次采用了精簡指令集(RISC,reduction instruction set computer)技術,可以在一個時鐘周期內執行一條指令。它還采用了突發總線方式,大大提高了與內存的數據交換速度。由于這些改進,80486的性能比80386 DX性能提高了4倍。
(5)Intel Pentium微處理器
1993年,586 CPU問世,被命名為Pentium(奔騰)以區別于AMD和Cyrix的產品。最初的Pentium 60和Pentium 66,工作頻率分別為60MHz和66MHz。早期的奔騰時鐘頻率為75MHz~120MHz,使用0.5mm的制造工藝,后期120MHz頻率以上的奔騰則改用0.35mm工藝。經典奔騰的性能相當平均,整數運算和浮點運算都不錯。
(6)Intel Pentium MMX微處理器
1996年底,Intel公司發布了多能奔騰微處理器Pentium MMX,意為帶有多媒體擴展指令集(MMX,MultiMedia eXtensions)技術的Pentium。多能奔騰在原Pentium的基礎上進行了重大的改進,增加了片內16KB數據L1 Cache,16KB指令L1 Cache,4路寫緩存以及分支預測單元和返回堆棧技術,64位總線,528MB/s的頻寬,450萬個晶體管,功耗17W。支持的工作頻率有133MHz、150MHz、166MHz、200MHz、233MHz。特別是新增加的57條MMX多媒體指令,使得多能奔騰即使在運行非MMX優化的程序時,也比同主頻的Pentium CPU要快得多。
(7)Intel PentiumⅡ微處理器
1997年,Pentium Ⅱ(奔騰二代)微處理器面世,它采用了雙重獨立總線結構,即其中一條總線連通二級緩存,另一條負責內存。PentiumⅡ使用了一種脫離芯片的外部高速L2 Cache,容量為512KB,并以CPU主頻的一半速度運行,同時PentiumⅡ的L1 Cache從16KB增至32KB。
(8)Intel Pentium Ⅲ微處理器
1999年,Intel公司發布了采用Katmai核心的新一代Pentium Ⅲ微處理器。該微處理器除采用0.25mm工藝制造,內部集成950萬個晶體管,Slot1架構之外,它還具有以下新特點:系統總線頻率為100MHz;采用P6微架構,針對32位應用程序進行優化,雙重獨立總線,一級緩存大小為32KB(16KB指令緩存加16KB數據緩存),二級緩存大小為512KB,以CPU核心速度的一半運行;新增加了能夠增強音頻、視頻和3D圖形效果的數據流單指令多數據擴展(SSE,streaming SIMD extensions)指令集。
(9)Intel Pentium 4微處理器
2000年6月,Intel公司推出了Pentium 4微處理器,它的工作頻率在1.3GHz以上,工作電壓為1.565~1.700V。P4微處理器不但擁有更高的時鐘頻率,并且支持Intel超線程技術HT(hyper threading)技術。超線程技術就是利用特殊的硬件指令,把兩個邏輯內核模擬成兩個物理芯片,讓單個處理器都能使用線程級并行計算,進而兼容多線程操作系統和軟件,縮短了CPU的閑置時間,提高了CPU的運行效率,使一塊芯片的性能幾乎相當于兩塊。
(10)Intel Core微處理器
2006年7月27日,Intel正式發布了基于Core(酷睿)微架構(core micro-architecture)的全新雙核心處理器,包括Core 2 Duo和Core 2 Extreme,以及用于移動平臺的采用Merom核心的Core 2 Duo。Core微架構是Intel全平臺(臺式機、筆記本和服務器)處理器首次采用的相同的微架構設計,也是Intel鑒于NetBurst微架構的高頻低效高能耗的缺點,徹底拋棄以往頻率至上的理念,轉而注重能效比的第一次成功嘗試。全部采用65nm制造工藝,L2緩存容量提升到4MB,晶體管數量達到2.91億個,性能提升40%,能耗降低40%,主流產品的平均能耗為65W。
2010年1月,Intel公司推出了全新酷睿處理器i7、i5和i3系列產品。新產品的最大亮點就是采用32nm制造工藝,而且內建圖形核心,另外還有Intel最新的睿頻功能,可以讓CPU在實際應用中實現自動超頻。無數的評測已經證明,Core微架構不愧是目前最強大的x86 PC處理器微架構,其性能遠遠領先于以往所有PC處理器,而功耗又大幅度降低,是目前最強大的微處理器。Intel微處理器的發展年鑒見表1.3。
表1.3 Intel微處理器的發展
計算機軟件是指計算機系統中的程序及其文檔。程序是對計算任務的處理對象和處理規則的描述。文檔是為了便于了解程序所需的闡明性資料。計算機軟件總體分為系統軟件和應用軟件兩大類。系統軟件包括各類操作系統(如Windows、Linux、UNIX)、操作系統的補丁程序以及硬件驅動程序。應用軟件是為了某種特定的用途而被開發的軟件,較常見的有文字處理軟件、信息管理軟件、輔助設計軟件、實時控制軟件、教育與娛樂軟件等。
1.操作系統
從1946年誕生第一臺電子計算機以來,它的每一代進化都以減少成本、縮小體積、降低功耗、增大容量和提高性能為目標。隨著計算機硬件的發展,同時也加速了操作系統(OS,operating system)的形成和發展。早期的計算機并沒有操作系統,人們通過各種操作按鈕來控制計算機,后來出現了匯編語言,操作人員通過有孔的紙帶將程序輸入計算機進行編譯。這些將語言內置的計算機只能由操作人員自己編寫程序來運行,不利于設備、程序的公用。為了解決這種問題,就出現了操作系統,實現了程序的公用,以及對計算機硬件資源的管理。
操作系統的發展經歷了兩個階段。第一個階段為單用戶、單任務的操作系統,分別有CP/M、DR-DOS、PC-DOS和MS-DOS等磁盤操作系統。第二個階段是多用戶、多任務的分時操作系統,其典型代表有UNIX、XENIX、OS/2以及Windows操作系統。目前,計算機上常見的操作系統有DOS、OS/2、UNIX、XENIX、Linux、Windows、Netware等。
(1)DOS操作系統
DOS(disk operation system)硬盤操作系統主要包括Shell(command.com文件)和I/O接口(io.sys文件)兩個部分。Shell是DOS的外殼,負責將用戶輸入的命令翻譯成操作系統能夠理解的語言。DOS的I/O接口通常實現一組基于int 21h的中斷。
DOS操作系統的代表是MS-DOS,它是1980年基于8086微處理器而設計的單用戶操作系統。后來,Microsoft公司獲得了該操作系統的專利權,配備在IBM-PC機上,并命名為PC-DOS。1981年,Microsoft公司的MS-DOS 1.0版與IBM的PC機面世,這是第一個實際應用的16位操作系統。1987年,Microsoft公司發布MS-DOS 3.3版本,是非常成熟可靠的DOS版本,Microsoft公司取得個人操作系統的霸主地位。
從1981年問世至今,DOS經歷了7次大的版本升級,從1.0版到現在的7.0版,不斷改進和完善。但是,DOS系統的單用戶、單任務、字符界面和16位的大格局沒有變化,因此它對于內存的管理也局限在640KB的范圍內。DOS的優點是快捷。熟練的用戶可以通過創建BAT或CMD批處理文件完成一些煩瑣的任務。因此,即使在Windows XP下,CMD還是高手的最愛。
由于早期的DOS系統是Microsoft公司為IBM的PC機開發的,稱為MS-DOS,因此,后來其他公司開發的與MS-DOS兼容的操作系統,也沿用了這個稱呼,如PC-DOS、DR-DOS等。
(2)Windows操作系統
Windows操作系統是Microsoft公司在1985年11月發布的第一代窗口式多任務系統,它使PC機開始進入了圖形用戶界面時代。它采用了GUI圖形化操作模式,比從前的指令操作系統(如DOS)更為人性化。Windows 1.x版本是一個具有多窗口及多任務功能的版本,但由于當時的硬件平臺為PC/XT,速度很慢,所以Windows 1.x版本并未十分流行。1987年底,Microsoft公司又推出了MS-Windows 2.x版本,它具有窗口重疊功能,窗口大小也可以調整,并可把擴展內存和擴充內存作為磁盤高速緩存,從而提高了整臺計算機的性能,此外它還提供了眾多的應用程序。1990年,Microsoft公司推出了Windows 3.0版本,它的功能進一步加強,具有強大的內存管理功能,且提供了數量相當多的Windows應用軟件,因此成為80386和80486微型計算機新的操作系統標準。
1995年,Microsoft公司推出了Windows 95。在此之前的Windows都是由DOS引導的,也就是說,它們還不是一個完全獨立的系統。而Windows 95則是一個完全獨立的系統,并在很多方面做了進一步的改進,還集成了網絡功能和即插即用功能,是一個全新的32位操作系統。1998年,Microsoft公司推出了Windows 95的改進版Windows 98,Windows 98的一個最大特點就是把Microsoft公司的Internet瀏覽器技術整合到了Windows 95里面,使得訪問Internet資源就像訪問本地硬盤一樣方便,從而更好地滿足了人們越來越多的訪問Internet資源的需要。2000年2月,Microsoft公司推出Windows 2000,它是32位圖形商業性質的操作系統。Windows 2000有4個版本:Professional、Server、Advanced Server和Datacenter Server。
2003年3月28日,Microsoft公司發布了64位的Windows XP。字母XP代表英文單詞的“體驗”(experience)。根據不同的微處理器架構,Windows XP分為兩個不同版本,IA-64版的Windows XP和x86-64版的Windows XP。IA-64版的Windows XP是針對Intel IA-64架構的安騰2(Itanium2)純64位微處理器的操作系統,稱為Windows XP 64-Bit Edition Version 2003 for Itanium-based Systems。
2006年11月30日,Microsoft公司發布全新的Windows Vista操作系統。Vista是目前最安全可信的Windows操作系統,其安全功能可以防止最新的威脅,如蠕蟲、病毒和間諜軟件。
據報道,Windows 8將在2012年發布。
(3)UNIX操作系統
UNIX操作系統是一個強大的多用戶、多任務操作系統,支持多種處理器架構,屬于分時操作系統。UNIX最早是由Ken Thompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T(American Telephone & Telegraph)公司的貝爾實驗室開發的。經過長期的發展和完善,UNIX目前已成長為一種主流的操作系統技術和基于這種技術的產品大家族。由于UNIX具有技術成熟、結構簡練、可靠性高、可移植性好、可操作性強、網絡和數據庫功能強、伸縮性突出和開放性好等特點,可滿足各行各業的實際需要,特別能滿足企業重要業務的需要,因此它已經成為主要的工作站平臺和重要的企業操作平臺。UNIX主要安裝在巨型計算機、大型機上作為網絡操作系統使用,也可用于個人計算機和嵌入式系統。
最初的UNIX是用匯編語言編寫的,后來也有用B語言和匯編語言混合編寫的。因為B語言在進行系統編程時不夠強大,所以1973年Thompson和Ritchie用C語言重寫了UNIX。用C語言編寫的UNIX代碼簡潔緊湊、易移植、易讀、易修改,為UNIX此后的發展奠定了堅實基礎。
1975年,UNIX的4、5、6三個版本先后面世。1978年,已經有大約600臺計算機在運行UNIX。1979年,UNIX版本7發布,這是最后一個廣泛發布的研究型UNIX版本。20世紀80年代相繼發布的8、9、10版本只授權給了少數大學和研究所。1982年,具有UNIX所有權的AT&T公司基于版本7開發了UNIX System Ⅲ的第一個版本,為了解決混亂的UNIX版本情況,AT&T綜合了其他大學和公司開發的各種UNIX,開發了UNIX System V Release 1。這個UNIX商業發布版本不再包含源代碼。所以加州大學Berkeley分校繼續開發BSD UNIX,作為UNIX System III和V的替代選擇。BSD對UNIX最重要的貢獻之一是TCP/IP。此后AT&T繼續為UNIX System V增加了文件鎖定、系統管理、作業控制、流和遠程文件系統。從1987年到1989年,AT&T決定將Xenix、BSD、SunOS和System V融合為System V Release 4(SVR4)。這一版本將多種特性融為一體,結束了混亂的競爭局面。1993年以后,大多數商業UNIX發行商都基于SVR4開發自己的UNIX變體。
(4)Linux操作系統
Linux操作系統來源于UNIX,是目前全球最大的一個自由軟件,它是一個可與UNIX和Windows相媲美的操作系統,具有完備的網絡功能。Linux的基本思想有兩點:第一,一切都是文件;第二,每個軟件都有確定的用途。其中,第一點詳細來講就是系統中的所有都歸結為一個文件,包括命令、硬件和軟件設備、操作系統、進程等對于操作系統內核而言,都被視為擁有各自特性或類型的文件。
Linux最初由芬蘭赫爾辛基大學的學生Linus Torvalds開發,其源程序在Internet上公布以后,引起了全球計算機愛好者的青睞。1991年4月發布了Linux 0.01版本,隨后在10月發布了第二個版本Linux 0.02版。2001年,Linux 2.4版內核發布,它進一步地提升了SMP系統的擴展性,同時它也集成了USB接口和支持內置的即插即用等功能。2003年,Linux 2.6版內核發布。相對于2.4版內核,2.6版在對系統的支持方面很大的變化:第一,更好地支持大型多處理器服務器,特別是采用NUMA設計的服務器;第二,更好地支持嵌入式設備,如手機、網絡路由器或者視頻錄像機等;第三,對鼠標和鍵盤指令反應更加迅速;第四,對設備驅動程序做了徹底更新,例如,與硬盤和CD光驅通信的軟件模塊。
現在的Linux經過數次改版后已經發展成為一個純32位多工操作系統,64位版本也在開發之中。Linux可以兼容大部分的UNIX系統,很多的UNIX程序不需要改動,或者進行很少的改變,就可以運行于Linux環境。Linux內置了TCP/IP協議,可以直接連入Internet,作為服務器或者終端使用。同時Linux也內置了Java解釋器,可直接運行Java源代碼,具備程序語言開發、文字編輯和排版、數據庫處理等能力。Linux還提供了Windows的圖形界面,主要用于80x86系列的PC機,也有其他不同硬件平臺的版本,支持現在流行的所有硬件設備。就性能來說,它并不弱于Windows和UNIX,而且依靠仿真程序還可以運行Windows應用程序。
2.程序設計語言
計算機程序都是用某種計算機所能識別的語言編寫的。程序設計語言的發展經歷了機器語言、匯編語言和高級語言三個階段。
(1)機器語言
機器語言是直接用二進制代碼指令表達的計算機語言,指令是用0和1組成的一串代碼,它們有一定的位數,并分成若干段,各段的編碼表示不同的含義。一條指令就是機器語言的一條語句,包括操作碼和地址碼。操作碼指明了指令的操作性質及功能,地址碼則給出了操作數或操作數的地址。每臺機器的指令,其格式和代碼所代表的含義都是硬性規定的,故稱之為面向機器的語言,也稱為機器語言。
機器語言的特點是計算機可以直接識別,不需要進行任何翻譯,執行速度較快。但是,由于機器語言由大量的二進制代碼組成,不易學也不易掌握,可讀性較差。同時它嚴重地依賴于具體的計算機,所以,可移植性差,重用性差。機器語言是第一代計算機的編程語言,對不同型號的計算機來說一般是不同的。
(2)匯編語言
匯編語言也是面向機器的程序設計語言。在匯編語言中,用助記符代替操作碼,用地址符號或標號代替地址碼。這樣采用符號代替機器語言中的二進制代碼,就把機器語言變成了匯編語言,所以,匯編語言亦稱為符號語言。使用匯編語言編寫的程序,機器不能直接識別,要由一種程序將匯編語言翻譯成機器語言,這種起翻譯作用的程序叫匯編程序,把匯編語言翻譯成機器語言的過程稱為匯編。
匯編語言的特點是能夠直接訪問與硬件相關的存儲器或I/O端口,不受編譯器的限制,對生成的二進制代碼進行完全的控制,避免因線程共同訪問或者硬件設備共享引起的死鎖,能根據特定的應用對代碼做最佳的優化,提高運行速度,最大限度地發揮硬件的功能。匯編語言比機器語言易于讀/寫、調試和修改,同時具有機器語言的全部優點。同時還應該認識到,匯編語言是一種層次非常低的語言,面向具體機型的,它離不開具體計算機的指令系統。因此,對于不同型號的計算機,有著不同的結構的匯編語言,而且,對于同一問題所編制的匯編語言程序在不同種類的計算機間是互不相通的,通用性也差。匯編語言程序開發效率很低,時間長且單調。但是,用匯編語言編制的系統軟件和過程控制軟件,其目標程序占用內存空間少,運行速度快,有著高級語言不可替代的用途。例如,70%以上的系統軟件,某些快速處理、位處理、訪問硬件設備等高效程序,某些高級繪圖程序,視頻游戲程序都是用匯編語言編寫的,它是理解整個計算機系統的最佳起點和最有效途徑。
(3)高級語言
不論機器語言還是匯編語言都是面向硬件的具體操作,由于它們對機器的過分依賴,要求使用者必須對硬件結構及其工作原理都十分熟悉,非計算機專業人員是難以做到的,對于計算機的推廣應用是不利的。隨著計算機事業的發展,促使人們去尋求一些與人類自然語言相接近且能為計算機所接受的語意確定、規則明確、自然直觀和通用易學的計算機語言。這種與自然語言相近并為計算機所接受和執行的計算機語言稱為高級語言。高級語言是面向用戶的語言,無論何種機型的計算機,只要配備上相應的高級語言的編譯或解釋程序,采用該高級語言編寫的程序就可以通用。
高級語言主要是相對于匯編語言而言的,它并不特指某一種具體的語言,而是包括了很多編程語言,目前被廣泛使用的高級語言有BASIC、Pascal、C/C++、COBOL、FORTRAN、LOGO以及VB、VC、VC++等。
計算機并不能直接地接受和執行用高級語言編寫的源程序,源程序在輸入計算機時,通過“翻譯程序”翻譯成機器語言形式的目標程序,計算機才能識別和執行。這種“翻譯”通常有兩種方式,即編譯方式和解釋方式。
編譯方式:事先編制好一個稱為編譯程序的機器語言程序,作為系統軟件存放在計算機內,當用戶將采用高級語言編寫的源程序輸入計算機后,編譯程序便把源程序整個地翻譯成用機器語言表示的與之等價的目標程序,然后計算機再執行該目標程序,以完成源程序要處理的運算并取得結果。
解釋方式:將源程序輸入計算機時,解釋程序邊掃描邊解釋,逐句輸入,逐句翻譯,計算機一句句執行,并不產生目標程序。Pascal、 FORTRAN、COBOL等高級語言采用編譯方式,BASIC語言則采用解釋方式。每一種高級(程序設計)語言,都有自己人為規定的專用符號、英文單詞、語法規則和語句結構(書寫格式)。高級語言與自然語言(英語)更接近,而與硬件功能相分離(徹底脫離了具體的指令系統),便于廣大用戶掌握和使用。高級語言的通用性強,兼容性好,便于移植。
3.應用軟件
應用軟件是用戶可以使用的各種程序設計語言,以及用各種程序設計語言編制的應用程序的集合,分為應用軟件包和用戶程序。應用軟件包是利用計算機解決某類問題而設計的程序的集合,供多用戶使用。常用的應用軟件包括:辦公軟件、網絡軟件、多媒體軟件、商務軟件、數據庫軟件等。
(1)辦公軟件
辦公軟件指可以進行文字處理、表格制作、幻燈片制作、簡單數據庫處理等方面工作的軟件,包括微軟Office系列、金山WPS系列、永中Office系列、紅旗2000RedOffice、致力協同OA系列等。辦公軟件的應用范圍很廣,大到社會統計,小到會議記錄、數字化辦公都離不開辦公軟件的鼎立協助。目前辦公軟件朝著操作簡單化和功能細化等方向發展。
(2)網絡軟件
網絡軟件指在計算機網絡環境中,用于支持數據通信和各種網絡活動的軟件。網絡軟件包括通信軟件、網絡服務軟件、網絡應用軟件、網絡應用系統、網絡管理系統以及用于特殊網絡站點的軟件等。
(3)多媒體軟件
多媒體軟件包括字處理軟件、繪圖軟件、圖像處理軟件、動畫制作軟件、聲音編輯軟件以及視頻編輯軟件。
(4)商務軟件
商務軟件包括會計軟件、企業工作流程分析、客戶關系管理軟件、企業資源計劃軟件、供應鏈管理軟件、產品生命周期管理軟件等。
(5)數據庫軟件
數據庫軟件是指用于數據管理的軟件系統,具有信息存儲、檢索、修改、共享和保護的功能。目前流行的數據庫軟件有Access、Sybase、SQL server、ORACLE、Foxpro等。