成人精品av一区二区三区_亚洲国产精品久久无码中文字_欧美黑人xxxx性高清版_欧美老熟妇xb水多毛多

操作系統(tǒng)論文8篇

時間:2023-04-14 16:49:51

緒論:在尋找寫作靈感嗎?愛發(fā)表網(wǎng)為您精選了8篇操作系統(tǒng)論文,愿這些內(nèi)容能夠啟迪您的思維,激發(fā)您的創(chuàng)作熱情,歡迎您的閱讀與分享!

操作系統(tǒng)論文

篇1

下面是由本課程的全部教學內(nèi)容所提煉并加以有機整合而形成的出的精髓教學框架:

(1)系統(tǒng)發(fā)展歷史的回顧與當前技術發(fā)展潮流追蹤許多學校的計算機專業(yè)在講解操作系統(tǒng)課程時,往往局限于介紹具體方法和技術細節(jié),忽略對技術發(fā)展歷史和當前技術潮流的詮釋。既不能開拓學生專業(yè)視野,又無法對專業(yè)歷史有深入的了解。本門課程爭取使用3-4學時的時間詳細講解操作系統(tǒng)的發(fā)展歷史、著名人物、分類體系和技術發(fā)展趨勢。這樣的內(nèi)容極大的激發(fā)了學生的學習興趣和專業(yè)使命感,具有很好的教學效果。

(2)作系統(tǒng)基本設計原理與核心技術方法的分析講解本門課程注重對基礎專業(yè)理論的講解,從五個方面詳細剖析操作系統(tǒng)的核心原理。對進程管理、存儲管理、文件系統(tǒng)、設備管理、系統(tǒng)接口等基本的設計原理均進行了詳細的介紹和分析。操作系統(tǒng)的各種基本設計原理中包含了大量的算法設計與技術實現(xiàn)優(yōu)化考慮,在教學過程中,要特別注重剖析算法設計思想和優(yōu)化教學法的差別,強調(diào)激發(fā)學生的主動思考能力,而不是僵化的向?qū)W生灌輸思想。

(3)真實操作系統(tǒng)案例的組成結(jié)構(gòu)與實現(xiàn)特色剖析對比。操作系統(tǒng)的設計原理體系嚴密,各種技術方法錯綜復雜。要注重選用真實操作系統(tǒng)作為學習的案例。通過對真實案例的剖析以提高學生的感性認識。例如在講解“進程管理”時,將Linux系統(tǒng)與WindowsXP系統(tǒng)進行對比;講解“文件系統(tǒng)”時,對Linux、FAT32、NTFS等各類不同的文件系統(tǒng)進行對比;講解內(nèi)存管理時,對Minix、Linux、Win-dowsXP系統(tǒng)進行對比。這樣的教學內(nèi)容雖然備課難度大,但是教學效果卻非常好。

(4)操作系統(tǒng)原理與計算機原理、編譯原理、數(shù)據(jù)庫、計算機網(wǎng)絡等課程的關聯(lián)?!恫僮飨到y(tǒng)原理》課程是計算機及相關專業(yè)的學生在本科階段“承上啟下”的重要課程,講授過程中必須注重與其他專業(yè)基礎課內(nèi)容和知識的結(jié)合。在教學過程中,專門講解“操作系統(tǒng)硬件基礎知識”以融合《計算機原理》課程知識;重點分析“應用程序編譯鏈接過程”以融合《編譯原理》課程知識;在“進程同步互斥、I/O設備同步阻塞-異步傳輸”的內(nèi)容中有機融合《數(shù)據(jù)庫原理》、《計算機網(wǎng)絡》的基本概念。這樣的關聯(lián)式教學方式使得學生能夠?qū)⒍嚅T專業(yè)基礎課程進行有機的融合貫通,有效的促進了專業(yè)理論體系的完善。

基于以上對教學內(nèi)容的有機的系列化分類,在選用優(yōu)秀計算機經(jīng)典教材的基礎上,必須強調(diào)教學方式的科學與合理,主要采用以下教學方式:

(1)定位于專業(yè)基礎必修課,幫助學生建立扎實的專業(yè)理論基礎。計算機領域各相關專業(yè)的學生都需要建立扎實完整的軟件基礎理論體系?!恫僮飨到y(tǒng)原理》是講述計算機硬件資源管理、應用程序運行控制、人機交互接口實現(xiàn)等內(nèi)容的基礎性課程,在專業(yè)人才培養(yǎng)方面具有極為重要的作用。應該不斷加強對《操作系統(tǒng)原理》課程的教學投入,積極完善師資隊伍、改進教學計劃、建立完整實踐環(huán)境、主動追蹤技術發(fā)展潮流,使得本門課程的教學質(zhì)量不斷提升。

(2)面向應用、軟件等各專業(yè)學生授課,實現(xiàn)“承上啟下”的總體教學目標?!恫僮飨到y(tǒng)原理》是計算機科學與技術專業(yè)必修基礎課,是自動化專業(yè)的專業(yè)選修課,也是非計算機專業(yè)的軟件方向主干課。在教學計劃中,本門課程最主要的作用就是實現(xiàn)對低年級專業(yè)基礎知識的綜合與提升,幫助學生建立系統(tǒng)、完整的專業(yè)基礎理論體系,培養(yǎng)學生的研究型思維和動手實踐能力,開拓學生的專業(yè)學術視野,為后續(xù)課程的學習和專業(yè)發(fā)展奠定重要的基礎。

(3)原理、實踐、現(xiàn)實應用相結(jié)合,為培養(yǎng)高水平專業(yè)人才服務?!恫僮飨到y(tǒng)原理》是綜合了基礎理論講授、動手實踐、觀察體驗、最新技術發(fā)展潮流追蹤等多項內(nèi)容的專業(yè)基礎課程。課程建設存在教學工作量大、上機實踐環(huán)節(jié)重要、學生學習任務重等特點,課程教學過程中,常常存在原理講授與上機實踐脫節(jié)、課堂學習與現(xiàn)實應用剝離的情況,導致老師在教學過程中常采用“灌輸式”教學法、學生在學習過程中常采用“機械記憶”的學習習慣,教學質(zhì)量難以提升。為此,在《操作系統(tǒng)原理》課程建設中應該積極進行教學改革和創(chuàng)新,近年來不斷引進國內(nèi)外經(jīng)典操作系統(tǒng)教材,努力搭建多種操作系統(tǒng)平臺的上機實踐環(huán)境,加強師資隊伍建設和教學督導力度,加強對技術發(fā)展潮流的追蹤。

(4)“啟發(fā)式、關聯(lián)式”的課堂講授與課堂討論相結(jié)合。在對基礎性的操作系統(tǒng)原理進行講解時,要注重講授與討論的結(jié)合,教案的內(nèi)容組織并不完全遵循各類教材的內(nèi)容安排,在講解順序、思路整理方面均體現(xiàn)了教師對學習過程的把握和指導。在詳細講解各類原理之前,安排小規(guī)?!罢n堂討論”分析猜測設計思想,激發(fā)學生的好奇心和主動思考能力;在講解原理的過程中,不斷的問“為什么”,提高學生的對比分析能力;在原理講解完成后,進行系統(tǒng)性的總結(jié)和展望,指導學生建立系統(tǒng)性的思維方式。為激發(fā)課堂討論的積極性,對討論過程中表現(xiàn)優(yōu)異的學生給予“小額加分”的激勵,鼓勵學生表達自己觀點。

篇2

考核內(nèi)容及計分方法

A地區(qū)通信公司根據(jù)當前所管轄的網(wǎng)絡系統(tǒng)維護單位的具體情況,要求各單位網(wǎng)絡運維工作的考核由網(wǎng)絡運行質(zhì)量管理、市場支撐管理、網(wǎng)絡運維成本管理、基礎管理等指標構(gòu)成(考核指標分類、主要指標、權重等信息見表1)

考核辦法實施

對于日常工作完成情況,A地區(qū)通信公司考核網(wǎng)絡運維生產(chǎn)各專業(yè),包括網(wǎng)管、交換、傳輸、數(shù)據(jù)、電源空調(diào)、本地網(wǎng)線路、接入網(wǎng)、無線市話、大客戶業(yè)務響應、資源管理等專業(yè),網(wǎng)絡運維部在年底組織對單位網(wǎng)絡運維工作現(xiàn)場檢查,對重點考核內(nèi)容打分。

對于專項重點工作完成情況考核,主要是考核各維護單位對市公司全年安排的重點工作完成情況,如末梢設備整治、無線市話網(wǎng)絡優(yōu)化及網(wǎng)絡運維巡檢等重點工作。

考核內(nèi)容以“大客戶電路故障恢復及故障報告提供及時率”為例進行列示。在考核的過程中,為了防止網(wǎng)絡系統(tǒng)問題帶來的損失,還制定了“否決內(nèi)容”(指對各單位指標完成情況進行檢查或抽查),對于發(fā)生以下情況之一的單位,取消全年考核資格,以0分計:一是未能按時、按質(zhì)完成重要通信、搶險救災、戰(zhàn)備以及其它應急通信任務,造成嚴重后果;二是拒不服從省、市公司的生產(chǎn)調(diào)度令造成嚴重網(wǎng)絡責任事故;三是在發(fā)生重大故障后,不按照省、市公司相關管理規(guī)定進行報告,或者故意隱瞞故障、在故障原因報告中惡意歪曲事實、在故障調(diào)查中有明顯舞弊行為;四是因違反互聯(lián)互通原則給企業(yè)造成重大負面影響;五是在考核指標數(shù)據(jù)采樣點的設置或數(shù)據(jù)上報中存在弄虛作假行為。

對考核數(shù)據(jù)的統(tǒng)計及保存,各單位應根據(jù)本考核細則中的各項指標定義解釋、數(shù)據(jù)來源及計分方法,認真完成與指標相關的原始數(shù)據(jù)測試、統(tǒng)計、匯總和報送工作,并且妥善保管測試報告、電路調(diào)單、故障報告、網(wǎng)管數(shù)據(jù)等原始記錄。

具體考核指標與準則舉例

由于網(wǎng)絡系統(tǒng)內(nèi)部控制考核項目較多,指標繁雜,本文列示了“大客戶電路故障恢復及故障報告提供及時率”的指標定義、計算與方法說明如下:第一,指標定義:統(tǒng)計期內(nèi)電路故障及時恢復比率和及時提供故障報告比率的加權平均。

第二,指標值:全年累計100%。

第三,計算公式:考核的范圍為所有通過省大客戶故障處理系統(tǒng)受理的大客戶業(yè)務故障。大客戶電路故障恢復及故障報告提供及時率=第四,考核不含不可抗力和客戶原因等造成的超時電路業(yè)務障礙。對故障原因不明且電路障礙業(yè)務恢復超時故障,則障礙受理方和有關責任方各計未及時恢復業(yè)務1次;對故障原因不明且電路障礙業(yè)務恢復未超時故障,則障礙受理方和有關責任方各計未及時恢復業(yè)務0.5次。

大客戶電路故障恢復時限按照《通信業(yè)務故障處理及故障報告管理規(guī)定》執(zhí)行,要求提供故障報告數(shù)為管理規(guī)定要求提供的報告數(shù)(包括超時故障、重要客戶故障、重保期間故障,客戶或客服部門要求提供故障報告的故障,上級維護部門要求提供報告等)。

第五,數(shù)據(jù)來源及統(tǒng)計報送周期。數(shù)據(jù)來源于省內(nèi)大客戶故障處理系統(tǒng)的統(tǒng)計數(shù)據(jù),大客戶業(yè)務響應部按月統(tǒng)計、匯總,并在年終計算各單位指標完成情況。第六,計分方法。完成或超過指標值的得基本分,不能完成核定指標值的,每低0.5個百分點扣1分,直至扣完為止。第七,評分標準。具體的大客戶業(yè)務相應考核標準如表2所示。

A地區(qū)通信公司對網(wǎng)絡系統(tǒng)考核評價的啟示

網(wǎng)絡系統(tǒng)的運行維護和安全措施是通信公司的基礎工作,也是非常重要的一項內(nèi)部控制工作。相關啟示如下:第一,考核指標與業(yè)務工作緊密結(jié)合,具有很強的實際操作性。

篇3

一、人力資源戰(zhàn)略是根據(jù)企業(yè)遠景制定的,是企業(yè)經(jīng)營戰(zhàn)略的一部分,并主要通過促進企業(yè)長期可持續(xù)發(fā)展來實現(xiàn)對經(jīng)營戰(zhàn)略的貢獻。

遠景是要回答:企業(yè)將成為、想成為一個什么樣的企業(yè)?經(jīng)營戰(zhàn)略則是實現(xiàn)遠景的策略,人力資源戰(zhàn)略是其中的重要組成部分。企業(yè)為實現(xiàn)其遠景需要倡導的核心價值觀是什么?采取什么樣的理念來開展人力資源工作?如何制定人力資源規(guī)劃?

例如,一家管理咨詢公司的遠景是成為向中國企業(yè)提供咨詢方案的最佳服務機構(gòu)。由于遠景目標的知識性特點,其人力資源規(guī)劃可以是初期選拔經(jīng)驗豐富并具有咨詢業(yè)素質(zhì)的專業(yè)人士,隨著公司的成長和專業(yè)技術的完善,再加入畢業(yè)生由公司自己培養(yǎng),以便盡快壯大隊伍。其核心價值觀可以是"信任、團隊、智慧、創(chuàng)新",以激發(fā)員工的價值認同感。一流企業(yè)之所以能吸引并凝聚優(yōu)秀的員工,認同感是其中的關鍵因素。

二、大人力資源管理涵括組織建設、文化建設與系統(tǒng)建設,通過企業(yè)文化整合戰(zhàn)略、組織和系統(tǒng),落實到各個相互配套的操作系統(tǒng)。

組織建設包括"硬"的組織結(jié)構(gòu)規(guī)劃設計和"軟"的人力資源隊伍建設,經(jīng)營戰(zhàn)略和人力資源戰(zhàn)略決定組織建構(gòu)并透過組織得以實現(xiàn)。文化建設首先確立核心價值觀,再將其有系統(tǒng)的向組織滲透,并有意識的融入管理系統(tǒng)、制度和程序。系統(tǒng)建設既要求操作系統(tǒng)的科學與規(guī)范,更強調(diào)各系統(tǒng)間的配套銜接,這體現(xiàn)在兩個方面:

1.人力資源操作系統(tǒng)是對戰(zhàn)略由宏觀到微觀操作層面的細化,其間必須經(jīng)過一個更為基礎的普適性的技術分析過程,我們稱之為"人力資源平臺"。人力資源平臺即通過對工作、人、職位的分析、評估,整理、明確三者之間的關系,為各操作系統(tǒng)提供技術支撐。招聘、績效管理、培訓發(fā)展、薪資福利及人員管理等子系統(tǒng)就是建立在此平臺上。

2.操作系統(tǒng)是連貫一體的,如人才保留不僅是薪資待遇和發(fā)展機會的問題,在員工招聘時就應該加以考慮。面試評估標準應關注應聘人的價值觀念是否符合公司的核心價值觀,應聘人的發(fā)展期望是否是公司可以提供的;如果不相匹配,即使招聘進來也很難長期保留。只有綜合、系統(tǒng)地制定各操作方法,才能保證其有效性。

三、人力資源不只是企業(yè)人力資源部門的事,所有管理者,上至總經(jīng)理下到每個主管以至員工都應承擔人力資源管理責任。

大人力資源觀強調(diào)職業(yè)管理者應成為人力資源管理專家。因為人力資源管理是一項全局性工作,其各項職責如招聘、績效管理、員工保留、培訓規(guī)劃等都需要各主管的貫徹配合和直接參與。同時,各層管理者直接承擔著下屬輔導培養(yǎng)、企業(yè)文化建設等職責。員工也越來越多地負起自我管理的責任。

篇4

論文摘要:實時操作系統(tǒng)(RTOS)是復雜控制系統(tǒng)中必不可少的一部分,它能按照任務的優(yōu)先級實現(xiàn)多任務調(diào)度,通過信號量、事件標志來實現(xiàn)任務的同步,消息隊列和郵箱機制來實現(xiàn)任務之間的通訊,中斷機制來實現(xiàn)突發(fā)事件的管理。較傳統(tǒng)的前后臺系統(tǒng),它具有更高的實時性、穩(wěn)定性。介紹了當前在國際汽車工業(yè)界日益占據(jù)主導地位的汽車電子開放式平臺系統(tǒng)(OSEK/VDX)規(guī)范。介紹了NEC汽車電子專用實時操作系統(tǒng)RX850,列舉了其他RTOS并分析了其優(yōu)缺點,建立了基于RX850的RTOS軟件開發(fā)平臺,實現(xiàn)了汽車發(fā)動機控制模塊任務的調(diào)度,并對RTOS的多任務進行了軟仿,這對于復雜軟件系統(tǒng)開發(fā)是非常有實際意義的。

引言

隨著國內(nèi)汽車電子產(chǎn)業(yè)的不斷升級和研發(fā)投入不斷加大,國內(nèi)生產(chǎn)的汽車電子簡單的ECU已經(jīng)越來越普及,例如車載音響,儀表,車身控制BCM,動力轉(zhuǎn)向EPS等等。越來越多的企業(yè)將精力投入到比較復雜的控制領域,比如發(fā)動機控制,防抱死系統(tǒng)(ABS)等,對于這些邏輯復雜、實時性和安全性高的控制任務,傳統(tǒng)的前后臺系統(tǒng)模式非實時處理的弊端越來越呈現(xiàn),這就勢必需要用到實時操作系統(tǒng)來管理這些任務。

OSEK標準是1993年德國汽車工業(yè)界聯(lián)合推出了“汽車電子的開放式系統(tǒng)及接口軟件規(guī)范”,即OSEK(opensystemandthecorrespondinginterfacesforautomotiveelectronics)。1994年法國汽車工業(yè)界的相似規(guī)范VDX(vehicledistributedexecutive)和OSEK規(guī)范合并,從而形成OSEK/VDX規(guī)范體系。當前OSEK標準已經(jīng)成為汽車電子軟件開發(fā)領域中的通用標準,旨在增強軟件代碼安全性、移植性,減少軟件開發(fā)周期。

目前,市場上通用的開源RTOS有很多,比如μC/OS-Ⅱ,F(xiàn)reeRTOS,Linux-2.6等,但是這些核多半是用于通用領域或者安全性要求不太高的領域,如果將這些移植到汽車電子動力安全控制領域,是不太合時宜的;而且,這些核本身不是基于OSEK標準,如果引入OSEK標準,無疑加大了內(nèi)核移植的難度。NEC電子的實時操作系統(tǒng)RX850是一款基于OSEK標準的汽車級專用RTOS,其內(nèi)核的實時性已經(jīng)得到第三方的專業(yè)測試。它已經(jīng)被移植到了NEC芯片的集成開發(fā)環(huán)境PMPlus和GreenHills,客戶只需要在IDE(IntegratedDevelopEnvironment)中編寫腳本文件來配置RTOS即可通過編譯,使得客戶從底層驅(qū)動編寫到RTOS任務調(diào)度輕松實現(xiàn)“無縫結(jié)合”,大大縮短了RTOS移植的開發(fā)周期。本文建立了基于NEC電子32位車身專用芯片V850/Fx3的軟件平臺,并介紹了如何實現(xiàn)RX850操作系統(tǒng)的配置,以發(fā)動機控制模塊為控制模型來實現(xiàn)多任務的實時調(diào)度,最后通過軟仿工具來分析該內(nèi)核的效率和任務調(diào)度的實時性。

一、系統(tǒng)平臺介紹

本系統(tǒng)采用NEC電子的32位車身專用芯片V850/Fx3系列,V850是NEC電子的32位微處理器核,5級流水線控制,內(nèi)部32個32位寄存器,乘法/除法指令,數(shù)據(jù)空間支持最大4GB線性尋址能力,代碼空間支持64M線性尋址能力,內(nèi)部1MB的codeflash,60KB的RAM空間,32KB的dataflash用作EEPROM模擬。

基于OSEK標準的RX850實時操作系統(tǒng)符合以下標準:操作系統(tǒng)規(guī)范(OSEKOS)、通信規(guī)范(OSEKCOM)、網(wǎng)絡管理規(guī)范(OSEKNM)和OSEK實現(xiàn)語言(OSEKOIL)。其中OSEKOS是針對汽車應用特點而專門制定的一個小型RTOS規(guī)范,著重以下幾個方面:(1)可移植性,所有API都是標準化的并且在功能上都有明確的定義;(2)可擴展性,OSEKOS旨在通用于任何類型的ECU,因此一方面系統(tǒng)要高度的模塊化,另一方面又要能進行靈活的配置;(3)汽車應用的特定需求,諸如可靠性、實用性和代價敏感性等。相應的,OSEKOS靜態(tài)配置可以通過OS2EKOIL語言實現(xiàn),用戶在系統(tǒng)生成時靜態(tài)制定任務的個數(shù)、需要的資源和系統(tǒng)服務。OSEKCOM為通信網(wǎng)絡中的數(shù)據(jù)交換提供了標準的接口和協(xié)議。OSEKNM為監(jiān)視網(wǎng)絡的流量提供了一組標準的功能函數(shù),以保證網(wǎng)絡的安全性和可靠性。

二、RX850內(nèi)核配置

由于RX850已經(jīng)被嵌入到IDE,因此用戶直接編寫內(nèi)核腳本文件即可,下面介紹如何來配置內(nèi)核。

1.系統(tǒng)時鐘設置

clkhdrINTTM0EQ0//選定TimerM為時間片中斷源

2.堆棧設置

RX850的堆棧分為系統(tǒng)堆棧和任務堆棧,

POOL0功能:系統(tǒng)基本表信息、準備隊列、每個管理塊、任務堆棧、中斷句柄堆棧(系統(tǒng)堆棧)、可變長度內(nèi)存、不變長度內(nèi)存。

POOL1功能:任務堆棧、中斷句柄堆棧(系統(tǒng)堆棧)、可變長度內(nèi)存、不變長度內(nèi)存。

POOL0和POOL1都可以作為任務堆棧,即使沒有POOL1也可以。配置如下:

intstk0x400:pool0//系統(tǒng)堆棧大小為0x400

tskTSK1_TSK10x050:pool10x06TTS_DMT0x00ei//TSK_ID_1ms任務堆棧大小0x50

3.允許最大優(yōu)先級任務數(shù)

maxpri0x1f//允許最大優(yōu)先級任務數(shù)為0x1f

4.信號量設置

semSem_Task10x00//設置了信號量Sem_Task1為0

semSem_Task20x00//設置了信號量Sem_Task2為0

5.事件標志設置

flgflg_Task1//設置了事件標志flg_Task1

flgflg_Task2//設置了事件標志flg_Task2

5.郵箱設置

mbxID_Task1TA_MPRI//設置Task1的郵箱

mbxID_Task2TA_MPRI//設置Task2的郵箱

6.中斷設置

RX850的中斷分為直接中斷和間接中斷兩種,直接中斷不受RX850制約的中斷句柄,理論上接近硬件中斷的速度,其缺點是需要用戶自己寫中斷處理句柄,包括:(1).寄存器壓棧;(2).換向,跳轉(zhuǎn)到中斷句柄的開始;(3).調(diào)用系統(tǒng)命令;(4).返回到調(diào)度;間接中斷的中斷句柄在RX850的中斷預處理后才被啟動,優(yōu)點是簡化了句柄處理過程,缺點是由于RX850的預處理降低了速度,其處理過程如下:

間接中斷配置如下:

inthdrINTAD_AD_Interrupt//AD間接中斷句柄配置

inthdrINTC1REC_CAN_Ch1RxInt//CAN間接中斷句柄配置

7.固定/可變內(nèi)存池設置

當系統(tǒng)需要交換較大的數(shù)據(jù)時,此時任務堆棧是不夠用的,需要開辟一段內(nèi)存來使用。RX850支持兩種方式的內(nèi)存配置,固定內(nèi)存池和可變內(nèi)存池。固定內(nèi)存池由用戶自定義內(nèi)存池的大小,可變內(nèi)存池根據(jù)實際應用系統(tǒng)動態(tài)的定義所需內(nèi)存大小,配置如下:

mpfMPF_ID_MBX0x08:pool150

//固定內(nèi)存以0x08字節(jié)為單位排列,大小為50*0x08;

mplMPL_ID_Task10x08:pool1

//可變內(nèi)存0x08字節(jié)為單位排列

8.系統(tǒng)周期循環(huán)中斷設置

cycCYC_INT_TIMER_CYC_IntTimerTCY_OFF10

//系統(tǒng)周期循環(huán)中斷時間為10個時間片

以上完成了操作系統(tǒng)的配置,然后通過NEC的IDE即可生成操作系統(tǒng)的.s和.h文件,將此兩個文件包含在工程文件中即可。超級秘書網(wǎng)

三、RX850軟仿及結(jié)論

通過以上配置,選擇發(fā)動機控制模塊為對象,下面對RX850進行軟仿。NEC電子提供專門的軟仿工具AZ,在IDE中打開AZ。

通過上圖可以很方便的看到每個任務的實時調(diào)度情況和CPU內(nèi)核的使用效率。目前CPU的空閑率為94%,很多任務實際上沒有被調(diào)用,用戶可以根據(jù)實際情況將更多的功能模塊放在API任務中來運行。軟仿只能提供模擬的仿真,如果用戶需要更精確的trace工具,則需要用硬仿來實現(xiàn)。

篇5

關鍵詞:RTOS嵌入式系統(tǒng)嵌入式應用嵌入式開發(fā)工具

隨著互聯(lián)網(wǎng)應用的迅速發(fā)展,嵌入式微處理器的應用日益廣泛,無處不在,從波音飛機到移動電話,都有嵌入式微處理器的存在。在嵌入式微處理器的應用開發(fā)中,嵌入式實時操作系統(tǒng)(簡稱RTOS)是核心軟件,就像我們?nèi)粘K糜嬎銠C的桌面系統(tǒng)中,微軟公司的Windows98一樣重要。RTOS已經(jīng)在全球形成了1個產(chǎn)業(yè),據(jù)美國EMF(電子市場分析)報告,1999年全球RTOS市場產(chǎn)值達3.6億美圓,而相關的整個嵌入式開發(fā)工具(包括仿真器、邏輯分析儀、軟件編譯器和調(diào)試器)則高達9億美圓。

一、RTOS發(fā)展歷史

從1981年ReadySystem發(fā)展了世界上第1個商業(yè)嵌入式實時內(nèi)核(VRTX32),到今天已經(jīng)有近20年的歷史。20世紀80年代的產(chǎn)品還只支持一些16位的微處理器,如68k,8086等。這時候的RTOS還只有內(nèi)核,以銷售二進制代碼為主。當時的產(chǎn)品除VRTX外,還有IPI公司的MTOS和80年代末ISI公司的PSOS。產(chǎn)品主要用于軍事和電信設備。進入20世紀90年代,現(xiàn)代操作系統(tǒng)的設計思想,如微內(nèi)核設計技術和模塊化設計思想,開始滲入RTOS領域。老牌的RTOS廠家如ReadySystem(在1995年與MicrotecResearch合并),也推出新一代的VRTXsa實時內(nèi)核,新一代的RTOS廠家Windriver推出了Vxwork。另外在這個時期,各家公司都有力求擺脫完全依賴第三方工具的制約,而通過自己收購、授權或使用免費工具鏈的方式,組成1套完整的開發(fā)環(huán)境。例如,ISI公司的Prismt、著名的Tornado(Windriver)和老牌的Spectra(VRTX開發(fā)系統(tǒng))等。

進入20世紀90年代中期,互聯(lián)網(wǎng)之風在北美日漸風行。網(wǎng)絡設備制造商、終端產(chǎn)品制造商都要求RTOS有網(wǎng)絡和圖形界面的功能。為了方便使用大量現(xiàn)存的軟件代碼,他們希望RTOS廠家都支持標準的API,如POSIX,Win32等,并希望RTOS的開發(fā)環(huán)境與他們已經(jīng)熟悉的UNIX,Windows一致。這個時期代表性的產(chǎn)品有Vxwork,QNX,Lynx和WinCE等。

二、RTOS市場和技術發(fā)展的變化

可以看出,進入20世紀90年代后,RTOS在嵌入式系統(tǒng)設計中的主導地位已經(jīng)確定,越來越多的工程師使用RTOS,更多的新用戶愿意選擇購買而不是自己開發(fā)。我們注意到,RTOS的技術發(fā)展有以下一些變化:

1.因為新的處理器越來越多,RTOS自身結(jié)構(gòu)的設計更易于移植,以便在短時間內(nèi)支持更多種微處理器。

2.開放源碼之風已波及RTOS廠家。數(shù)量相當多的RTOS廠家出售RTOS時,就附加了源程序代碼并含生產(chǎn)版稅。

3.后PC時代更多的產(chǎn)品使用RTOS,它們對實時性要求并不高,如手持設備等。微軟公司的WinCE,PlamOS,JavaOS等RTOS產(chǎn)品就是順應這些應用而開發(fā)出來的。

4.電信設備、控制系統(tǒng)要求的高可靠性,對RTOS提出了新的要求。瑞典Enea公司的OSE和WindRiver新推出的VxworkAE對支持HA(高可用性)和熱切換等特點都下了一番功夫。

5.Windriver收購了ISI,在RTOS市場形成了相當程度的壟斷,但是由于Windriver決定放棄PSOS,轉(zhuǎn)為開發(fā)Vxwork與PSOS合二為一版本,這便使得PSOS用戶再一次走到重新選擇RTOS的路口,給了其他RTOS廠家1次機會。

6.嵌入式Linux已經(jīng)在消費電子設備中得到應用。韓國和日本的一些企業(yè)都推出了基于嵌入式Linux的手持設備。嵌入式Linux得到了相當廣泛的半導體廠商的支持和投資,如Intel和Motorola。

三、RTOS的未來

未來RTOS的應用可能劃分為3個不同的領域:

1.系統(tǒng)級:指RTOS運行在1個小型的計算機系統(tǒng)中完成實時的控制作用。這個領域?qū)⒅饕俏④浥cSun競爭之地,傳統(tǒng)上Unix在這里占有絕對優(yōu)勢。Sun通過收購,讓他的Solaris與Chrousos(原歐洲的1種RTOS)結(jié)合,微軟力推NT的嵌入式版本“EmbeddedNT”。此外,嵌入式Linux將依托源程序碼開放和軟件資源豐富的優(yōu)勢,進入系統(tǒng)級RTOS的市場。

2.板級:傳統(tǒng)的RTOS的主要市場。如Vxwork,PSOS,QNX,Lynx和VRTX的應用將主要集中在航空航天、電話電訊等設備上。

3.SOC級(即片上系統(tǒng)):新一代RTOS的領域:主要應用在消費電子、互聯(lián)網(wǎng)絡和手持設備等產(chǎn)品上。代表的產(chǎn)品有Symbian的Epoc、ATI的Nucleus,Expresslogic的Threadx。老牌的RTOS廠家的產(chǎn)品VRTX和Vxwork也很注意這個市場。

從某種程度講,不會出現(xiàn)1個標準的RTOS(像微軟的Windows在桌面系統(tǒng)中的地位一樣),因為嵌入式應用本身就極具多樣性。在某個時間段以及某種行業(yè),會出現(xiàn)1種絕對領導地位的RTOS,比如今天在寬帶的數(shù)據(jù)通信設備中的Vxwork和在亞洲手持設備市場上的WinCE就是一例子。但是,這種壟斷地位也并不是牢不可破的,因為在某種程度上用戶和合作伙伴更愿意去培養(yǎng)1個新的競爭對手。比如,Intel投資的Montivista和Motorola投資的Lineo,這兩家嵌入式Linux系統(tǒng),就是說明半導體廠商更愿意看到1個經(jīng)濟適用的、開放的RTOS環(huán)境。

四、RTOS在中國

中國將是世界上最大的RTOS市場之一。因為中國有著世界上最大的電信市場。據(jù)信息產(chǎn)業(yè)部預計,在未來2~3年內(nèi),中國將是世界上最大的手機市場(每1部手機都在運行1個RTOS)。這樣龐大的電信市場就會孕育著大量的電信設備制造商,這就造就了大量的RTOS和開發(fā)工具市場機會。目前,中國的絕大多數(shù)設備制造商在采用RTOS時,首先考慮的還是國外產(chǎn)品。目前,在中國市場上流行的RTOS主要有Vxwork,PSOS,VRTX,Nucleus,QNX和WinCE等。由于多數(shù)RTOS是嵌入在設備的控制器上,所以多數(shù)用戶并不愿意冒風險嘗試1種新的RTOS。

但是我們同時也注意到,目前RTOS在中國市場的銷售額還很小,這主要是2個原因:

1.中國設備制造商的規(guī)模普遍還無法與國外公司相比,開發(fā)和人員費用相對還較高,所以RTOS對于中國用戶來講是比較貴的。

2.多數(shù)國內(nèi)用戶還沒有開始購買RTOS的版稅,其主要原因有:產(chǎn)品未能按計劃批量生產(chǎn),沒有交版稅的意識。應該注意,大多數(shù)二進制的RTOS必須在產(chǎn)品量產(chǎn)時交版稅,或者按數(shù)量買或者與廠家討論一次性買斷,而由廠家直接發(fā)給你授權協(xié)議書。據(jù)國外某家RTOS廠家稱,他們年收入的30%來自版稅。

篇6

1.采購管理系統(tǒng)

整個流程從企業(yè)的需求錄入開始到最終產(chǎn)生應收款和應付款結(jié)束。采購管理流程中先有需求,然后進行采購,業(yè)務員則決定是否需要簽訂合同而錄入采購單。運用采購管理系統(tǒng)能大大簡化工作量,提高工作效率,只要按照要求錄入完畢并確認,系統(tǒng)就能自動對需求進行運算,經(jīng)過一系列的算法后,系統(tǒng)自動制定出采購清單,系統(tǒng)會結(jié)合物資的實際庫存情況來制定。采購的物資到貨以后需要進行到貨登記,登記完后產(chǎn)生入庫單,進行審核與確認,以更新庫存數(shù)據(jù)庫列表。采購過程中會出現(xiàn)結(jié)算方式,常用的要么現(xiàn)付、要么未付,即銀行存款支付或者產(chǎn)生應付賬款。

2.銷售管理系統(tǒng)

對企業(yè)生產(chǎn)經(jīng)營來說,售是經(jīng)營活動的中心。銷售是企業(yè)一切活動的起點,有了客戶訂單或銷售預測后,才可以執(zhí)行采購計劃和生產(chǎn)計劃。銷售管理系統(tǒng)主要是編制并審核銷售訂單、發(fā)貨單、銷售發(fā)票等單據(jù),經(jīng)審核的發(fā)貨單可以自動生成銷售出庫單并沖減商品庫存量,進行銷售出庫單的記賬和制單,完成銷售成本的核算,根據(jù)銷售發(fā)票完成銷售收入和稅金的核算,以銷售發(fā)票為依據(jù),記錄應收賬款的情況。

3.庫存管理系統(tǒng)

庫存管理系統(tǒng)是非常重要的,側(cè)重解決的是存貨庫存量控制和核算發(fā)出成本。庫存管理系統(tǒng)通過超儲、不足等實現(xiàn)對庫存量的控制,并且將信息反饋給采購、生產(chǎn)部門,這些部門根據(jù)實際情況決定是否生產(chǎn)或采購。在庫存模塊中主要介紹庫存單據(jù)出庫成本、入庫成本的技術:拆卸組裝、委托加工、自制入庫、盤點、調(diào)撥等業(yè)務在系統(tǒng)實現(xiàn)過程中需注意的地方及庫存表報的查詢。主要包括自制入庫業(yè)務對于企業(yè)中自制入庫的業(yè)務,在系統(tǒng)中是通過“領用出庫”、“自制入庫單”與“入庫成本單”來聯(lián)合實現(xiàn)的:其它出入庫的業(yè)務,其它入庫主要指接受捐贈、投資以及采購的溢余等商品入庫的情況,滿足上述情況的入庫業(yè)務,克填制其它入庫單。其它出庫主要指捐贈、對外投資、以及商品采購的短缺及損耗等商品出庫情況,滿足上述情況的出庫業(yè)務,可填制其它出庫單;商品調(diào)撥,企業(yè)內(nèi)部不同部門同一貨位之間、相同部門不同貨位之間的調(diào)撥業(yè)務,可填制“商品調(diào)撥單”。庫存管理信息系統(tǒng)的目標是保障企業(yè)生產(chǎn)所需的所有商品供應通過有效地管理,提高庫存周轉(zhuǎn)率,降低資金占用。我們根據(jù)系統(tǒng)分析結(jié)果,得出本系統(tǒng)的功能結(jié)構(gòu)圖。進庫功能主要是在倉庫在采購貨物的時候進行進庫登記。然后再通過修改庫存信息。在該廠需要進行提貨時候向倉庫發(fā)出提貨單,如果倉庫有貨則發(fā)貨并且進行出貨登記,要是缺貨則向采購科發(fā)出缺貨單,并進行修改信息,當貨物到達時向生產(chǎn)部門或銷售部門發(fā)貨。

4.核算管理系統(tǒng)

核算管理系統(tǒng)在進銷存中就是你出憑證的系統(tǒng)模塊,其中有供內(nèi)部使用的憑證,有跟客戶和供應商產(chǎn)生的業(yè)務發(fā)生的憑證,只要分清出那些是內(nèi)部使用的憑證,那些是外部憑證的,核算系統(tǒng)并不難做。

二、結(jié)語

篇7

操作系統(tǒng)是對計算機的各類軟、硬件資源進行管理以充分利用計算機系統(tǒng)中的各類資源,并向用戶提供良好的工作環(huán)境和運行界面的系統(tǒng)軟件。操作系統(tǒng)論文作為在計算機硬件上鋪設的第一層軟件,提供了用戶使用計算機的接口。因此,操作系統(tǒng)開發(fā)人員既具有軟件開發(fā)方面的知識,也要了解硬件的相關知識。操作系統(tǒng)是一門綜合性課程,它由許多概念、設計思想及算法等構(gòu)成,因此,具有概念抽象、理論性強、知識點多等特點。操作系統(tǒng)是計算機專業(yè)一門重要的專業(yè)主干課,其教學目標是幫助學生了解計算機硬件和軟件的關系、掌握操作系統(tǒng)各種功能的實現(xiàn)算法,注重通過對操作系統(tǒng)抽象的理論知識及系統(tǒng)結(jié)構(gòu)的學習,培養(yǎng)學生開發(fā)和設計大型軟件的思維和方法,提高學生軟件開發(fā)能力。因此,操作系統(tǒng)這門課程配有相應的實驗課程。 

然而在實際教學中發(fā)現(xiàn),該課程并未能有效的提高學生獨立開發(fā)軟件的能力,僅僅實現(xiàn)了讓學生了解操作系統(tǒng)的構(gòu)成及功能實現(xiàn)這一基本教學目標。這個問題的出現(xiàn)與我們課程特點密不可分。首先,課程設置偏向理論,課程內(nèi)容偏向軟件設計和算法實現(xiàn),雖配套有實驗課程,但比例較低,不利于提高學生的實踐能力。其次,操作系統(tǒng)涉及到各類軟硬件資源,因此,需要專門的實驗平臺,否則,直接采用傳統(tǒng)的編碼和調(diào)試方法及有可能導致系統(tǒng)崩潰。最后,對于操作系統(tǒng)這種大型軟件的開發(fā),需要學生具有較強的編程開發(fā)能力,實際上,很多學生并不能快速有效地將算法轉(zhuǎn)化為可執(zhí)行程序,少數(shù)學生雖能快速實現(xiàn)局部功能但對軟件的整體思維和開發(fā)能力欠缺,目前大部分的實驗工作主要集中與操作系統(tǒng)部分子系統(tǒng)功能的實現(xiàn)。本文對操作系統(tǒng)理論教學及實驗教學中學生遇到的各種問題進行歸納總結(jié),進而探討培養(yǎng)學生的軟件整體開發(fā)思維和方法,提高學生的獨立軟件開發(fā)能力。 

1 問題歸納 

1.1 局部思維方式 

所謂局部思維方式是指學生在學習操作系統(tǒng)知識時,只關注當前學習或?qū)嵺`的內(nèi)容與知識點,很少能將當前知識與前面的知識聯(lián)系起來,這導致學習完一個知識點后,學生很可能不知道該知識點是為了解決什么樣的問題。這樣的局部思維方式是學生長期的學習過程中養(yǎng)成的不良習慣,不僅在學習操作系統(tǒng)這門課程中出現(xiàn),在其他課程的學習中也同樣存在。 

操作系統(tǒng)是一個整體性軟件,各章節(jié)的知識都是相互關聯(lián)的,因此,在這門課程的學習過程中,這種局部思維方式帶來的問題就更加明顯。下面總結(jié)了幾種由局部性思維帶來的普遍性問題。 

關注知識細節(jié),忽視知識的宏觀應用。實際教學中發(fā)現(xiàn),很多學生在學習的過程中常常發(fā)生一葉障目的現(xiàn)象,通常的表現(xiàn)是學習了當前的知識點后,不知道學習該內(nèi)容的目的,或者不知道該知識是用于實現(xiàn)操作系統(tǒng)的哪部分的功能的,因此,常常在學期結(jié)束后詢問學生什么是操作系統(tǒng),它有哪些構(gòu)成和基本功能,很多學生還是一頭霧水。這些主要是由于學生缺少以宏觀的視角來看待和解決問題的能力,不能正確認識每個細小知識點在整個宏觀問題中所處的位置。這就好比學生們仔細認真的觀察了一磚一瓦(各個細小知識點)卻不知道磚瓦是用來蓋房子(開發(fā)大型的系統(tǒng)軟件操作系統(tǒng))的,或者即使知道使用磚瓦來蓋房子,也不知道在什么地方什么時候使用什么材料來蓋房子,概其主要原因就是學生過于關注一磚一瓦的實現(xiàn)細節(jié)而忘記關注磚瓦的使用過程,即只關注微觀的知識細節(jié),而忘記學習宏觀的知識應用方式,這也是現(xiàn)在學生學習中的普遍性問題。

關注知識點個體,忽視整體聯(lián)系。操作系統(tǒng)課程中,每個章節(jié)內(nèi)容對應部分子功能的實現(xiàn),每個子功能相互協(xié)作才能構(gòu)成一個完整的操作系統(tǒng)軟件。學生在學習過程中較多關注每個子功能的實現(xiàn),而忽視了它們之間的聯(lián)系,因此,無法有效的將各個子功能拼接成一個完整的系統(tǒng)軟件。例如,學生不清楚I/O系統(tǒng)與用戶之間的接口在哪,如何讓處理機管理系統(tǒng)、存儲管理系統(tǒng)、I/O系統(tǒng)等協(xié)同工作,等等。 

1.2 知識儲備不足 

實際教學中,除了上述局部性思維方式外,學生知識儲備不足也是影響課程學習的另一主要原因。我們知道操作系統(tǒng)是一門綜合性課程,想要學好操作系統(tǒng),既要了解軟件開發(fā)的相關知識,也要有硬件的基礎,因此,知識儲備不足會直接影響操作系統(tǒng)的學習。其表現(xiàn)歸納如下。 

⑴ 常見的概念模糊。例如,邏輯地址空間與物理地址空間、程序的鏈接、數(shù)據(jù)結(jié)構(gòu)、虛擬化等等常見概念的理解模糊。還有很多同學不了解內(nèi)存單元的地址,更不知道內(nèi)存地址的作用是什么,因此,在介紹地址映射、數(shù)據(jù)裝入內(nèi)存的過程需要花費大量的時間去補充基礎知識。 

⑵ 硬件基礎薄弱。計算機系統(tǒng)硬件組成知識薄弱,不了解計算機系統(tǒng)的工作流程,不了解計算機常見硬件的基本功能和基本特性。 

⑶ 代碼實現(xiàn)能力差。操作系統(tǒng)實驗課程的教學中看到學生的編程能力普遍較差,且沒有軟件開發(fā)基礎和思維方式,很多學生只注重功能的實現(xiàn),不關注各個部分的接口,導致各子系統(tǒng)可以正常運行,但是,無法拼接成完整系統(tǒng)。主要表現(xiàn)為編碼隨意,亂用GOTO語句,數(shù)據(jù)結(jié)構(gòu)定義不規(guī)范,指針使用隨意。例如,通過printf(“%d\n”,i),學生編寫輸入語句scanf(“%d\n”,&i),而實際規(guī)范的語句應為scanf("%d",&i)。 

2 操作系統(tǒng)課程教學的幾點思考 

基于上述問題,本文針對操作系統(tǒng)教學提出幾點改進意見。 

2.1 理論與實踐相結(jié)合 

注重理論教學的同時,也要加強學生的實際應用能力的提高?,F(xiàn)在的學生更加看重知識的實用性,將自己所學知識轉(zhuǎn)化為實際應用和實踐是學生自主學習的主要內(nèi)在推動力。單純的進行理論教學,會讓學生感覺操作系統(tǒng)是一門生澀枯燥毫無用處的一門課程。 

在教學中,我們將理論和實踐相互結(jié)合,詳細闡述理論知識,讓學生充分理解相關工作原理及實現(xiàn)算法,再通過配套實驗課程指導學生將理論知識轉(zhuǎn)化為實際應用,通過這一轉(zhuǎn)化過程,提高學生對操作系統(tǒng)實用性的認識,激發(fā)學生自我學習的內(nèi)在動力。理論轉(zhuǎn)化為實踐的過程中,學生會逐漸發(fā)現(xiàn)只有扎實的理論基礎積累才能快速的轉(zhuǎn)化成實踐,提高了學生對理論知識學習的重視程度,從而形成理論指導實踐,再由實踐去反思理論的良性循環(huán)。 

在理論轉(zhuǎn)化成實踐的過程中,學生能夠?qū)⒖辗旱母拍盥涞骄唧w實處加深印象和理解,例如,內(nèi)存的物理地址空間,可以通過編碼的調(diào)試過程查看每個內(nèi)存單元的存儲內(nèi)容,充分理解內(nèi)存的數(shù)據(jù)存儲及變化。除此之外,通過理論轉(zhuǎn)化代碼實現(xiàn)的過程能夠快速有效的提高學生的編程能力,發(fā)現(xiàn)自己在編碼方面的不足和問題,以及提高自身的軟件設計能力。 

2.2 整體與局部相結(jié)合 

建立學生對于操作系統(tǒng)的整體概念,關于處理機管理、存儲器管理、I/O設備管理、文件管理及用戶接口等模塊都是操作系統(tǒng)的子系統(tǒng),這些子系統(tǒng)相互關聯(lián)、相互協(xié)作才能實現(xiàn)操作系統(tǒng)對各種軟硬件資源進行管理并為用戶提供良好工作環(huán)境的功能。 

教學中充分強調(diào)操作系統(tǒng)的整體結(jié)構(gòu)和設計方法,在對整體結(jié)構(gòu)和功能充分了解以后,再介紹操作系統(tǒng)的模塊劃分。透徹講解每模塊的設計思想和功能實現(xiàn),讓學生在潛移默化中學習軟件開發(fā)的思維方式和解決方案,逐漸提高學生運用已學的設計思想解決問題的能力。只有對每個子模塊具體功能原理和實現(xiàn)方法充分掌握后才能快捷迅速的將它們從理論知識轉(zhuǎn)化成代碼,也只有在每個子功能的代碼都能充分實現(xiàn)的情況下,才有可能將它們連接成一個完整的大型的操作系統(tǒng)軟件。 

整體是由局部組成,只有每一子模塊都實現(xiàn)了才有可能連接成整體,而整體不是對每個子模塊的簡單拼湊,各個模塊之間如何相互協(xié)調(diào)共同完成用戶任務是需要在一開始的軟件整體設計中考慮的問題,此外,軟件設計之初我們還需考慮各子模塊之間的接口。因此,在整個教學過程中,我們遵循“整體-局部-整體”的一個教學過程。通過這個過程,讓學生充分了解整體與部分之間的相互關系,加深理解。 

2.3 層次式教學 

操作系統(tǒng)課程是按年級統(tǒng)一開課的,但是同一個年級,不同學生的差別也很大,比如,他們各自的知識儲備、自身的理解力和領悟力、興趣愛好,比如有的善于思考而有的喜歡動手編程等等。因此,對不同學生采用統(tǒng)一標準顯然是不合適的,對于能力強、精力充沛的學生,這個統(tǒng)一的標準不能激發(fā)他們的潛能,而對于知識儲備相對較弱、能力稍差的學生,這樣的統(tǒng)一標準又會打擊自信心。因此,對于操作系統(tǒng)無論是理論教學還是實驗教學,都建議采用層次式教學,對于不同水平的學生提出不同要求。 

在理論教學中,我們將掌握操作系統(tǒng)的基本概念、設計思想和算法作為基本教學目標,對于能力較強的學生在教學中提示一些課本中沒有的知識點去拓展知識空間和思維方法,比如:在學習了用戶空間和內(nèi)核空間的基本概念后,讓有能力的學生了解用戶空間的數(shù)據(jù)如何與內(nèi)核空間的數(shù)據(jù)進行交互,實現(xiàn)兩者之間數(shù)據(jù)交互的方法有哪些。而對于那些動手能力較強的學生可以引導他們用1~2種方式去實現(xiàn)將用戶空間的數(shù)據(jù)傳遞到內(nèi)核空間內(nèi)。 

在實驗教學中,基本的教學目標是獨立實現(xiàn)操作系統(tǒng)中的基本算法,如進程同步、進程調(diào)度算法、銀行家算法及內(nèi)存的分配回收算法等等。對于能力較強的學生可以引導他們?nèi)プx一些開源linux操作系統(tǒng)的源代碼,有選擇的對部分功能模塊進行優(yōu)化改進,然后再編譯鏈接,最終將該改進植入操作系統(tǒng)中,以此激發(fā)學生的學習興趣。 

3 結(jié)束語 

操作系統(tǒng)課程的教學不僅需要教師不斷更新教學內(nèi)容和教學工具,還要求教師能夠根據(jù)學生的特點因材施教。本文總結(jié)了歸納操作系統(tǒng)在理論教學和實驗教學中出現(xiàn)的一些常見問題,如局部思維方式問題和知識儲備不足代碼實現(xiàn)能力差的問題,并針對這些問題提出三點改進建議:強調(diào)整體與局部之間的相互關系,形成整體-局部-整體的教學模式;要求理論聯(lián)系實際,將理論知識應用到具體實踐中去,從理論到代碼實踐,再通過代碼實踐過程反思理論方法的有效的教學方法;針對不同學生采用層次式教學手段,設定基本教學目標,對于完成基本教學目標的同學引導其完成更高層教學目標,提高學生學習興趣和能力。 

參考文獻(References): 

篇8

《操作系統(tǒng)原理》是計算機專業(yè)的核心課程,具有很強的實踐性與實用性。大多學生都認為該課程容易學,就是掌握一些算法,比如進程調(diào)度算法、死鎖避免算法、磁盤調(diào)度算法等。這反映出目前計算機教學中普遍存在的一些問題,即課程與課程之間相對獨立,課程的章節(jié)之間相對獨立,使得大部分學生缺乏系統(tǒng)結(jié)構(gòu)觀,只注重解決局部的編程和應用問題[1]。筆者發(fā)現(xiàn),對《操作系統(tǒng)原理》課程的學習如果僅注重于細節(jié)的算法,難以真正培養(yǎng)學生的系統(tǒng)思維能力。讓學生通過該課程的學習,構(gòu)建大型軟件的系統(tǒng)和結(jié)構(gòu)化思維至關重要。 

在課程體系中,操作系統(tǒng)論文被安排在程序設計、數(shù)據(jù)結(jié)構(gòu)、匯編語言、計算機組成原理等課程之后,是第一門側(cè)重研究大型計算機軟件組成結(jié)構(gòu)的課程。目前,計算機專業(yè)的系統(tǒng)能力培養(yǎng)已經(jīng)被國內(nèi)計算機教育專家所重視[1],有條件的學校已進行了課程體系重構(gòu),而對目前尚未改革的學校而言,操作系統(tǒng)課程可以擔當起該職責。 

本文結(jié)合筆者在教學中的體會,提出應在操作系統(tǒng)原理教學過程強化結(jié)構(gòu)概念和培養(yǎng)結(jié)構(gòu)思維,從多方面探討操作系統(tǒng)課程中無處不在的結(jié)構(gòu)概念及其對教學的作用。 

1結(jié)構(gòu)的含義 

操作系統(tǒng)是一個大型系統(tǒng),所謂系統(tǒng),是由相互作用和相互依賴的若干要素結(jié)合而成的、具有特定功能的有機整體[2]。所謂結(jié)構(gòu),是指系統(tǒng)內(nèi)部各組成要素之間在時間或空間上排列和組合的具體形式。與結(jié)構(gòu)相對應,系統(tǒng)的外延是系統(tǒng)對外呈現(xiàn)的功能,例如操作系統(tǒng)作為用戶接口和服務提供者、操作系統(tǒng)作為資源管理者和控制者,都是從功能角度來闡述操作系統(tǒng)的外在表現(xiàn)。“結(jié)構(gòu)決定功能”。系統(tǒng)論認為,功能是系統(tǒng)內(nèi)部固有能力的外部表現(xiàn),它終究是由系統(tǒng)的內(nèi)部結(jié)構(gòu)所決定。對于操作系統(tǒng)這樣的大型軟件而言,結(jié)構(gòu)的好壞決定了軟件的可移植性、可靠性、健壯性和可擴展性。 

結(jié)是結(jié)合之義,構(gòu)是構(gòu)造之義。在科學研究和工程設計中,人們總是孜孜不倦地追求通過定義最小的本元集合和構(gòu)造規(guī)則來產(chǎn)生某個目標系統(tǒng)。老子言:“道生一,一生二,二生三,三生萬物。”這與中國古代人講究的“金、木、水、火、土”一樣,都是樸素的探索世界結(jié)構(gòu)的例子。這些與現(xiàn)代科學的認知殊途而同歸。現(xiàn)代科學表明,物質(zhì)都由相同的最基本粒子構(gòu)成,結(jié)構(gòu)的差異產(chǎn)生不同的物質(zhì),碳原子的同素異形體石墨和鉆石便是最好的詮釋。在計算機科學中,這一方法也被廣泛應用,例如:程序由數(shù)據(jù)結(jié)構(gòu)和控制結(jié)構(gòu)決定。數(shù)據(jù)結(jié)構(gòu)的本元是基本數(shù)據(jù)類型,而通過線性構(gòu)造規(guī)則、層次構(gòu)造規(guī)則和網(wǎng)狀構(gòu)造規(guī)則可以創(chuàng)建任意復雜的數(shù)據(jù)類型。控制程序的基本要素是語句,理論上通過順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)可以構(gòu)造出任何程序。 

結(jié)構(gòu)在人類的認知過程中也扮演著非常重要的角色。結(jié)構(gòu)化思維方法是以事物的結(jié)構(gòu)為思維對象,以對事物結(jié)構(gòu)的積極建構(gòu)為思維過程,力求得出事物客觀規(guī)律的一種思維方法。認知結(jié)構(gòu)學習理論的創(chuàng)立者布魯納指出“掌握事物的結(jié)構(gòu),就是以使許多別的東西與它有意義地聯(lián)系起來的方式去理解它。簡單而言,學習結(jié)構(gòu)是指學習事物是如何相互關聯(lián)的。 

綜上所述,結(jié)構(gòu)一方面強調(diào)構(gòu)造,另一方面強調(diào)聯(lián)系。因此,在教學過程中,應該重視結(jié)構(gòu)概念和結(jié)構(gòu)思維,注重操作系統(tǒng)各要素的組合方式和相互之間的聯(lián)系,引導學生掌握操作系統(tǒng)構(gòu)造的一般性規(guī)律。 

2操作系統(tǒng)中結(jié)構(gòu)的概念 

可以說,結(jié)構(gòu)貫穿于操作系統(tǒng)原理課程教學的始終。有效識別《操作系統(tǒng)原理》課程中的結(jié)構(gòu)并理解其對操作系統(tǒng)原理教學的重要作用對于提高學生的認知效率非常關鍵。 

2.1操作系統(tǒng)整體結(jié)構(gòu) 

操作系統(tǒng)的結(jié)構(gòu)方面,較為普遍的是如圖1所示的自底向上的由硬件、操作系統(tǒng)、應用程序等組成的層次化靜態(tài)結(jié)構(gòu)圖。從靜態(tài)的角度看,一個計算機系統(tǒng)由各種物理特性和傳輸速度各異的硬件、實現(xiàn)不同功能的資源管理模塊和眾多應用程序組成。這些是計算機系統(tǒng)的基本要素。抽象和分層將這些要素組合成一個有機整體。在這一結(jié)構(gòu)圖中,以內(nèi)核為基準,向下,通過硬件驅(qū)動程序屏蔽具體硬件的類型差異,使內(nèi)核能夠獨立于紛繁蕪雜的硬件設備而演化;向上,提供統(tǒng)一的系統(tǒng)調(diào)用接口,作為運行于用戶態(tài)的應用程序訪問內(nèi)核功能的門戶,從而使上層應用程序可以獨立于內(nèi)核而演化。無論是Windows XP操作系統(tǒng)、Unix操作系統(tǒng)、還是Android操作系統(tǒng),都可以看作是這一基本結(jié)構(gòu)的演化。 

2.2內(nèi)核結(jié)構(gòu) 

具體到內(nèi)核本身,其發(fā)展歷程中也經(jīng)歷了多種結(jié)構(gòu)的演變,從早期的整體式單內(nèi)核結(jié)構(gòu)到后來的層次式單內(nèi)核結(jié)構(gòu)再到微內(nèi)核結(jié)構(gòu)。Unix和Linux都是單內(nèi)核結(jié)構(gòu),而Windows XP和Mach屬于微內(nèi)核結(jié)構(gòu)。圖2給出了層次式單內(nèi)核和微內(nèi)核的結(jié)構(gòu)示意圖[3]。鑒于操作系統(tǒng)軟件的復雜性,內(nèi)核的結(jié)構(gòu)對操作系統(tǒng)軟件的正確性、效率、可擴展性、可移植性等具有重要作用,是“結(jié)構(gòu)決定功能”的典型范例。 

整體式結(jié)構(gòu)存在于上世紀50年代,當時對結(jié)構(gòu)的關心甚少,內(nèi)核被劃分成功能相對獨立的模塊,而模塊之間可以不加控制地自由調(diào)用。這一結(jié)構(gòu)的優(yōu)點是結(jié)構(gòu)緊密、組合方便、系統(tǒng)效率高,但缺點也很明顯,即模塊之間調(diào)用關系復雜,系統(tǒng)結(jié)構(gòu)不清晰,可移植性差,當系統(tǒng)規(guī)模變大時難以保證正確性。

層次式結(jié)構(gòu)則將模塊依照功能的調(diào)用次序排列成若干層次,各層之間單向調(diào)用。其優(yōu)點是接口少而簡單,下層模塊的正確性為上層模塊的正確性提供了基礎。然而,嚴格的層次難以界定,嚴格的分層也降低了系統(tǒng)效率。此外,由于一層包括了非常多的功能,對于某個層次進行大的增刪可能會對相鄰層產(chǎn)生意想不到的影響。因此,很難在某個操作系統(tǒng)基礎上通過適當增/刪功能實現(xiàn)定制的操作系統(tǒng),而這一點正是微內(nèi)核的初衷。 

微內(nèi)核認為只有最核心的操作系統(tǒng)功能(例如進程切換、消息傳遞、設備驅(qū)動等)需要運行于內(nèi)核態(tài),而其它服務可以建立在微內(nèi)核之上,作為服務進程運行在用戶態(tài),相互之間依賴于微內(nèi)核的消息傳遞進行交互。通過這一結(jié)構(gòu)的改變,微內(nèi)核操作系統(tǒng)具備了可擴展性強、移植性好、可靠性高和易于支持分布式實現(xiàn)等諸多優(yōu)點。 

2.3進程結(jié)構(gòu) 

2.3.1內(nèi)核功能組織和進程映像邏輯結(jié)構(gòu) 

在教學過程中,筆者發(fā)現(xiàn)部分學生會將操作系統(tǒng)看作是一種獨立而神秘的特殊程序。確實,操作系統(tǒng)有其特殊性,例如其運行在內(nèi)核態(tài)。但更重要的是,操作系統(tǒng)程序和普通程序一樣,需要獲得處理器后才能執(zhí)行;操作系統(tǒng)程序并不一直占用處理器,只要有可能,就會主動放棄對處理器的控制。為了深入理解操作系統(tǒng)程序和普通程序的異同,則必須理解操作系統(tǒng)內(nèi)核功能的組織模型和進程映像結(jié)構(gòu)。 

在多道程序操作系統(tǒng)中,用戶程序被組織為進程在用戶模式執(zhí)行,而操作系統(tǒng)的功能是否也需要被組織成獨立的進程,則有不同的選擇。一種早期的組織方式是,操作系統(tǒng)的功能運行在任何進程之外,擁有自己獨立的地址空間和運行棧。第二種組織方式是讓大部分內(nèi)核功能在用戶進程內(nèi)執(zhí)行,將OS看成是一組用戶進程經(jīng)常會調(diào)用的常用功能的集合。為此,每個進程映像不僅包括用戶程序執(zhí)行所需的環(huán)境,還需要包含為執(zhí)行操作系統(tǒng)內(nèi)核程序執(zhí)行所需的代碼、數(shù)據(jù)和堆棧。這一執(zhí)行模型很好地詮釋了進程和程序的關系并非是1對1的。在同一個進程內(nèi),可以執(zhí)行用戶程序和操作系統(tǒng)程序,而在不同進程中執(zhí)行的操作系統(tǒng)程序是相同的(通過共享地址空間共享)。最后一種方式是將大部分操作系統(tǒng)功能也組織成進程,與用戶進程一樣可被獨立調(diào)度。這種方式的好處在于一些非關鍵的操作系統(tǒng)功能可以按照某個優(yōu)先級和其它進程交錯運行,同時,在多處理器環(huán)境下,也便于操作系統(tǒng)服務在不同的處理器中運行,從而提高性能。圖3為上述3種操作系統(tǒng)的內(nèi)核功能組織方式。這一差別導致了進程映像邏輯結(jié)構(gòu)的不同,如圖4所示。在教學的過程中,學生經(jīng)常難以理解為何用戶進程映像還需要包括內(nèi)核棧,在對內(nèi)核功能的組織方式和進程映像結(jié)構(gòu)有了基本了解后,應該可以釋疑。 

2.3.2多線程環(huán)境下的進程結(jié)構(gòu) 

引入線程后,進程成為地址分配和保護的基本單位,而線程是CPU調(diào)度的基本單位。為了讓學生更深入理解同一進程中的多個線程對進程地址空間的共享和線程切換的代價,有必要對多線程環(huán)境的進程結(jié)構(gòu)有所了解。圖5給出了單線程進程和多線程進程的結(jié)構(gòu)示意圖。當引入線程后,多個線程共享進程的地址空間,因此一個線程對數(shù)據(jù)所做的改變對其它線程可見,這要求多個線程之間采用某種互斥/同步機制以解決線程并發(fā)可能造成的數(shù)據(jù)不一致問題,為后續(xù)并發(fā)并同步相關內(nèi)容教學作好鋪墊。 

引入線程后,原有的進程控制塊相關信息進一步分解,與進程有關的如存儲管理信息、打開文件列表等依然保存在進程控制塊中,而線程執(zhí)行相關的寄存器上下文則保存在各線程控制塊中。當在同一個進程內(nèi)進行線程切換時,僅需保存線程控制塊中的信息即可,進程控制塊中的信息無需保存,因此線程的切換開銷更小。 

2.4存儲管理中的結(jié)構(gòu) 

在存儲管理相關內(nèi)容的教學過程中,筆者發(fā)現(xiàn)學生雖然能夠掌握復雜的存儲管理策略的地址轉(zhuǎn)換方法,但對地址轉(zhuǎn)換的發(fā)生時刻卻仍然模糊。觀察發(fā)現(xiàn),如果讓學生對程序生命周期的編譯、鏈接、裝入和運行這4個階段的關系有明確的認識,學生會對整個存儲管理結(jié)構(gòu)更加了解。圖6給出了源程序經(jīng)過編譯、鏈接和裝入后變成內(nèi)存可執(zhí)行程序的過程。編譯和鏈接后的程序都使用邏輯地址空間,鏈接同時會進行全部或部分的符號解析。邏輯地址和物理地址的轉(zhuǎn)換既可以在裝入時即發(fā)生(靜態(tài)重定位),也可以在運行時發(fā)生(動態(tài)重定位)。由于動態(tài)重定位能支持進程運行過程中在內(nèi)存移動(例如進程被掛起后又被激活,頁面/分段在虛擬存儲管理中被替換出內(nèi)存后又被載入),因此廣受青睞。 

虛擬內(nèi)存是存儲管理中的另一項重點教學內(nèi)容。理解虛擬內(nèi)存首先必須理解由于技術和經(jīng)濟因素決定的層次化存儲系統(tǒng)設計和各個存儲層次之間的聯(lián)系,圖7給出了一個現(xiàn)代的多核處理器的層次化存儲結(jié)構(gòu)。在這一層次化結(jié)構(gòu)中,每個上層的存儲設備都可以被看成是下層存儲設備的緩存。在此基礎上,進一步掌握虛擬地址空間、內(nèi)存映射表、物理內(nèi)存和外部磁盤存儲器的關系。在理解層次結(jié)構(gòu)和各組成要素關系的基礎上,掌握虛擬內(nèi)存的管理就會變得更加容易。 

2.5文件系統(tǒng)結(jié)構(gòu) 

文件的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)是文件系統(tǒng)教學的一大重點。文件的邏輯結(jié)構(gòu)是指文件的邏輯組織方式,從構(gòu)成文件的基本元素而言,有字節(jié)和記錄兩種。流式文件指將文件看成由字節(jié)按順序排列而成,記錄式文件指將文件看成由記錄按順序排列而成,而索引文件則將記錄按照某種規(guī)則排序,并建立記錄的索引項提供快速的文件檢索?,F(xiàn)代操作系統(tǒng)大部分都支持流式文件,而將記錄的重構(gòu)交給應用程序完成。從結(jié)構(gòu)的角度而言,流式文件僅支持最本元的字節(jié)操作,無法體現(xiàn)任何語義,但其也具有最大的靈活性。 

文件的物理結(jié)構(gòu)則是文件的物理組織方式,與物理磁盤的結(jié)構(gòu)緊密相關。物理文件的基本組成單元是磁盤塊。物理文件的結(jié)構(gòu)指邏輯上連續(xù)的字節(jié)以物理磁盤塊為基礎單位的排列組合方式,也即邏輯文件到物理文件的映射方式。文件的物理結(jié)構(gòu)決定了對文件進行修改和擴充的能力、對文件進行順序訪問和隨機訪問的性能等。連續(xù)文件需要以物理上連續(xù)的磁盤塊來存儲文件,因此文件難以擴充和修改,但類似于數(shù)組,順序訪問和隨機訪問效率高。連接文件允許以離散的磁盤塊存放邏輯上連續(xù)的字節(jié),易于修改和擴充,但類似于鏈表,需要按序讀取,隨機訪問效率低。FAT文件簡單地將這些離散的以鏈接方式存儲的映射信息集中起來存放,在文件被訪問時載入內(nèi)存,因此較之連接文件訪問速度大大提升。索引文件同樣是將映射信息集中存放,但是以索引表的方式,因此既方便文件的修改和擴充,也能支持快速的隨機存取。

文件系統(tǒng)的另一項重點教學內(nèi)容是文件的目錄結(jié)構(gòu)及物理實現(xiàn)方式。文件目錄采用哪種結(jié)構(gòu)決定了文件系統(tǒng)中文件保護和共享的能力。例如,早期的單級或兩級目錄結(jié)構(gòu)不利于文件的共享和保護;純粹的樹形結(jié)構(gòu)能實現(xiàn)文件保護,但不利于文件共享;而DAG(Directed Acyclic Graph)結(jié)構(gòu)有利于文件共享;更通用的圖結(jié)構(gòu)則不利于文件檢索。 

3教學過程中的結(jié)構(gòu)思維培養(yǎng) 

《操作系統(tǒng)原理》課程教學中,教學人員一般都會對上述結(jié)構(gòu)予以講解,但為何會出現(xiàn)本文開篇所提及的學生在學完課程后普遍認為《操作系統(tǒng)原理》就是學算法的課程,這一點值得深思。筆者認為,沒有強化結(jié)構(gòu)概念是導致這一結(jié)果的原因之一。操作系統(tǒng)的教學人員已經(jīng)認識到應該在操作系統(tǒng)教學過程中幫助學生建立整體概念[45],強化結(jié)構(gòu)概念和注重結(jié)構(gòu)思維培養(yǎng)是幫助建立整體概念的主要途徑。 

一般而言,教學過程都遵循自頂向下的原則,即先介紹整體結(jié)構(gòu),再介紹局部功能以及提高該局部性能的具體算法。但這一方法的問題在于,在初次介紹整體結(jié)構(gòu)時,學生并未能對結(jié)構(gòu)中的構(gòu)成元素產(chǎn)生感性認知,因此對結(jié)構(gòu)的作用感受不深。筆者建議按照圖8的方法來加強學生對結(jié)構(gòu)的認識。首先,通過自頂向下的結(jié)構(gòu)分解建立學生對操作系統(tǒng)結(jié)構(gòu)的初步印象;其次,在具體層次的功能講解過程中,對存在的結(jié)構(gòu)進行強化教學,注重各要素之間的聯(lián)系;再次,對于重要的結(jié)構(gòu)概念,注重在不同的教學單元進行交叉強化。例如,圖7所示的層次化存儲結(jié)構(gòu)可以在不同的章節(jié)得到強化,包括進程七態(tài)模型的掛起態(tài)、多核CPU的進程或線程調(diào)度算法、存儲管理中的快表、虛擬存儲、文件系統(tǒng)的磁盤緩沖區(qū)和內(nèi)存映射I/O等。進程的系統(tǒng)上下文概念也可以在進程映像結(jié)構(gòu)、存儲管理、I/O管理和文件管理中得到強化;最后,在講授完主要層次后,通過自底向上的方式再次完成操作系統(tǒng)整體結(jié)構(gòu)的重構(gòu)。例如,圖9給出了操作系統(tǒng)中的三大概念(進程、虛擬存儲和文件系統(tǒng))之間的結(jié)構(gòu)關系。文件系統(tǒng)建立在I/O的基礎上,對上層軟件簡化了外設操作。虛擬內(nèi)存則是對包括主存和外存在內(nèi)的存儲進行抽象,從而使得用戶可以按照內(nèi)存操作的方式來訪問文件。更進一步,進程則是對處理器資源和存儲資源管理的抽象,構(gòu)成了操作系統(tǒng)的核心概念。這一結(jié)構(gòu)關系的重構(gòu)可以在講授完文件管理之后開展?;趫D8所示的教學方法對結(jié)構(gòu)概念從不同角度予以強化,學生對操作系統(tǒng)的整體認識將會產(chǎn)生由量變到質(zhì)變的過程。 

4結(jié)語 

本文以“結(jié)構(gòu)”作為《操作系統(tǒng)原理》課程教學的抓手,在教學過程中注重操作系統(tǒng)各要素的組合方式和相互之間的聯(lián)系,引導學生掌握操作系統(tǒng)構(gòu)造的一般性規(guī)律,探討了操作系統(tǒng)中無處不在的結(jié)構(gòu)概念,通過自頂向下分解、單元教學強化、交叉強化和自頂向上重構(gòu)4個過程,深化了學生對操作系統(tǒng)結(jié)構(gòu)的認識。 

參考文獻參考文獻: 

推薦期刊