999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

代碼剖析在操作系統(tǒng)課程教學中的應用

2011-12-31 04:29:19肖延麗
中國新技術新產(chǎn)品 2011年2期
關鍵詞:理論課程學生

肖延麗 彭 磊

(1泰山醫(yī)學院研究生部,山東 泰安 271016,2泰山醫(yī)學院信息工程學院,山東 泰安 271016)

1 引言:《操作系統(tǒng)》是計算機科學與技術專業(yè)重要的專業(yè)基礎課程,是國家指定的計算機專業(yè)考研課程之一。課程講述的內(nèi)容并不是針對單一特定產(chǎn)品的操作系統(tǒng),而是從各種具體的操作系統(tǒng)中提取出經(jīng)典的設計原理和成熟的實現(xiàn)技術進行介紹。學好《操作系統(tǒng)》對理解計算機系統(tǒng)的工作原理、提高應用程序的設計開發(fā)能力,都有非常重要的意義。傳統(tǒng)的《操作系統(tǒng)》教學方法主要是以抽象的原理敘述為主,存在著理論與實際應用相脫節(jié)的現(xiàn)象。使得學生學完該課程后,難于把所學的知識與常用的操作系統(tǒng)聯(lián)系起來,從而普遍感覺課程所講述的理論太抽象、難以理解,甚至有的學生會產(chǎn)生學習操作系統(tǒng)沒有實際用處的錯誤認識。代碼剖析法就是結合一個具體操作系統(tǒng),在講授抽象理論的同時剖析其源代,對所講授的內(nèi)容進行說明和驗證。從而避免單純的理論講述,引起學生的學習興趣,提高課程的教學質量。

2 傳統(tǒng)的操作系統(tǒng)教學方法

《操作系統(tǒng)》是一門比較抽象、理論性較強而很少有機會得到實踐的課程。傳統(tǒng)的授課方式主要有以下幾種:

(1)純理論授課方式。即以課本為授課工具,教師完全以課堂講述抽象理論為主,不結合具體操作系統(tǒng)產(chǎn)品進行講解或指導學生進行驗證性、設計性實驗。這種授課方式使得理論嚴重脫離實際,學生沒有可以看的到、摸的著的東西作為參考,對抽象理論很難理解,提不起學習的興趣。(2)理論授課與驗證性操作結合方式。即進行理論授課的同時,選擇某個實際的操作系統(tǒng)產(chǎn)品作為實驗環(huán)境,例如Windows、Linux等。學生通過具體的驗證性操作、系統(tǒng)調用來觀察和驗證操作系統(tǒng)中一些技術??梢粤私饽承├碚?、技術的具體實現(xiàn)情況,但實驗中既不能修改代碼也不能擴充功能,因此只能"知其然,而不知其所以然"。(3)理論授課與模擬編程結合方式。即進行理論授課的同時,選取操作系統(tǒng)中的一些典型技術、算法編程并上機實現(xiàn),例如:銀行家算法、頁面置換算法等。但這些算法和程序是虛擬的,并不對系統(tǒng)中的實際資源進行真正的訪問和控制。這種方法可以加深學生對某些理論和技術的理解,但是其脫離操作系統(tǒng)的實際,學生不能獲得對系統(tǒng)內(nèi)部實現(xiàn)的直觀和具體感性的認識。(4)理論授課與獨立設計結合方式。即完成理論授課后,指導學生獨立設計一個結構相對簡單但功能基本完備的小型操作系統(tǒng)。這是一種理想的教學方法,可以使學生充分理解操作系統(tǒng)的原理與實現(xiàn)技術。但即使是小型的操作系統(tǒng),其結構也非常復雜,代碼量相當大,對剛學習過操作系統(tǒng),而對其原理理解不夠深刻,又沒有系統(tǒng)軟件開發(fā)經(jīng)驗的學生來說,完成這項任務有很大的難度。

3 代碼剖析法的特點

傳統(tǒng)的《操作系統(tǒng)》教學方式都存在著一系列的弊端。同時,由于操作系統(tǒng)產(chǎn)品設計中的新思想和新方法的不斷出現(xiàn),使操作系統(tǒng)的基本原理和實現(xiàn)技術都發(fā)生了不同程度的變化,而教學內(nèi)容往往相對滯后,跟不上新思想新技術的發(fā)展,更談不上與該領域的最新成果與技術應用同步。這些問題給教學帶來了一定的難度。代碼剖析法,即在《操作系統(tǒng)》課程的授課過程中結合一個具體操作系統(tǒng)講授原理并通過剖析其源代碼對所講授的內(nèi)容進行說明和驗證,然后要求學生用自己設計、編寫的代碼替換其中相應模塊或為其擴展功能。

代碼剖析法的目標是將操作系統(tǒng)的基本原理與操作系統(tǒng)的具體實例結合起來,以擺脫單純的闡述工作原理,將十分抽象、枯燥并難以理解的內(nèi)容變得具體生動。同時學生通過動手編寫部分模塊或擴展功能,可以進一步深刻了解抽象的原理是如何具體由代碼實現(xiàn)的。由于Windows系統(tǒng)源碼不公開,Linux系統(tǒng)功能、代碼過于復雜,我們選用μC/OS-Ⅱ作為實例進行代碼剖析。μC/OS-Ⅱ是一種源碼公開、簡單、易懂的嵌入式操作系統(tǒng)內(nèi)核,學生在有限的課程學時內(nèi)完全可以理解和接受。

4 代碼剖析在教學中的應用

μC/OS-Ⅱ是Jean J.Labrosse編寫的基于優(yōu)先級搶占式的實時多任務操作系統(tǒng),包含了實時內(nèi)核、任務管理、時間管理、任務間通信與同步(信號量,郵箱,消息隊列)和內(nèi)存管理等功能。μC/OS-Ⅱ具有可固化、可剪裁、高穩(wěn)定性和可靠性的特點。它的源代碼大部分是用C語言編寫的,源碼完全公開,便于移植和維護,而且對于學校研究完全免費,只有在應用于盈利項目時才需要支付少量的版權費。

μC/OS-Ⅱ的核心代碼主要包括十幾個C源程序文件和一個匯編文件,代碼量不是很大,注釋詳細,特別適合一般使用者的學習、研究。雖然?C/OS-Ⅱ是專門為嵌入式系統(tǒng)應用而設計的操作系統(tǒng),但它可以在基于PC機的DOS或Windows環(huán)境下運行,通過移植也可以不依賴其他操作系統(tǒng)直接運行在PC機上。同時μC/OS-Ⅱ允許使用者自己修改源代碼,增加新功能后編譯運行,因此初學者可以在自己熟悉的PC環(huán)境下進行學習、分析、研究和開發(fā)。

在《操作系統(tǒng)》的教學過程中,講解抽象理論的同時以μC/OS-Ⅱ中對應技術作為案件進行代碼剖析,能夠使學生直觀的接受所學知識,下面舉例說明。當講到進程管理時,進程通訊機制包括互斥信號量、同步信號量、消息隊列、信箱等,μC/OS-Ⅱ中分別在 OS_MUTEX.C、OS_SEM.C、OS_Q.C、OS_MBOX.C 等文件中實現(xiàn),可以通過分析其代碼,使學生對所學內(nèi)容有具體的認識。其中消息傳遞機制在進程控制塊中相關的代碼如下:typedef struct os_tcb{

OS_EVENT*OSTCBEventPtr;//指向事件控制塊的指針

void*OSTCBMsg;//傳遞給任務的消息指針

INT8U OSTCBStat;//義任務的狀態(tài)字

INT8U OSTCBPrio;//任務的優(yōu)先級 ……}OS_TCB;

事件控制塊OS_EVENT中包括:存放指向消息或者消息隊列的指針void*OSEventPtr,存放等待消息的任務列表INT8U OSEventTbl[OS_EVENT_TBL_SIZE]等信息。存放一個消息的數(shù)據(jù)結構代碼如下:typedef struct{

void*OSMsg;//指向消息隊列中消息的指針

INT16U OSNMsgs;//消息隊列中的消息數(shù)

INT16U OSQSize;//是消息隊列的總的容量

INT8U OSEventTbl[OS_EVENT_TBL_SIZE];

INT8U OSEventGrp;//和 OSEventTbl[]一起結合,是消息隊列的等待任務列表}OS_Q_DATA;

發(fā)送消息原語Send()由INT8U OSQPost()所實現(xiàn),代碼如下:INT8U OSQPost(OS_EVENT*pevent,void*msg){OS_Q*pq;//定義一個隊列事件 ……

*pq->OSQIn++=msg;//插入當前的消息

pq->OSQEntries++;//消息隊列數(shù)加1

if(pq->OSQIn==pq->OSQEnd){

pq->OSQIn=pq->OSQStart;}

return(OS_NO_ERR);}

接收消息原語Receive()由void*OSQPend()所實現(xiàn),代碼如下:

void*OSQPend(OS_EVENT*pevent,INT16U timeout,INT8U*err){

void*msg;//定義消息隊列的指針

OS_Q*pq;//定義一個隊列事件

pq=(OS_Q*)pevent->OSEventPtr;//隊列指針=當前事件指針if(pq->OSQEntries!=0){

msg=*pq->OSQOut++;//OSQOut將對應的地址的消息復制到msg

pq->OSQEntries--;//隊列消息數(shù)減1}

……}

學生可以自己編寫代碼驗證消息傳遞機制的運行情況,或者修改消息機制的功能,例如:

OS_EVENT*MsgQueue;

void*MsgQueueTbl[MSG_QUEUE_SIZE];

void TaskQ(void*pdata){

while(1)OSQPend(MsgQueue,0,&err);}

5 結束語:代碼剖析法應用在《操作系統(tǒng)》課程的教學中,突破了傳統(tǒng)講授型教學方法枯燥無味、理論脫離實際的弊端,提高了課堂授課質量。同時突破了傳統(tǒng)講授型教學方法重理論輕實踐的缺點,對于學生理解抽象理論,提高綜合設計能力有著很好的幫助。

[1]滕艷平,王海珍,潘海珠.高校操作系統(tǒng)課程教學創(chuàng)新模式的研究與實踐[J].計算機教育,2009,7 101-103.

[2]申華.師范院?!恫僮飨到y(tǒng)原理》課程建設的思考[J].白城師范學院學報,2009,23(3):93-95.

[3]劉金平.淺論互動性在操作系統(tǒng)課程教學中的應用[J].江蘇大學學報,2005,27(3):86-88.

猜你喜歡
理論課程學生
堅持理論創(chuàng)新
當代陜西(2022年5期)2022-04-19 12:10:18
神秘的混沌理論
理論創(chuàng)新 引領百年
數(shù)字圖像處理課程混合式教學改革與探索
相關于撓理論的Baer模
軟件設計與開發(fā)實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
為什么要學習HAA課程?
趕不走的學生
學生寫話
學生寫的話
主站蜘蛛池模板: 国产好痛疼轻点好爽的视频| 欧美国产精品不卡在线观看| 日韩国产黄色网站| 热伊人99re久久精品最新地| 国产成人AV男人的天堂| 无码有码中文字幕| 成人国产一区二区三区| 亚洲一区免费看| 欧美日韩精品一区二区在线线| AV网站中文| 亚洲性一区| 国产婬乱a一级毛片多女| 国产精品久久自在自线观看| 久久精品中文无码资源站| 日韩精品亚洲一区中文字幕| 无码国内精品人妻少妇蜜桃视频| 丰满少妇αⅴ无码区| 日本少妇又色又爽又高潮| 国产丝袜无码精品| 久久久受www免费人成| 日韩免费毛片| 国产尤物在线播放| 日韩精品一区二区三区中文无码 | 国产成人一区免费观看| 精品無碼一區在線觀看 | 色九九视频| 日本欧美精品| 欧美日韩北条麻妃一区二区| 日韩 欧美 国产 精品 综合| 广东一级毛片| 99视频国产精品| 国产极品美女在线| 国产成人艳妇AA视频在线| 免费看黄片一区二区三区| 无码'专区第一页| 青青草一区| 国产人人射| 波多野结衣在线se| 97精品伊人久久大香线蕉| 粉嫩国产白浆在线观看| 亚洲综合色吧| 欧美日韩激情在线| 国产中文在线亚洲精品官网| 日韩欧美中文字幕在线韩免费| 伊人久热这里只有精品视频99| 99久久精品国产自免费| 国产成人综合在线观看| 欧美日韩免费观看| 亚洲无码高清免费视频亚洲| 国产精品无码影视久久久久久久| 亚国产欧美在线人成| 狠狠综合久久久久综| 日韩免费毛片视频| 国产毛片不卡| 强奷白丝美女在线观看| 播五月综合| 4虎影视国产在线观看精品| 成人另类稀缺在线观看| 中国黄色一级视频| 欧美怡红院视频一区二区三区| 久久综合婷婷| 色综合狠狠操| 国产日产欧美精品| 婷婷激情五月网| 57pao国产成视频免费播放| 丝袜亚洲综合| 久久久久久高潮白浆| 免费播放毛片| 成年人免费国产视频| 日本福利视频网站| 亚洲中文精品人人永久免费| 日韩一区二区三免费高清| 91高清在线视频| 欧美精品成人| 91丝袜在线观看| 国产日韩欧美一区二区三区在线| 亚洲视屏在线观看| 91福利免费视频| 在线一级毛片| 色窝窝免费一区二区三区| 婷婷午夜天| 久久亚洲国产最新网站|