孫程智
摘 要 按照在計(jì)算機(jī)上完成任務(wù)的不同,可以把計(jì)算機(jī)的用戶分成以下4類:最終用戶、系統(tǒng)管理員、應(yīng)用程序員和系統(tǒng)程序員。計(jì)算機(jī)最終用戶使用鍵盤和鼠標(biāo)等外設(shè)與計(jì)算機(jī)交互,通過操作系統(tǒng)提供的用戶界面,啟動(dòng)執(zhí)行應(yīng)用程序或系統(tǒng)命令,從而完成用戶任務(wù)。因此,最終用戶能夠感知到的只是系統(tǒng)提供的簡(jiǎn)單人機(jī)交互界面和安裝在計(jì)算機(jī)中的相關(guān)應(yīng)用程序。
關(guān)鍵詞 應(yīng)用程序員 系統(tǒng) 管理員
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A
1使用應(yīng)用程序完成特定任務(wù)的計(jì)算機(jī)用戶成為最終用戶
在最終用戶眼中,早期的計(jì)算機(jī)非常昂貴,只能由少數(shù)專業(yè)化人員使用。但是到了20世紀(jì)80年代個(gè)人計(jì)算機(jī)迅速普及,以及20世紀(jì)90年代初多媒體計(jì)算機(jī)的廣泛應(yīng)用,特別是互聯(lián)網(wǎng)技術(shù)的發(fā)展,計(jì)算機(jī)已經(jīng)成為了人們?nèi)粘I钪械闹匾ぞ?。?jì)算機(jī)最終用戶使用鍵盤和鼠標(biāo)等外設(shè)與計(jì)算機(jī)交互,通過操作系統(tǒng)提供的用戶界面,啟動(dòng)執(zhí)行應(yīng)用程序或系統(tǒng)命令,從而完成用戶任務(wù)。因此,最終用戶能夠感知到的只是系統(tǒng)提供的簡(jiǎn)單人機(jī)交互界面和安裝在計(jì)算機(jī)中的相關(guān)應(yīng)用程序。
2計(jì)算機(jī)在系統(tǒng)管理員眼中的存在
系統(tǒng)管理員作為管理和維護(hù)計(jì)算機(jī)系統(tǒng)的專業(yè)人員,相比于普通的計(jì)算機(jī)最終用戶而言,對(duì)計(jì)算機(jī)系統(tǒng)的了解要深入得多。必須能非常熟悉操作系統(tǒng)提供的有關(guān)系統(tǒng)配置和管理方面的功能、系統(tǒng)管理員必須能夠解決,很多普通用戶解決不了的問題,還要必須能安裝配置、維護(hù)系統(tǒng)的硬件和軟件,能建立和管理用戶賬戶,需要時(shí)能夠升級(jí)硬件和軟件,備份和恢復(fù)業(yè)務(wù)系統(tǒng)和數(shù)據(jù)等,軟件配置和系統(tǒng)管理層面以及相關(guān)的使用程序,系統(tǒng)管理員能感知到的是系統(tǒng)中部分硬件層面,以及相關(guān)實(shí)用程序和人機(jī)交互界面。在開發(fā)操作系統(tǒng),編譯器和實(shí)用程序等系統(tǒng)軟件時(shí)、需要能夠熟悉計(jì)算機(jī)底層和相關(guān)硬件和系統(tǒng)結(jié)構(gòu),甚至還需要直接與指令系統(tǒng)和計(jì)算機(jī)硬件打交道。比如:“對(duì)各種控制計(jì)算器I/O接個(gè)口、用戶可見集成器直接進(jìn)行編程和控制、所以系統(tǒng)程序員有時(shí)還要直接用匯編語言等低級(jí)程序,設(shè)計(jì)語言編寫程序代碼,必須熟悉指令系統(tǒng)、及其結(jié)構(gòu)和相關(guān)幾期功能特性”。
3計(jì)算機(jī)在應(yīng)用程序員眼中的存在
計(jì)算機(jī)系統(tǒng)除了計(jì)算機(jī)硬件、操作系統(tǒng)提供的編程接口(API)、相應(yīng)的程序語言處理系統(tǒng)和人機(jī)交互界面、還包括實(shí)用程序,這是應(yīng)用程序員所看到的計(jì)算機(jī)系統(tǒng)。高級(jí)程序設(shè)計(jì)語言(High level programming language)是指面向算法設(shè)計(jì)得較接近于日常所用的英語書面語言的設(shè)計(jì)語言,例如BASC、C、FORTRAN、java等,所以大多應(yīng)用程序員使用高級(jí)程序設(shè)計(jì)語言編寫程序。
4系統(tǒng)程序員的程序開發(fā)與執(zhí)行過程
程序的開發(fā)和執(zhí)行設(shè)計(jì)計(jì)算機(jī)系統(tǒng)的各個(gè)不同層面,因?yàn)橛?jì)算機(jī)系統(tǒng)層析話結(jié)構(gòu)的思想體現(xiàn)在程序開發(fā)和執(zhí)行過程的各個(gè)環(huán)節(jié)中。程序開發(fā)通過程序編輯軟件得到hello.C文件。Hello.c在計(jì)算機(jī)中以ASCII字符方式存放。然后再將hello.c進(jìn)行預(yù)處理、編譯、匯編和連接,最終生成顆執(zhí)行代碼文件。
計(jì)算機(jī)的控制器自動(dòng)執(zhí)行的是指令,每條指令由操作碼和地址碼兩部分組成,操作碼是指出操作類型,地址碼之處操作數(shù)的地址。執(zhí)行程序世紀(jì)上是執(zhí)行一個(gè)指令序列。也就是說不管用什么高級(jí)語言編寫的程序都能夠轉(zhuǎn)換為一個(gè)指令序列才能在計(jì)算機(jī)上執(zhí)行。任何高級(jí)語言源程序和匯編語言源程序都必須轉(zhuǎn)換為機(jī)器語言程序才能被計(jì)算機(jī)執(zhí)行,通常這種進(jìn)行轉(zhuǎn)換的軟件被稱之為“程序設(shè)計(jì)語言處理系統(tǒng)”。應(yīng)用程序員和系統(tǒng)程序員都是借助“程序設(shè)計(jì)語言處理系統(tǒng)”來開發(fā)軟件。任何一個(gè)語言處理系統(tǒng),都包含一個(gè)翻譯系統(tǒng),它能夠把一種編程語言表示的程序轉(zhuǎn)換為等價(jià)的另一種編程語言程序。翻譯程序有以下三類。
(1)匯編程序:也稱匯編器,涌來將匯編語言源程序翻譯成機(jī)器語言目標(biāo)程序。
(2)解釋程序、也稱計(jì)時(shí)器,涌來將源程序中的語句按其執(zhí)行順序逐條翻譯成機(jī)器指令必過立即執(zhí)行。例如,BASIC解釋程序直接氣功BASIC源程序執(zhí)行,不生成目標(biāo)程序。
(3)編譯程序:也稱編譯器,涌來將高級(jí)語言源程序翻譯成匯編語言或機(jī)器語言目標(biāo)程序。
5總結(jié)
在計(jì)算機(jī)技術(shù)中,一個(gè)存在的實(shí)物或概念從某個(gè)角度看似不存在,成為透明性現(xiàn)象。通常,在一個(gè)計(jì)算機(jī)系統(tǒng)中,系統(tǒng)程序員所看到的底層機(jī)器級(jí)的概念性結(jié)構(gòu)和功能也行對(duì)高級(jí)語言程序員(通常就是應(yīng)用程序員)來說是透明的,即看不見的。一個(gè)計(jì)算機(jī)系統(tǒng)可以認(rèn)為是由各種硬件和各類軟件采用層次化方式構(gòu)建的分層系統(tǒng),不同用戶工作在不同的系統(tǒng)結(jié)構(gòu)層。因此:系統(tǒng)管理員工作在操作系統(tǒng)層所看到的是配置了操作系統(tǒng)的虛擬機(jī)器,匯編語言程序員工作在提供匯編程序的虛擬機(jī)器,應(yīng)用程序員大多工作在提供翻譯器或者解釋器等翻譯程序的語言處理系統(tǒng)中,最終用戶則工作在最上面的應(yīng)用程序?qū)印?