蘇前敏 繆行外 吳敬仙
摘要:操作系統(tǒng)是計算機(jī)的靈魂,包含了許多計算機(jī)的設(shè)計思想,搞清楚了操作系統(tǒng),對于計算機(jī)就不再困惑。本文主要從三個方面介紹如何加強(qiáng)操作系統(tǒng)的親和力。首先介紹操作系統(tǒng)的廣泛性和復(fù)雜性,如何將其變得生動而有意義;介紹技術(shù)的來龍去脈;同時,為了使操作系統(tǒng)可實際操作,需要實驗驅(qū)動的教學(xué)方式,采用自由軟件Linux操作系統(tǒng)。
關(guān)鍵詞:操作系統(tǒng); Linux;教學(xué)
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:B
如何引導(dǎo)一批人去學(xué)習(xí)一門課程,喜歡上它,并推而廣之,各取所需,是每一個有責(zé)任的專業(yè)教學(xué)老師永恒的課題,作為計算機(jī)系統(tǒng)的協(xié)調(diào)大師——操作系統(tǒng),對它的課程教學(xué)也不例外。操作系統(tǒng)是計算機(jī)的靈魂,是計算機(jī)系統(tǒng)中最核心、最基礎(chǔ)的部件,在計算機(jī)用戶和計算機(jī)硬件之間扮演著中介的角色。以下從三個方面闡述如何加強(qiáng)“操作系統(tǒng)”教學(xué)的親和力。
1操作系統(tǒng)的廣泛性和復(fù)雜性
計算機(jī)操作系統(tǒng)是學(xué)習(xí)計算機(jī)的初學(xué)者接觸電腦的第一個軟件。許多人認(rèn)為計算機(jī)只是一個工具抑或是高級娛樂工具,只需鼠標(biāo)點點,就可以達(dá)到要求。在這種情況下,電腦軟件是別人幫忙裝的,出了問題,只要請教,什么問題都可解決。但是計算機(jī)和網(wǎng)絡(luò)已經(jīng)深入到你的工作生活中,不可能事事求人,有必要學(xué)習(xí)一些常識和操作系統(tǒng)的知識。對于合格的大學(xué)生,應(yīng)該知道為什么要用操作系統(tǒng),為什么操作系統(tǒng)能夠有條不紊地管理這么復(fù)雜的系統(tǒng)?它有哪些借鑒?對于計算機(jī)專業(yè)的學(xué)生來說,更是有必要學(xué)習(xí)操作系統(tǒng)。同時對于管理人員它也有許多可以借鑒的地方。
操作系統(tǒng)為用戶提供了一個使用計算機(jī)的工作環(huán)境,亦即接口。接口分為用戶接口和程序接口。用戶接口,就是用戶見到的界面,跟計算機(jī)打交道的地方,通過它,你發(fā)號施令,操作系統(tǒng)唯令是從。程序接口主要程序調(diào)用的庫,不用從最低層開始編程。
計算機(jī)系統(tǒng)包括各種硬件和軟件,涉及多種技術(shù),跨網(wǎng)絡(luò)的,是一個非常復(fù)雜的系統(tǒng)。操作系統(tǒng)管理整個計算機(jī)硬件資源和其上的所有軟件資源,管理計算機(jī)的時間(CPU)和空間(內(nèi)存和外存),統(tǒng)籌計算機(jī)各種資源,合理運(yùn)行,管理各種環(huán)境的實時的系統(tǒng),這么復(fù)雜的系統(tǒng),在操作系統(tǒng)的協(xié)調(diào)下無差錯地運(yùn)行,它名副其實是個大管家。
同時,操作系統(tǒng)實際是社會各種管理和工程管理的縮影。操作系統(tǒng)管理每個作業(yè)的每一步,出了麻煩事它要處理,每個程序的合法權(quán)益都受到尊重和保護(hù)。有些操作系統(tǒng)追求易用性,有些追求效率,還有些則是兩者的折衷。許多社會管理于此大同小異。
操作系統(tǒng)的中斷分級處理,進(jìn)程調(diào)度算法類似于社會管理中的分級緊急狀況處理方法,社會資源調(diào)度,資源的優(yōu)化配置組合,非常類似于政府的管理行為,所以建議國家和政府的各級管理人員都來聽這門課。當(dāng)然,比社會還復(fù)雜的不知多少倍,因為操作系統(tǒng)每毫秒級別都在管理,盡職盡責(zé)。當(dāng)然它是可控,掌握在程序員的手上,世界成了地球村,正是這些人設(shè)計了這么巧妙的東西,要感謝那些人,歷史上的人,所以要教給學(xué)生這些東西是必要的,也是最容易教育人的,因為它讓人感覺那是我學(xué)這門課程的意義,除了技術(shù)本身,還有人性化的一面。這正是“操作系統(tǒng)”課程本身特點所決定的,“操作系統(tǒng)”不像其它工程類的課,直接就拿去用的技術(shù),立刻可以實用,它是基礎(chǔ),是那些“拿去就用”的技術(shù)的關(guān)鍵。
2加強(qiáng)技術(shù)歷史教育
要領(lǐng)會操作系統(tǒng)是什么和做什么,考慮它在過去的45年中是如何發(fā)展的。通過回顧這個發(fā)展,可以明確操作系統(tǒng)的共同點,并且理解這些系統(tǒng)如何和為什么會有這樣的經(jīng)歷。
對于操作系統(tǒng)來說,就要深入了解操作系統(tǒng)演變的歷史,Unix,MAC,DOS,Windows,Linux如何誕生,如何影響生活?理解技術(shù)的來龍去脈,這樣學(xué)生對技術(shù)的引入有更深的理解,理解為什么引入該技術(shù),甚至比技術(shù)本身更重要。這樣學(xué)生可以根據(jù)限制條件來設(shè)計最優(yōu)技術(shù),可以發(fā)揮學(xué)生的創(chuàng)造力。比如說明為了解決用戶作業(yè)死循環(huán)而引入時鐘中斷,進(jìn)一步說明時鐘中斷可以用于比計時器更精確計時,并可以驅(qū)動與時間相關(guān)的其他事件的處理。
這里推薦學(xué)生看發(fā)明Windows和Dos的Microsoft總裁比爾?蓋茨的書,還有自由軟件Linux之父Linus的自傳。Linux的興起可以說是Internet創(chuàng)造的一個奇跡。1991年8月,芬蘭的一個學(xué)生在comp.os.minix新聞組貼上了以下這段話:“你好,所有使用Minix的人-我正在為386AT做一個操作系統(tǒng)(只是為了愛好,不像GNU那樣很大很專業(yè)”。這個人就是Linus。值得一提的是,他們基本上都屬于真正意義上的hacker,大約有100余名程序員參與了Linux內(nèi)核代碼編寫/修改工作,通過網(wǎng)上協(xié)作開發(fā),主張“源代碼免費,服務(wù)獲利”的原則。
Linus Torvalds在開始其Linux 操作系統(tǒng)的設(shè)計時,他的目的只不過是想看一看Intel 386存儲管理硬件是怎樣工作的,而絕對沒有想到這一舉動會在計算機(jī)界,產(chǎn)生如此重大的影響。他的設(shè)計進(jìn)展得很順利,只花了幾個月時間就在一臺Intel 386微機(jī)上完成了一個類似于Unix的操作系統(tǒng), 這就是最早的Linux版本。1991年底,Linus Torvalds首次在Internet上發(fā)布了基于Intel 386體系結(jié)構(gòu)的Linux源代碼,從此以后,奇跡開始發(fā)生了。由于Linux具有結(jié)構(gòu)清晰、功能簡捷等特點,許多大專院校的學(xué)生和科研機(jī)構(gòu)的研究人員紛紛把它作為學(xué)習(xí)和研究的對象。他們在更正原有Linux版本中錯誤的同時,也不斷地為Linux增加新的功能。在眾多熱心者的 努力下,Linux逐漸成為一個穩(wěn)定可靠、功能完善的操作系統(tǒng)。一些軟件公司,如Red Hat、InfoMagic等也不失時機(jī)地推出了自己的以Linux為核心的操作系統(tǒng)版本,這大大推動了Linux的商品化。在一些大的計算機(jī)公司的支持下,Linux還被移植到以Alpha APX、PowerPC、Mips及Sparc等為處理機(jī)的系統(tǒng)上。Linux的使用日益廣泛,其影響力直逼Unix。
3加強(qiáng)可操作的實驗
“操作系統(tǒng)”選擇先進(jìn)實用的Linux作為教學(xué)素材,確保了教學(xué)內(nèi)容的先進(jìn)性和實用性。培養(yǎng)什么樣的人有很好的指導(dǎo)意義,智力專業(yè)知識的教育只是人才培養(yǎng)的一個方面,在教書育人工作中不單純是教給學(xué)生書本知識,還特別注意加強(qiáng)其它素質(zhì)的培養(yǎng)。通過以上聯(lián)系,學(xué)生會感到特別有意義,促進(jìn)我們教學(xué)的實施。
為了引導(dǎo)學(xué)生,教研室將采用實驗驅(qū)動的教學(xué)方式,將枯燥的理論轉(zhuǎn)化成有趣的可操作的案例,這是切實可行的,“操作系統(tǒng)”系列實驗的學(xué)習(xí)可以讓學(xué)生從使用現(xiàn)有程序的簡單操作深入到計算機(jī)內(nèi)部,自己動手編寫系統(tǒng)程序。讓學(xué)生從感性到理性、從簡單到復(fù)雜、從低級到高級,有內(nèi)而外地認(rèn)識操作系統(tǒng)、掌握操作系統(tǒng)。
4結(jié)語
本文主要從三個方面闡述了加強(qiáng)“操作系統(tǒng)”教學(xué)親和力的一些方法,希望能夠拋磚引玉,研究“操作系統(tǒng)”教學(xué)的方式方法,重新組織教學(xué)內(nèi)容,進(jìn)行優(yōu)化組合,促進(jìn)操作系統(tǒng)的教學(xué),進(jìn)而促進(jìn)計算機(jī)學(xué)科的發(fā)展。
參考文獻(xiàn):
[1] 羅宇,張穎蓓,葉常春. 本科操作系統(tǒng)課程設(shè)置及教學(xué)體會[J]. 計算機(jī)教育,2006(1):39-40.
[2] Andrew S.Tanenbaum, Albert S.Woodhull. Operating System Design and Implementation[M].2nd ed.北京:電子工業(yè)出版社,1998.
[3] 屠立德. 操作系統(tǒng)基礎(chǔ)[M].北京:清華大學(xué)出版社,2000.