日本免费精品视频,男人的天堂在线免费视频,成人久久久精品乱码一区二区三区,高清成人爽a毛片免费网站

在線客服

操作系統(tǒng)實驗報告實用13篇

引論:我們?yōu)槟砹?3篇操作系統(tǒng)實驗報告范文,供您借鑒以豐富您的創(chuàng)作。它們是您寫作時的寶貴資源,期望它們能夠激發(fā)您的創(chuàng)作靈感,讓您的文章更具深度。

篇1

計算機

任課教師

指導(dǎo)教師

評閱教師

實驗地點

綜合樓B102

實驗時間

2012-9-26

實驗課表現(xiàn)

出勤和個人表現(xiàn)Q1(15+15(組長評分)=30分)

得分:

實驗

總分

(Q1+Q2+Q3+Q4)

實驗完成情況Q2(45分(組長與教師評分的加權(quán)平均))

得分:

實驗編號與實驗名稱:

實驗七、常用頁面置換算法模擬實驗

實驗?zāi)康模?/p>

通過模擬實現(xiàn)請求頁式存儲管理的幾種基本頁面置換算法,了解虛擬存儲技術(shù)的特點,掌握虛擬存儲請求頁式存儲管理中幾種基本頁面置換算法的基本思想和實現(xiàn)過程,并比較它們的效率。

實驗內(nèi)容及要求(詳見實驗講義與實驗指導(dǎo)書):

要求:

1)要求用你熟悉的程序設(shè)計語言編寫和調(diào)試一個頁面置換模擬程序;要求在主函數(shù)中測試。

2)實驗報告中必須包括:設(shè)計思想、數(shù)據(jù)定義(包括詳細說明)、處理流程(詳細算法描述和算法流程圖)、源代碼、運行結(jié)果、體會等部分。

3)必須模擬本實驗內(nèi)容中提到的算法中的至少2種頁面置換算法。

4)

比較不同頁面置換算法的效率

內(nèi)容:編寫一個程序,使用以下頁面置換算法中的某2種分別模擬一個分頁系統(tǒng),并統(tǒng)計同一個頁面訪問序列情況下不同頁面置換算法引發(fā)的缺頁中斷次數(shù)。

1、第二次機會算法(Second

Chance)

2、最近最少使用算法(Least

Recently

Used,LRU

3、最不常用算法(Not

Frequently

Used,NFU)

4、最近未使用算法(Not

Recently

Used

,NRU)

5、時鐘頁面置換算法

6、老化算法(aging)

頁框的數(shù)量固定為4,虛擬頁面數(shù)為8。實驗輸入為訪問頁面序列,比如0,1

,3

,2,7,1

實驗用到的軟件(:)

DevC++,Visio

實驗內(nèi)容及關(guān)鍵步驟(代碼)Q3(15分)

得分:

流程圖:輸入頁面訪問序列

取訪問的頁號

查頁表

是否缺頁?

置缺頁標志flag為’*’

按算法不同淘汰一頁面

調(diào)入所訪問的頁面

FIFO算法流程圖

LRU算法流程圖:

函數(shù)關(guān)系解釋圖:

實現(xiàn)結(jié)果:

圖1

圖2

代碼:

#include

#include

#define

MEMORY_SIZE

4

/*物理塊數(shù)*/

#define

PROESS_SIZE

8

/*頁面號引用串個數(shù)*/#include

#include

/*全局變量*/

int

mSIZE=4;

int

pSIZE=8;

static

int

memery[4]={0};

/*物理塊中的頁號*/

static

int

page[8]={0};

/*頁面號引用串*/

static

int

temp[8][4]={0};

/*輔助數(shù)組*/

/*置換算法函數(shù)*/

void

FIFO();

void

LRU();

void

OPT();

void

designBy();

/*輔助函數(shù)*/

void

print(unsigned

int

t);

/*主函數(shù)*/

int

main()

{

int

i,k,code;

designBy();

system(“color

0A“);

puts(“請依次輸入頁面號(8個):“);

for(i=0;i

scanf(“%1d“,&page[i]);

system(“cls“);

system(“color

0E“);

do{

puts(“輸入的頁面號引用串為:“);

for(k=0;k

{

for(i=20*k;(i

{

if(((i+1)%20==0)||(((i+1)%20)&&(i==pSIZE-1)))

printf(“%d\n“,page[i]);

else

printf(“%d

“,page[i]);

}

}

printf(“*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*\n“);

printf(“*

請選擇頁面置換算法:\t\t\t

*\n“);

printf(“*

-----------------------------------------

*\n“);

printf(“*

1.先進先出(FIFO)

2.最近最久未使用(LRU)

*\n“);

printf(“*

3.退出

*\n“);

printf(“*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*\n“);

printf(“請選擇操作:[

]\b\b“);

scanf(“%d“,&code);

switch(code)

{

case

1:

FIFO();

break;

case

2:

LRU();

break;

case

3:

system(“cls“);

system(“color

0A“);

exit(0);

default:

printf(“輸入錯誤,請重新輸入:“);

}

printf(“按任意鍵重新選擇置換算法:>>>“);

getch();

system(“cls“);

}while

(code!=3);

getch();

}

void

print(unsigned

int

t)

{

int

i,j,k,l;

int

flag;

for(k=0;k

{

for(i=20*k;(i

{

if(((i+1)%20==0)||(((i+1)%20)&&(i==pSIZE-1)))

printf(“%d\n“,page[i]);

else

printf(“%d

“,page[i]);

}

for(j=0;j

{

for(i=20*k;(i

{

if(i>=j)

printf(“

|%d|“,temp[i][j]);

else

printf(“

|

|“);

}

for(i=mSIZE+20*k;(i

{

for(flag=0,l=0;l

if(temp[i][l]==temp[i-1][l])

flag++;

if(flag==mSIZE)/*頁面在物理塊中*/

printf(“

“);

else

printf(“

|%d|“,temp[i][j]);

}

/*每行顯示20個*/

if(i%20==0)

continue;

printf(“\n“);

}

}

printf(“----------------------------------------\n“);

printf(“缺頁次數(shù):%d\t\t“,t+mSIZE);

printf(“缺頁率:%d/%d\n“,t+mSIZE,pSIZE);

printf(“置換次數(shù):%d\t\t“,t);

printf(“訪問命中率:%d%%\n“,(pSIZE-(t+mSIZE))*100/pSIZE);

printf(“----------------------------------------\n“);

}

/*先進先出頁面置換算法*/

void

FIFO()

{

int

memery[10]={0};

int

time[10]={0};

/*記錄進入物理塊的時間*/

int

i,j,k,m;

int

max=0;

/*記錄換出頁*/

int

count=0;

/*記錄置換次數(shù)*/

/*前mSIZE個數(shù)直接放入*/

for(i=0;i

{

memery[i]=page[i];

time[i]=i;

for(j=0;j

temp[i][j]=memery[j];

}

for(i=mSIZE;i

{

/*判斷新頁面號是否在物理塊中*/

for(j=0,k=0;j

{

if(memery[j]!=page[i])

k++;

}

if(k==mSIZE)

/*如果不在物理塊中*/

{

count++;

/*計算換出頁*/

max=time[0]

for(m=2;m

if(time[m]

max=m;

memery[max]=page[i];

time[max]=i;

/*記錄該頁進入物理塊的時間*/

for(j=0;j

temp[i][j]=memery[j];

}

else

{

for(j=0;j

temp[i][j]=memery[j];

}

}

print(count);

}

/*最近最久未使用置換算法*/

void

LRU()

{

int

memery[10]={0};

int

flag[10]={0};

/*記錄頁面的訪問時間*/

int

i,j,k,m;

int

max=0;

/*記錄換出頁*/

int

count=0;

/*記錄置換次數(shù)*/

/*前mSIZE個數(shù)直接放入*/

for(i=0;i

{

memery[i]=page[i];

flag[i]=i;

for(j=0;j

temp[i][j]=memery[j];

}

for(i=mSIZE;i

{

/*判斷新頁面號是否在物理塊中*/

for(j=0,k=0;j

{

if(memery[j]!=page[i])

k++;

else

flag[j]=i;

/*刷新該頁的訪問時間*/

}

if(k==mSIZE)

/*如果不在物理塊中*/

{

count++;

/*計算換出頁*/

max=flag[0]

for(m=2;m

if(flag[m]

max=m;

memery[max]=page[i];

flag[max]=i;

/*記錄該頁的訪問時間*/

for(j=0;j

temp[i][j]=memery[j];

}

else

{

for(j=0;j

temp[i][j]=memery[j];

}

}

//

compute();

print(count);

}

/*顯示設(shè)計者信息*/

void

designBy()

{

printf(“━━━━━━━━━━━━━━━━━━━━━━━━━\n“);

printf(“┃㊣

實驗七:頁面置換算法

㊣┃\n“);

printf(“┃

學(xué)號:1001010042

┃\n“);

printf(“┃

姓名:黃浩全

4.9.9.0>┃\n“);

printf(“┣━━━━━━━━━━━━━━━━━━━━━━━━━┫\n“);

}

實驗過程中遇到的問題解決辦法與實驗體會Q4(需手寫,10分)

得分:

1、在FIFO算法可以很容易用數(shù)組實現(xiàn),而LRU算法可以用數(shù)組實現(xiàn),不過用結(jié)構(gòu)體會更明顯簡單。結(jié)構(gòu)體成員變量可以記錄頁號進入的時間,和最近使用的記錄。相對比數(shù)組更容易理解和實現(xiàn)。

2:首先,F(xiàn)IFO(先進先出)算法和LRU(最近未使用算法)兩者之間,F(xiàn)IFO算法明顯會比LRU容易理解,而且比LRU算法較容易實現(xiàn),但在性能方面,LRU的確在優(yōu)化方面做的比較理想。再且在考慮頁框和頁表號之間的問題用代碼可以容易模擬,但是真是在物理內(nèi)存塊中是如何實現(xiàn),那確實是很難以理解,需要真正理解到內(nèi)存內(nèi)部的知識才知道這兩個算法是怎么實現(xiàn)的。

評閱教師特殊評語:

篇2

學(xué)生姓名、學(xué)號、及合作者

實驗日期和地點(年、月、日)

實驗?zāi)康?/p>

目的要明確,在理論上驗證定理、公式、算法,并使實驗者獲得深刻和系統(tǒng)的理解,在實踐上,掌握使用實驗設(shè)備的技能技巧和程序的調(diào)試方法。一般需說明是驗證型實驗還是設(shè)計型實驗,是創(chuàng)新型實驗還是綜合型實驗。

實驗原理

在此闡述實驗相關(guān)的主要原理。

實驗內(nèi)容

這是實驗報告極其重要的內(nèi)容。要抓住重點,可以從理論和實踐兩個方面考慮。這部分要寫明依據(jù)何種原理、定律算法、或操作方法進行實驗。詳細理論計算過程。

實驗步驟

只寫主要操作步驟,不要照抄實習(xí)指導(dǎo),要簡明扼要。還應(yīng)該畫出實驗流程圖(實驗裝置的結(jié)構(gòu)示意圖),再配以相應(yīng)的文字說明,這樣既可以節(jié)省許多文字說明,又能使實驗報告簡明扼要,清楚明白。

實驗結(jié)果

實驗現(xiàn)象的描述,實驗數(shù)據(jù)的處理等。原始資料應(yīng)附在本次實驗主要操作者的實驗報告上,同組的合作者要復(fù)制原始資料。

對于實驗結(jié)果的表述,一般有三種方法:

1. 文字敘述: 根據(jù)實驗?zāi)康膶⒃假Y料系統(tǒng)化、條理化,用準確的專業(yè)術(shù)語客觀地描述實驗現(xiàn)象和結(jié)果,要有時間順序以及各項指標在時間上的關(guān)系。

2. 圖表: 用表格或坐標圖的方式使實驗結(jié)果突出、清晰,便于相互比較,尤其適合于分組較多,且各組觀察指標一致的實驗,使組間異同一目了然。每一圖表應(yīng)有表目和計量單位,應(yīng)說明一定的中心問題。

3. 曲線圖

應(yīng)用記錄儀器描記出的曲線圖,這些指標的變化趨勢形象生動、直觀明了。

在實驗報告中,可任選其中一種或幾種方法并用,以獲得最佳效果。

討論

根據(jù)相關(guān)的理論知識對所得到的實驗結(jié)果進行解釋和分析。如果所得到的實驗結(jié)果和預(yù)期的結(jié)果一致,那么它可以驗證什么理論?實驗結(jié)果有什么意義?說明了什么問題?這些是實驗報告應(yīng)該討論的。但是,不能用已知的理論或生活經(jīng)驗硬套在實驗結(jié)果上;更不能由于所得到的實驗結(jié)果與預(yù)期的結(jié)果或理論不符而隨意取舍甚至修改實驗結(jié)果,這時應(yīng)該分析其異常的可能原因。如果本次實驗失敗了,應(yīng)找出失敗的原因及以后實驗應(yīng)注意的事項。不要簡單地復(fù)述課本上的理論而缺乏自己主動思考的內(nèi)容。

另外,也可以寫一些本次實驗的心得以及提出一些問題或建議等。

結(jié)論

結(jié)論不是具體實驗結(jié)果的再次羅列,也不是對今后研究的展望,而是針對這一實驗所能驗證的概念、原則或理論的簡明總結(jié),是從實驗結(jié)果中歸納出的一般性、概括性的判斷,要簡練、準確、嚴謹、客觀。

實驗報告范文1一、實驗?zāi)康募耙螅?/p>

本實例的目的是設(shè)置頁面的背景圖像,并創(chuàng)建鼠標經(jīng)過圖像。

二、儀器用具

1、生均一臺多媒體電腦,組建內(nèi)部局域網(wǎng),并且接入國際互聯(lián)網(wǎng)。

2、安裝windows xp操作系統(tǒng);建立iis服務(wù)器環(huán)境,支持asp。

3、安裝網(wǎng)頁三劍客(dreamweaver mx;flash mx;fireworks mx)等網(wǎng)頁設(shè)計軟件;

4、安裝acdsee、photoshop等圖形處理與制作軟件;

5、其他一些動畫與圖形處理或制作軟件。

三、實驗原理

設(shè)置頁面的背景圖像,并創(chuàng)建鼠標經(jīng)過圖像。

四、實驗方法與步驟

1) 在“頁面屬性”對話框中設(shè)置頁面的背景圖像。

2) 在頁面文檔中單擊“”插入鼠標經(jīng)過圖像。

五、實驗結(jié)果

六、討論與結(jié)論

實驗結(jié)束后我們可以看到頁面的背景變成了我們插入的圖像,并且要鼠標經(jīng)過的時候會變成另一個圖像,這就是鼠標經(jīng)過圖像的效果。當(dāng)然這種實驗效果很難在實驗結(jié)果的截圖里表現(xiàn)出來。這個實驗的關(guān)鍵在于背景圖像的選擇,如果背景圖像太大不僅會影響網(wǎng)頁的打開速度,甚至圖像在插入會也會有失真的感覺,因此在插入前對圖像進行必要的處理能使實驗的效果更好。

實驗報告范文2一、實驗?zāi)康募耙螅?/p>

本實例是要創(chuàng)建邊框為1像素的表格。

二、儀器用具

1、生均一臺多媒體電腦,組建內(nèi)部局域網(wǎng),并且接入國際互聯(lián)網(wǎng)。

2、安裝windows xp操作系統(tǒng);建立iis服務(wù)器環(huán)境,支持asp。

3、安裝網(wǎng)頁三劍客(dreamweaver mx;flash mx;fireworks mx)等網(wǎng)頁設(shè)計軟件;

4、安裝acdsee、photoshop等圖形處理與制作軟件;

5、其他一些動畫與圖形處理或制作軟件。

三、實驗原理

創(chuàng)建邊框為1像素的表格。

四、實驗方法與步驟

1) 在文檔中,單擊表格“”按鈕,在對話框中將“單元格間距”設(shè)置為“1”。

2) 選中插入的表格,將“背景顏色”設(shè)置為“黑色”(#0000000)。

3) 在表格中選中所有的單元格,在“屬性”面版中將“背景顏色”設(shè)置為“白色”(#ffffff)。

4) 設(shè)置完畢,保存頁面,按下“f12”鍵預(yù)覽。

篇3

3.要排版,格式應(yīng)規(guī)范,截圖一律采用JPG格式(非BMP格式)。為避免抄襲,用圖像編輯軟件在截圖右下角“嵌入”自己的學(xué)號或姓名。實驗報告的格式是否規(guī)范、截圖是否嵌入了自己的學(xué)號或姓名,是評價報告質(zhì)量的考量因素。

4.說明文字與實驗截圖相配合,若只有說明文字,或只有截圖,則成績?yōu)椴患案瘛?/p>

5.只提交報告電子版。在規(guī)定的日期內(nèi),通過電子郵件發(fā)送到[emailprotected],若三天之內(nèi)沒有收到內(nèi)容為“已收到”的回復(fù)確認Email,請再次發(fā)送或電話聯(lián)系任課老師。

6.為了便于歸檔,實驗報告Word文檔的命名方式是“學(xué)號姓名-計算機病毒實驗報告.doc”,如“20xx12345張三-計算機病毒課程報告.doc”。

注意:提交報告截止日期以QQ群通知時間為準(一般在考試周下周周三),若因沒有及時提交實驗報告,導(dǎo)致課程成績?yōu)椤叭笨肌钡模?zé)任自負。

實驗一 程序的自動啟動

一、實驗?zāi)康?/p>

(1)驗證利用注冊表特殊鍵值自動啟動程序的方法;

(2)檢查和熟悉殺毒軟件各組成部分的自動啟動方法。

二、實驗內(nèi)容與要求

(1)在注冊表自動加載程序主鍵中,添加加載目標程序鍵值(自己指派任意程序),重啟操作系統(tǒng),檢查是否能自動成功加載目標程序。羅列5或5個以上能自動啟動目標程序的鍵值,并用其中某一個啟動自己指派的程序。

(2)檢查/分析你所使用的計算機中殺毒軟件系統(tǒng)托盤程序、底層驅(qū)動程序等組成部分的自動啟動方式。

三、實驗環(huán)境與工具

操作系統(tǒng):Windows XP/Windows Vista/Windows 7

工具軟件:RegEdit.exe,AutoRuns,或其他注冊表工具軟件;殺毒軟件

四、實驗步驟與實驗結(jié)果

一)按啟動文件夾的方法

1、“啟動”文件夾是最常見的自啟動文件夾。可以打開“開始”菜單—>“所有程序”,在所有程序里面可以找到“啟動”文件夾找到“啟動”文件夾的位置,在其中加入WPS的word的快捷方式,就可以在電腦開機時自啟動word了.在AutoRuns中可以看到如下圖中的結(jié)果,WPS文字的快捷方式在自啟動項中。

二)利用注冊表鍵值來實現(xiàn)程序的自啟動

1、“Run”鍵值--在HKEY_LOCAL_MACHINESoftwareMicrosoftWindows

CurrentVersionRun新建一個wps_excel 數(shù)值數(shù)據(jù)為“C:Program FilesKingsoftWPS Office Personaloffice6et.exe” 可以實現(xiàn)WPS表格的自啟動。在AutoRuns中可以看到下圖內(nèi)容:

2、“Load”鍵值--將HKCUSoftwareMicrosoftWindows NTCurrentVersion WindowsLoad中的數(shù)值數(shù)據(jù)更改為C:Program FilesKingsoftWPS Office Personaloffice6wpp.exe”,在AutoRuns中可以看到下圖內(nèi)容:

3、“Userinit”鍵值--用戶可以在HKEY_LOCAL_MacHINESOFTWAREMicrosoft WindowsNTCurrentVersionWinlogonUserinit 中添加自啟動程序

4、在HKCUSoftwareMicrosoftWindowsCurrentVersionRun 新一個建了 ppt鍵值,其數(shù)值數(shù)據(jù)為“c:program fileskingsoftwps office personaloffice6wpp.exe”,可實現(xiàn)WPS幻燈片程序的自啟動。

5、在HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinlogon Userinit中可以添加自啟動程序

6、“RunOnce”鍵值--在HKEY_CURRENT_USERSoftwareMicrosoftWindows CurrentVersionRunOnceSetup,和HKEY_LOCAL_MACHINESOFTWARE

MicrosoftWindowsCurrentVersionRunOnceSetup新建一個“金山衛(wèi)士”鍵值,其數(shù)值數(shù)據(jù)為"C:Program FilesksafeKSafe.exe",可以實現(xiàn)“金山衛(wèi)士”程序的自啟動重啟之后,先后啟動了WPS文字,金山衛(wèi)士,WPS表格和WPS幻燈片。

五、思考題

殺毒軟件為什么要分成幾個部分各自自動啟動?

篇4

文章編號:1672-5913 (2007) 15-0027-04

Experimental Teaching System Construction for Embedded Software

Abstract:To train up a good deal of embedded software development talents adaptable to the society requirements, the embedded software system’s architecture and development contents are analysed in this paper, as well as the particular fashion of embedded software development and the developers’ knowledge system structure required by the community.

Several configuration schemes for embedded software experimental teaching system are also described in this paper, as well as the construct of multiple levels’ experimental projects. In the end, how to doing experimental teaching well and raise the teaching quality are summarized. This paper is a summarization for the many years’ embedded software practical teaching work by the authors. We hope that it could bring some enlightening reference to the community, and establish a basis for our next improvement.

Key words:embedded software; experimental teaching system

“嵌入式軟件開發(fā)”是一門實踐性相當(dāng)強的課程,學(xué)生在學(xué)習(xí)了相關(guān)理論知識之后,如何能從實踐的角度掌握更實用的開發(fā)方法和技能,是我們在規(guī)劃、完善嵌入式軟件教學(xué)體系中重點關(guān)注的問題。為此,我們以培養(yǎng)適應(yīng)社會需求的嵌入式軟件開發(fā)人才為目標,充分研究了嵌入式軟件系統(tǒng)結(jié)構(gòu)及開發(fā)內(nèi)容、嵌入式軟件開發(fā)方式的特殊性以及業(yè)界對嵌入式軟件開發(fā)人才的知識體系結(jié)構(gòu)需求,開發(fā)了以多種配置方案、多層次實驗項目為主要內(nèi)容的嵌入式軟件實驗教學(xué)系統(tǒng)。

1嵌入式軟件系統(tǒng)結(jié)構(gòu)及開發(fā)內(nèi)容

嵌入式軟件系統(tǒng)的典型結(jié)構(gòu)如圖1所示。

因此,嵌入式軟件的開發(fā)自下而上可分為以下幾種層次:

編寫簡單的板級測試軟件,主要目的是輔助硬件的調(diào)試

(1) 開發(fā)基本的驅(qū)動程序(不針對特定的嵌入式操作系統(tǒng))

(2) 開發(fā)特定嵌入式操作系統(tǒng)的驅(qū)動程序(即板級支持包BSP――Board Support Package,包括目標板的初始化、中斷管理以及一些簡單的驅(qū)動程序單元)

(3) 開發(fā)嵌入式系統(tǒng)軟件,如嵌入式操作系統(tǒng)

(4) 開發(fā)嵌入式中間件,如嵌入式CORBA、嵌入式JAVA等

(5) 開發(fā)嵌入式應(yīng)用軟件

2嵌入式軟件開發(fā)方式的特殊性

嵌入式軟件開發(fā)方式有其特殊性,具體體現(xiàn)在如下幾個方面:

(1) 開發(fā)方式:采用交叉開發(fā)的方式。這是與桌面軟件開發(fā)不同的地方,其開發(fā)環(huán)境的建立相對復(fù)雜,不僅要安裝開發(fā)工具軟件,還需配置特定的目標硬件平臺,并在開發(fā)平臺與目標平臺之間建立有效的物理連接和邏輯連接,相關(guān)概念易產(chǎn)生混淆。

(2) 對開發(fā)工具的要求比較高:一則需要有功能強大的集成環(huán)境提升開發(fā)過程的便捷性,二則不管是進行調(diào)試還是測試,均要求在目標端有相應(yīng)的模塊,以支持宿主端功能的實現(xiàn),模塊可以是用軟件實現(xiàn)的,也可以是由硬件實現(xiàn)的。

(3) 硬件平臺豐富多樣,有共性,也有較大的差異性。據(jù)不完全統(tǒng)計,目前全世界嵌入式微處理器的品種總量已經(jīng)超過千種,有幾十種體系,主流的體系有ARM、MIPS、PowerPC、SH、X86,廣泛應(yīng)用于消費電子、通信、汽車、國防、航空航天、工業(yè)控制、儀表、辦公自動化等領(lǐng)域。教學(xué)中應(yīng)考慮采用各種典型的硬件平臺,讓學(xué)生學(xué)到的知識更能接近社會的需求。

3嵌入式軟件開發(fā)的知識體系結(jié)構(gòu)

嵌入式軟件開發(fā)的范圍和內(nèi)容涉及很多方面,與桌面軟件開發(fā)不同,業(yè)界對嵌入式軟件開發(fā)人才有更多的要求:不僅要懂軟件,還要具備基本的硬件知識。具體來講,除具備計算機基礎(chǔ)理論知識如計算機組成原理、操作系統(tǒng)、匯編語言、C語言、程序設(shè)計思想和方法等外,嵌入式軟件開發(fā)的知識體系結(jié)構(gòu)中還要求如圖2所示的內(nèi)容:

4實驗系統(tǒng)構(gòu)成及配置

嵌入式軟件開發(fā)實驗系統(tǒng)一般由下列元素組成:

(1) 嵌入式系統(tǒng)芯片及開發(fā)板(或評估板)

(2) 嵌入式軟件開發(fā)工具(或集成開發(fā)環(huán)境)

(3) 嵌入式操作系統(tǒng)(可選)

(4) 其他監(jiān)測儀器(硬件相關(guān),可選)

(5) 實驗項目

(6) 配套資料,如實驗教學(xué)大綱、參考實驗程序、參考實驗報告、實驗課件、實驗教材。

針對嵌入式系統(tǒng)芯片及開發(fā)板、嵌入式操作系統(tǒng)及嵌入式軟件開發(fā)工具多樣性的特點,我們通過與嵌入式硬件廠商、軟件供應(yīng)商的廣泛交流與合作,利用多方資源建設(shè)與豐富實驗系統(tǒng),規(guī)劃和實現(xiàn)了多種配置的實驗系統(tǒng),可以配套具有不同教學(xué)側(cè)重點的嵌入式軟件課程,靈活性大。在配置實驗系統(tǒng)時我們基于如下的一些考慮:

硬件平臺方面:主要考慮選擇屬于不同系列的嵌入式微處理器構(gòu)建目標平臺,目前有如下幾種配置:

(1) 嵌入式仿真PC平臺

用軟件仿真的方式在PC機上模擬一個嵌入式目標平臺,學(xué)生利用PC機就可以自己動手搭建嵌入式系統(tǒng)的開發(fā)環(huán)境,熟悉應(yīng)用開發(fā),更快捷方便地學(xué)習(xí)和理解嵌入式系統(tǒng)的基礎(chǔ)知識。基于這樣的基礎(chǔ),再在真實的嵌入式目標硬件平臺上進行開發(fā),經(jīng)歷從純軟件到軟硬件結(jié)合、從“紙”上談兵到“板”上談兵的一個學(xué)習(xí)實踐過程,逐步遞進,由淺入深,就能更加系統(tǒng)、透徹地掌握嵌入式軟件開發(fā)的知識和技能。

(2) 基于ARM7的嵌入式硬件平臺

ARM(Advanced RISC Machine)是目前業(yè)內(nèi)主流的嵌入式微處理器系列,在眾多的嵌入式領(lǐng)域中得到應(yīng)用,已成為業(yè)界公認的嵌入式微處理器標準。ARM7在整個ARM系列中位于中低端的位置,采用ARM7為核心的嵌入式硬件板作為目標平臺,既能讓學(xué)生從一開始就了解和熟悉業(yè)內(nèi)主流和先進的嵌入式微處理器的知識,又能降低實驗系統(tǒng)構(gòu)建的成本,便于普及。

(3) 基于SH3的嵌入式硬件平臺

SuperH(簡稱SH)是由renesas(瑞薩)公司開發(fā)的用于高性能價格比、小型化和高性能功耗比的嵌入式RISC處理器。Renesas也是目前位居業(yè)界前列的微控制器供應(yīng)廠商,其SH系列的嵌入式微處理器在汽車電子、網(wǎng)絡(luò)設(shè)備、辦公自動化設(shè)備、家用電器、工業(yè)設(shè)備等領(lǐng)域被廣泛應(yīng)用。

軟件平臺方面:

(1) 嵌入式操作系統(tǒng):一種方案是采用開源的嵌入式操作系統(tǒng)作為學(xué)習(xí)和使用對象,例如uC/OS-II。由于開放源代碼,學(xué)生能夠看到嵌入式實時操作系統(tǒng)尤其是內(nèi)核的典型實現(xiàn),能夠更好地激發(fā)他們的學(xué)習(xí)興趣,可自己嘗試修改如調(diào)度算法之類的內(nèi)部機制,對于他們掌握好相關(guān)理論知識和提高實踐水平很有好處。另一種方案是選擇商用嵌入式操作系統(tǒng),這些操作系統(tǒng)廠商可提供針對教育的版本,比如北京科銀京成技術(shù)有限公司推出的國產(chǎn)自主品牌嵌入式實時操作系統(tǒng)DeltaOS。主流的商用嵌入式操作系統(tǒng)經(jīng)過了市場應(yīng)用的考驗,在功能、性能、穩(wěn)定性和可靠性方面都有較大優(yōu)勢,讓學(xué)生學(xué)習(xí)了解它們也是有好處的。

(2) 嵌入式軟件開發(fā)工具:盡量采用集成化程度高的、使用方便、易學(xué)習(xí)掌握的工具。因為在教學(xué)中工具不是重點,但又是實現(xiàn)開發(fā)所必需的。選擇好的工具能讓學(xué)生盡快熟悉嵌入式軟件開發(fā)的過程尤其是交叉開發(fā)的方式,盡快跨越工具關(guān),建立起開發(fā)環(huán)境,以便在有限的課時中把精力集中在嵌入式操作系統(tǒng)、嵌入式微處理器編程、驅(qū)動開發(fā)、應(yīng)用軟件開發(fā)等重點內(nèi)容上。

基于上述考慮,我們規(guī)劃的不同方案的實驗系統(tǒng)配置如表1所示。

5實驗項目體系設(shè)計

實驗項目的設(shè)計遵循下面的一些原則:

(a) 由淺入深,由易到難

(b) 由硬件到軟件、自下而上

(c) 由基礎(chǔ)到綜合、由驗證到創(chuàng)新

基于這樣的原則,我們設(shè)計的實驗項目可分為以下類型:

(1) 嵌入式開發(fā)環(huán)境的建立:包括仿真開發(fā)環(huán)境的建立、交叉開發(fā)環(huán)境的建立,讓學(xué)生體會不同開發(fā)方式的要點和差異(包括宿主平臺及目標平臺的軟硬件配置、軟件工具的安裝及配置、硬件線路的制作及連接、物理連接的驗證、邏輯連接的驗證等),掌握開發(fā)工具的基本使用,熟悉嵌入式軟件運行的載體――嵌入式目標平臺;

(2) 嵌入式微處理器編程基礎(chǔ)實驗:包括匯編指令實驗、處理器工作模式實驗、存儲器實驗、I/O接口實驗、中斷實驗等;

(3) BSP及硬件驅(qū)動開發(fā)實驗:包括板級初始化、系統(tǒng)自舉程序(boot loader)、實時時鐘和定時器驅(qū)動、網(wǎng)絡(luò)接口驅(qū)動、鍵盤驅(qū)動、顯示(如LCD)驅(qū)動、串行總線(包括UART/USB/I2C等)驅(qū)動、多媒體接口設(shè)備(比如音頻)驅(qū)動、可編程I/O端口操作等;

(4) 嵌入式系統(tǒng)軟件開發(fā)實驗:比如嵌入式操作系統(tǒng)內(nèi)核移植、嵌入式操作系統(tǒng)組件(如GUI等)移植、開放源代碼的嵌入式內(nèi)核機制改造等;

(5) 嵌入式操作系統(tǒng)應(yīng)用基礎(chǔ)實驗:對嵌入式操作系統(tǒng)尤其是內(nèi)核的基本管理功能的驗證性實驗,包括任務(wù)管理、信號量機制、消息傳送機制、優(yōu)先級反轉(zhuǎn)及解決策略、內(nèi)存管理等,幫助學(xué)生掌握嵌入式操作系統(tǒng)的基本原理和使用。這類實驗比較簡單,只突出某一方面的主題;

(6) 嵌入式操作系統(tǒng)應(yīng)用綜合實驗:學(xué)生在全面掌握基礎(chǔ)理論知識和具備一定動手能力后,掌握嵌入式軟件開發(fā)的過程和方法,將所有的基礎(chǔ)軟件部件貫穿起來,比如將嵌入式實時內(nèi)核、文件系統(tǒng)和TCP/IP網(wǎng)絡(luò)協(xié)議棧、嵌入式GUI進行綜合應(yīng)用;

(7) 嵌入式中間件應(yīng)用實驗:比如嵌入式JAVA程序設(shè)計、手機Java應(yīng)用開發(fā)等;

(8) 嵌入式系統(tǒng)應(yīng)用綜合設(shè)計實驗:從底層硬件的擴展和設(shè)計,到驅(qū)動開發(fā),再到上層應(yīng)用軟件的設(shè)計,完成復(fù)雜應(yīng)用開發(fā)。幫助學(xué)生了解真實的應(yīng)用,并鍛煉自己分析和解決問題的綜合能力,掌握系統(tǒng)分析、設(shè)計及編程、調(diào)試和固化等多方面的技能。

6如何提高實驗教學(xué)質(zhì)量

(1) 積累、完善相關(guān)素材和配套資料(包括實驗教學(xué)大綱、參考實驗程序、參考實驗報告、實驗課件、實驗教材等),進行充分的準備。

(2) 規(guī)劃好實驗步驟,規(guī)范化實驗課程程序,完善相關(guān)管理制度,比如:將實驗步驟以實驗指導(dǎo)書的形式體現(xiàn);實驗前由老師講解,并演示操作步驟;學(xué)生開始實驗操作前教師明確實驗項目的目標和要求,在實驗過程中適時提供指導(dǎo);實驗結(jié)束后要求學(xué)生按標準格式書寫實驗報告,教師及時批改和總結(jié)。

(3) 根據(jù)所配套的理論課程,將實驗項目合理組合搭配:在實驗教學(xué)課時有限以及實驗設(shè)備資源不是很充足的情況下,為了盡量多地讓學(xué)生掌握嵌入式軟件開發(fā)的知識和能力,對上述不同硬件平臺和軟件版本的實驗系統(tǒng)進行選擇,對不同類型的實驗項目進行組合搭配,以取得更好的教學(xué)效果。

(4) 根據(jù)實驗內(nèi)容的難易程度和工作量大小,改變實驗小組的構(gòu)成形式。對于簡單的和工作量小的實驗項目,可要求學(xué)生獨立完成。而對于綜合性和創(chuàng)新性的實驗,一般不是能由單個人獨立完成的,需要學(xué)生們組成設(shè)計小組,協(xié)同分工,共同完成。

(5) 創(chuàng)新實驗考核方式。針對不同類別的實驗,采取不同的考核方式。對于一些簡單的驗證性實驗,由教師直接在實驗課上考核,在學(xué)生完成實驗項目后檢查其完成情況,酌情打分;另一方面,對學(xué)生提交的實驗報告進行評價,關(guān)注他們是否能提出一些心得體會,以及對實驗的建議。對于綜合性的設(shè)計實驗和創(chuàng)新性實驗,關(guān)注學(xué)生個體或團隊開展實驗的過程,要求他們提交更為詳細的實驗報告,以及在實驗過程中產(chǎn)生的其他工作產(chǎn)品(除了軟件程序本身外,還要求有完善的設(shè)計文檔),評價他們是否掌握了提出問題、分析問題和解決問題的基本方法,是否具備將相關(guān)理論和實踐知識融匯貫通、舉一反三的能力。

7結(jié)語

在現(xiàn)今計算機技術(shù)迅速發(fā)展和縱深應(yīng)用的后PC時代,嵌入式系統(tǒng)的應(yīng)用無處不在,業(yè)界對于嵌入式系統(tǒng)開發(fā)人才的需求與日俱增。這種人才需求不僅是數(shù)量上的,更是品質(zhì)上的。國內(nèi)各高校、職業(yè)技術(shù)學(xué)院及培訓(xùn)機構(gòu)的嵌入式相關(guān)理論與實踐課程的開設(shè)也從客觀上證明了這種需求。本文是對作者多年嵌入式軟件實踐教學(xué)工作的總結(jié),希望能給同業(yè)者帶來一些啟示和參考,也作為自身下一步工作改進的基礎(chǔ)。

參考文獻

[1] 羅蕾. 嵌入式實時操作系統(tǒng)及應(yīng)用開發(fā)[M]. 北京:北京航空航天大學(xué)出版社,2005.

[2] 陳天洲. “嵌入式系統(tǒng)概論”課程設(shè)計[J]. 北京:計算機教育,2006,4.

[3] 王志軍. 解構(gòu)北京大學(xué)嵌入式系統(tǒng)課程建設(shè)[J]. 北京:計算機教育,2006,5.

篇5

2 《操作系統(tǒng)》實踐環(huán)節(jié)的運作情況

經(jīng)過對各高校《操作系統(tǒng)》實踐教學(xué)的調(diào)查,《操作系統(tǒng)》實踐部分的開設(shè)形式主要有以下四種:

2.1 驗證操作系統(tǒng)部分功能的實驗

這種實驗方式最簡單,主要思路是,以某個實際的商業(yè)操作系統(tǒng)為實驗環(huán)境,學(xué)生可以嘗試執(zhí)行操作系統(tǒng)提供的某些功能,能力更強的學(xué)生還可利用操作系統(tǒng)提供的系統(tǒng)調(diào)用函數(shù)編寫、運行程序,以改進功能。通過這兩種方式,學(xué)生可體驗操作系統(tǒng)原理在實際商用操作系統(tǒng)中是如何工作的。

這種方式的特點是,學(xué)生不必編寫操作系統(tǒng)功能實現(xiàn)的代碼,對完全理解操作系統(tǒng)的內(nèi)涵意義不大。

2.2 模擬經(jīng)典算法的實驗

這是比較常見的一種實驗方式。其執(zhí)行過程是,由教師選取操作系統(tǒng)中的一些經(jīng)典算法,如讀者-寫者問題,電梯算法,讓學(xué)生使用其熟悉的編程語言(如:C語言、C++語言)來實現(xiàn)算法。

該方式與程序設(shè)計課程的上機環(huán)節(jié)相似,這有助于學(xué)生理解《操作系統(tǒng)》的理論和技術(shù),但是,這種方式由于缺乏訓(xùn)練學(xué)生對操作系統(tǒng)完全性的把握,達不到培養(yǎng)學(xué)生完整掌握操作系統(tǒng)的目的。

2.3 替換實際操作系統(tǒng)的主要模塊

這種方式對學(xué)生的編程能力要求較高。其執(zhí)行過程是,以開源的操作系統(tǒng)為平臺,要求學(xué)生選取其中的主要功能模塊,并對其進行替換及擴展。然而,開源的操作系統(tǒng)一般比較龐大,結(jié)構(gòu)環(huán)境復(fù)雜,對師生的要求很高,一般高校實施的效果不好,最終只有小部分學(xué)生達到實驗?zāi)康模瑢W(xué)生的受益面不大。[3]

2.4 設(shè)計一個操作系統(tǒng)雛形

這種方式的執(zhí)行過程是,教學(xué)中可選取一個包含簡單內(nèi)核的教學(xué)操作系統(tǒng),讓學(xué)生逐步改進、擴展其功能;或者干脆讓學(xué)生設(shè)計一個全新的操作系統(tǒng)雛形,該雛形包含操作系統(tǒng)的基本內(nèi)核功能,如處理機管理、進程管理、內(nèi)存管理、設(shè)備管理、文件管理功能。

該方式與課程實驗教學(xué)目標一致,理論上比較理想,但在實際的執(zhí)行過程中,由于操作系統(tǒng)是一個大型的系統(tǒng)軟件,其設(shè)計、結(jié)構(gòu)相當(dāng)復(fù)雜,因此這種方式實施起來難度很大。

3 在教學(xué)操作系統(tǒng)GeekOS上完成實驗教學(xué)

由于一般的商業(yè)操作系統(tǒng)設(shè)計復(fù)雜,結(jié)構(gòu)龐大,學(xué)生規(guī)定課時內(nèi)很難全面掌握,同時,這些操作系統(tǒng)已經(jīng)非常成熟,差不多實現(xiàn)了全部功能,學(xué)生沒有多少新的工作可做。所以,設(shè)計一個基于教學(xué)操作系統(tǒng)的實踐教學(xué)平臺顯得尤為迫切和必要。

3.1 教學(xué)操作系統(tǒng)的分類

教學(xué)操作系統(tǒng)有兩大類:一類是針對RISC結(jié)構(gòu)MIPS處理器的,例:Nachos;另一類是針對CISC結(jié)構(gòu)的X86通用處理器的,例:Minix、 GeekOS。

3.2 GeekOS操作系統(tǒng)概述

最通用的處理器是CISC結(jié)構(gòu)的X86通用處理器。它是一個用C語言開發(fā)的操作系統(tǒng),學(xué)生可以在Linux或UNIX環(huán)境下對其進行功能擴充,也可以在g(project1等項目中還包含有磁盤鏡像diskc.img),makefile項目管理文件。

2) Include文件夾。包含兩個子目錄,分別是geekos和libc,在geekos子目錄中有kthread.h,keyboard.h等頭文件,在libc中包含有GeekOS支持的C語言標準字符串函數(shù)頭文件string.h。

3) scripts文件夾。包含項目編譯時用到的一些腳本文件。

4) src文件夾。包含系統(tǒng)內(nèi)核源代碼,用戶修改GeekOS系統(tǒng)時要修改的源代碼如main.c等都位于這個目錄中,在User子文件夾中一般是用來存放用戶的測試文件,在tools子目錄中的代碼是用來建立pfat測試文件系統(tǒng)的。

3.3.2七個項目的功能

project0:在該項目中,要求學(xué)生實現(xiàn)一個內(nèi)核級的I/O進程,該進程能從鍵盤接收一個按鈕,并顯示在顯示屏上。該項目的目的是讓學(xué)生了理解GeekOS的編譯、鏈接和運行,明白計算機系統(tǒng)是如何啟動的。

project1:在該項目中,要求學(xué)生熟悉可執(zhí)行鏈接文件(ELF)的格式,并通過編程程序來分析該文件,同時將分析結(jié)果送到加載器。該項目的目的是讓學(xué)生理解ELF文件的結(jié)構(gòu),使學(xué)生掌握如何加載和運行可執(zhí)行文件。

在提供的GeekOS內(nèi)核系統(tǒng)的基礎(chǔ)上,為學(xué)生設(shè)計了7個由易到難的設(shè)計項目用于GeekOS的改進。這些項目分別涵蓋了操作系統(tǒng)內(nèi)核的各個基本模塊:系統(tǒng)啟動,進程管理,存儲管理,文件系統(tǒng),訪問控制以及進程間通信。7個項目都規(guī)定了改進的目標,并提供了一些設(shè)計指導(dǎo)性的意見,但沒有提供源代碼,所以學(xué)生首先必須熟悉GeekOS的基本工作原理,才能開展各個項目的設(shè)計與實現(xiàn)。

project2:在該項目中,要求學(xué)生編程來支持用戶態(tài)進程,這種支持包括初始化用戶態(tài)進程空間、初始化用戶進程空間、切換用戶進程、導(dǎo)入用戶程序。該項目中,計算機存儲分配方式還是采用段式分配。該項目實現(xiàn)后,學(xué)生就可以使用GeekOS提供的命令行解釋器Shell運行一些命令來執(zhí)行PFAT文件系統(tǒng)內(nèi)的用戶測試程序。

project3:在該項目中,要求學(xué)生改進GeekOS的調(diào)度程序,實現(xiàn)基于4級反饋隊列的調(diào)度算法(初始GeekOS系統(tǒng)僅提供了FIFO進程調(diào)度算法),并實現(xiàn)信號量,支持進程間通信。

project4:在該項目中,要求學(xué)生編程實現(xiàn)分頁虛擬存儲管理,以替代前述項目中一直采用的段式存儲管理。學(xué)生實現(xiàn)分頁式虛存管理以后,系統(tǒng)在內(nèi)存不足時,就可以將部分內(nèi)存頁面調(diào)出送到硬盤,以緩解內(nèi)容壓力,實現(xiàn)虛擬存儲技術(shù)。

project5:在該項目中,要求學(xué)生實現(xiàn)GOSFS文件系統(tǒng),該文件系統(tǒng)采用虛擬文件系統(tǒng),可加載不同的文件系統(tǒng),PFAT只讀文件系統(tǒng)是默認加載的文件系統(tǒng)。該項目的目的是要實現(xiàn)一個多級目錄的、可讀寫的文件系統(tǒng)。

project6:在該項目中,要求在文件系統(tǒng)中新增一個訪問控制列表,并使用匿名半雙工管道實現(xiàn)進程間通信。

4 《操作系統(tǒng)》實踐環(huán)節(jié)的考核

《操作系統(tǒng)》實踐環(huán)節(jié)的考核非常重要,好的考核將激勵學(xué)生努力學(xué)習(xí),達到實驗效果,辦法如下:

1)教師制定實驗報告格式和要求,教師對學(xué)生完成的實驗報告的作檢查和評價;

2)對設(shè)計性實驗,要求學(xué)生回答并作出評價,回答的問題主要有:闡述解決該問題的算法思想、所使用的數(shù)據(jù)結(jié)構(gòu)是如何設(shè)計的、使用的測試用例是如何選取和設(shè)計的、算法性能怎么樣。

篇6

作者簡介:張莉莉(1967-) 女,碩士,三峽大學(xué)計算機學(xué)院講師,研究方向為操作系統(tǒng)、系統(tǒng)結(jié)構(gòu)。

0引言

物聯(lián)網(wǎng)是在計算機互聯(lián)網(wǎng)的基礎(chǔ)上,利用RFID、無線數(shù)據(jù)通信等技術(shù),構(gòu)造一個覆蓋世界上萬事萬物的“Internet of Things”。在這個網(wǎng)絡(luò)中,物品能夠彼此進行“交流”,而無需人的干預(yù)。物聯(lián)網(wǎng)是繼計算機、互聯(lián)網(wǎng)和移動通信之后的又一次信息產(chǎn)業(yè)的革命性發(fā)展。物聯(lián)網(wǎng)被正式列為國家重點發(fā)展的戰(zhàn)略性新興產(chǎn)業(yè)之一。在國家大力推動工業(yè)化與信息化兩化融合的大背景下,物聯(lián)網(wǎng)會是工業(yè)乃至更多行業(yè)信息化過程中一個比較現(xiàn)實的突破口,是一個未來新興產(chǎn)業(yè)。應(yīng)這種社會需求,2010年初教育部下達了高校設(shè)置物聯(lián)網(wǎng)專業(yè)申報通知,眾多高校爭相申報。三峽大學(xué)計算機科學(xué)與技術(shù)專業(yè)開設(shè)了物聯(lián)網(wǎng)工程方向,以培養(yǎng)能夠系統(tǒng)地掌握物聯(lián)網(wǎng)相關(guān)理論、方法和技能,具備通信技術(shù)、網(wǎng)絡(luò)技術(shù)、傳感技術(shù)等信息領(lǐng)域?qū)I(yè)知識的高級工程技術(shù)人才。但是作為一個新興的課程體系,教學(xué)內(nèi)容選擇、實踐環(huán)節(jié)組織等問題依然處于探索階段。三峽大學(xué)將《嵌入式操作系統(tǒng)》[1]作為一門專業(yè)基礎(chǔ)課程被列入該專業(yè)方向必修課程,和傳統(tǒng)操作系統(tǒng)課程相比,嵌入式操作系統(tǒng)有自己的特點,尤其是實踐環(huán)節(jié),本文就《嵌入式操作系統(tǒng)》課程實踐教學(xué)部分進行研究。

1《嵌入式操作系統(tǒng)》教學(xué)存在的問題

首先,《嵌入式操作系統(tǒng)》是近年才出現(xiàn)的課程,可參考和借鑒的資料不多,各個學(xué)校都在探索一種適合該課程的教學(xué)模式。

其次,嵌入式系統(tǒng)是個綜合性很強的系統(tǒng),它涵蓋計算機、通信、網(wǎng)絡(luò)、RFID等各方面的技術(shù),那么,作為嵌入式系統(tǒng)開發(fā)和執(zhí)行平臺的操作系統(tǒng)也要體現(xiàn)這方面的特征,而如何體現(xiàn)尚有待進一步探索。

再次,需要更多的經(jīng)費投入,實驗的開設(shè)往往不是一臺PC機器就可以解決的。

2《嵌入式操作系統(tǒng)》實踐教學(xué)內(nèi)容的選定

《嵌入式操作系統(tǒng)》同一般操作系統(tǒng)課程相比有很多獨特之處。一般操作系統(tǒng)都以PC機操作系統(tǒng)為平臺,內(nèi)容包括進程管理、存儲管理、設(shè)備管理以及文件系統(tǒng)等內(nèi)容。嵌入式操作系統(tǒng)作為嵌入式軟件開發(fā)平臺,最終要和應(yīng)用軟件一起固化在某種設(shè)備里,因此,嵌入式操作系統(tǒng)應(yīng)該是易于裁剪和配置[2]的。如果這種設(shè)備要聯(lián)網(wǎng)使用,還需具備網(wǎng)絡(luò)功能,有的還需要特殊的文件系統(tǒng),而且在進程和內(nèi)存管理方面也不能過于復(fù)雜,在開設(shè)實驗課程時要考慮這些因素。鑒于以上分析,實踐教學(xué)內(nèi)容可從4個方面考慮:

(1)模擬類實驗。主要是通過編寫程序模擬嵌入式操作系統(tǒng)的一些算法。嵌入式操作系統(tǒng)和PC操作系統(tǒng)相比有很多不同之處:嵌入式操作系統(tǒng)要適應(yīng)多種處理器、可裁剪、輕量型、實時可靠、可固化。因此,嵌入式操作系統(tǒng)在進程管理、內(nèi)存管理、文件系統(tǒng)、設(shè)備管理等方面有獨特算法,可以開設(shè)實驗編寫程序模擬這類算法。此類實驗通常作為課內(nèi)實驗與理論課同步進行,用于驗證理論,屬于驗證型實驗。

(2)分析裁剪類實驗。主要利用免費操作系統(tǒng),如linux、minix、ucos/Ⅱ等。先分析這些系統(tǒng)內(nèi)核,再做適當(dāng)裁剪或增加或替換。由于這類實驗需要編譯內(nèi)核,所需時間比較長,可以作為課外選修的實驗。

(3)應(yīng)用型實驗。通過系統(tǒng)調(diào)用來完成一些應(yīng)用,這類實驗可以是驗證性的,也可以是設(shè)計類的。可以根據(jù)具體的應(yīng)用,設(shè)計一個實驗題目,讓學(xué)生在理論和驗證性實驗的基礎(chǔ)上進一步擴展。

(4)設(shè)計型實驗。主要是設(shè)計一個小型的操作系統(tǒng),這類實驗難度較高,可以作為課程設(shè)計類實驗。

三峽大學(xué)物聯(lián)網(wǎng)方向的課內(nèi)實驗[1]主要是配合理論課內(nèi)容而開設(shè),總共8個實驗,一個驗證性實驗,7個設(shè)計性實驗,實驗內(nèi)容如表1所示。

在課內(nèi)實驗的基礎(chǔ)上,再配以課外實驗[1],可以提高學(xué)生的綜合開發(fā)能力,課外實驗可以采用項目方式進行。課內(nèi)實驗在虛擬機上完成,課外實驗可以在基于ARM芯片的實時系統(tǒng)上開發(fā);課內(nèi)實驗要求獨立完成,課外實驗可以以小組為單位完成。課外實驗內(nèi)容如表2所示。

3教學(xué)環(huán)境與教學(xué)方式

3.1教學(xué)環(huán)境

首先,操作系統(tǒng)的選擇。嵌入式操作系統(tǒng)種類比較多,要根據(jù)先行課程和學(xué)生的層次選擇不同的操作系統(tǒng)。對于有操作系統(tǒng)背景知識的學(xué)生,可以采用較為復(fù)雜的系統(tǒng),如linux;

而對于沒有操作系統(tǒng)背景的學(xué)生,可以選擇簡單的操作系統(tǒng),例如UCOS/Ⅱ。

其次,開發(fā)工具的選擇。嵌入式軟件開發(fā)需要交叉編譯和交叉鏈接。交叉編譯器的主要功能是將主機上編寫的源程序編譯成可以在目標機上運行的代碼。教學(xué)環(huán)境可以是仿真環(huán)境[2]或者是真實環(huán)境。仿真環(huán)境有嵌入式軟件集成開發(fā)環(huán)境,例如lambdaTOOL,這個集成開發(fā)工具可以支持多種嵌入式操作系統(tǒng),如linux或者ucos等操作系統(tǒng),也支持32位的嵌入式處理器。該工具有面向教學(xué)的免費版本,利用這種工具進行實踐教學(xué)的好處就是有一臺PC機器即可,在實踐教學(xué)經(jīng)費缺乏的情況下是一種比較好的選擇,對于初學(xué)者來說也是一款很方便的工具。

真實環(huán)境除了PC機器之外還需要開發(fā)板,在PC機器上編譯、開發(fā)板上執(zhí)行,這種環(huán)境可以鍛煉學(xué)生的動手能力。真實環(huán)境開發(fā)工具和開發(fā)板有關(guān)聯(lián),這類開發(fā)工具一般有與相關(guān)開發(fā)板芯片配套的開發(fā)環(huán)境,可以針對這種開發(fā)環(huán)境設(shè)計實驗內(nèi)容。

3.2教學(xué)方法

過去常用的教學(xué)方式是配合理論教學(xué)開設(shè)課內(nèi)實驗,這類實驗課時有限,每個實驗偏重某個知識點,實驗內(nèi)容事先設(shè)定好,學(xué)生在開發(fā)板上一個一個地驗證。這類實驗缺乏系統(tǒng)性,做完后,學(xué)生缺乏完整概念,而且,這種按照指導(dǎo)書按部就班完成實驗的方式,也缺乏創(chuàng)造性。對于《嵌入式操作系統(tǒng)》這門課程,單一地采用這種方式并不合適。

《嵌入式操作系統(tǒng)》實踐教學(xué)可以采用多種方式,如課內(nèi)課外實驗相結(jié)合、驗證性實驗和設(shè)計性實驗相結(jié)合等。課內(nèi)實驗開設(shè)應(yīng)用型且學(xué)生在短時間內(nèi)容易接受的實驗,這類實驗用于訓(xùn)練學(xué)生的基本技能。課外實驗通過課程設(shè)計、大型作業(yè)等方式,要求學(xué)生開發(fā)一個小型的系統(tǒng)或?qū)σ延邢到y(tǒng)進行裁剪或修改。課外實驗在時間上沒有課內(nèi)實驗的限制,可以開設(shè)綜合性的實驗。

此外,還可以采用項目驅(qū)動式教學(xué),如果有這個條件,可以讓學(xué)生參與一些項目的開發(fā),將科研與教學(xué)結(jié)合起來。

教學(xué)手段可以采用多媒體教學(xué)與網(wǎng)絡(luò)輔助教學(xué)相結(jié)合的方式,多媒體教學(xué)用于面授,網(wǎng)絡(luò)用于課外自學(xué)。《嵌入式操作系統(tǒng)》課程需要較強的理論知識,更需要在實踐環(huán)節(jié)加強訓(xùn)練。多媒體教學(xué)可以作為實踐教學(xué)環(huán)節(jié)的準備,形象、生動地將一些抽象的概念具體化,讓學(xué)生有一個感性的認識,模擬一些在使用操作系統(tǒng)時看不見的過程,加深學(xué)生對知識的理解。

網(wǎng)絡(luò)教學(xué)手段能夠彌補課程教學(xué)的不足。可以充分利用現(xiàn)有的校園網(wǎng)資源開發(fā)一個網(wǎng)上答疑系統(tǒng),學(xué)生與學(xué)生、學(xué)生與教師之間可以隨時“交談”,改變以教師為主的教學(xué)方式,轉(zhuǎn)向以學(xué)生為主的教學(xué)方式。也可以嘗試大規(guī)模網(wǎng)絡(luò)開放課程(Massive Open Online Courses),這是一種依托互聯(lián)網(wǎng)的教學(xué)模式,與傳統(tǒng)的教學(xué)模式有很大差別,它在線提供課程教學(xué)的全過程,包括微證書的管理,是一種新型的適合高校教育的模式。在這種模式下,教室成為學(xué)習(xí)會所,教師在“云”端授課,可以不拘泥于場所、時間等因素,甚至可以讓學(xué)生自行選取學(xué)習(xí)的內(nèi)容。這個正好與《嵌入式操作系統(tǒng)》課程內(nèi)容相吻合,因為嵌入式系統(tǒng)所涉及的領(lǐng)域十分廣泛,在做教學(xué)計劃時,將方向定在什么領(lǐng)域也十分困難,可以讓學(xué)生自行根據(jù)愛好和市場需求制定學(xué)習(xí)模塊,利用開放課堂進行學(xué)習(xí)。目前,全球比較成規(guī)模的MOOCs三大平臺是Coursera、Udacity、edX,可以依托這些平臺,建設(shè)《嵌入式操作系統(tǒng)》課程資源。

4教材

目前,《嵌入式操作系統(tǒng)》實踐系列的教材還不多見,筆者推薦《嵌入式實時操作系統(tǒng)及應(yīng)用開發(fā)》配套的實驗方案[2]。該方案有兩套,一套是利用仿真系統(tǒng)開發(fā)實驗,工具是利用免費的開發(fā)環(huán)境Lambdatool,另一套是利用某種嵌入式微處理器開發(fā)的嵌入式軟件交叉開發(fā)實驗系統(tǒng),也可以自行編寫。

5考核方式

《嵌入式操作系統(tǒng)》課程教學(xué)考核方式應(yīng)該多樣化。傳統(tǒng)的考核方式一般是學(xué)生按照事先設(shè)定的內(nèi)容完成實驗,然后提交實驗報告,教師依據(jù)報告的內(nèi)容給予成績評定。《嵌入式操作系統(tǒng)》是一門綜合性和實踐性比較強的課程,用通常的機考、筆試等方式,要求在限定的短時間內(nèi)完成考核存在一定的難度,因此考核方式應(yīng)該多樣化。將考核與教學(xué)方法相結(jié)合,對于課內(nèi)實驗,要求在固定時間內(nèi)完成命題,這類命題一般為設(shè)計驗證性的實驗和難度偏低的內(nèi)容;對于課外實驗,考核命題可以由教師指定范圍,學(xué)生自己擬定題目的方式。對于參與項目的學(xué)生,可以由項目負責(zé)人給予成績評定。考核過程采用答辯和文字描述相結(jié)合的方式,學(xué)生提交實驗報告或者設(shè)計報告,教師通過提問的方式來考核學(xué)生完成報告的程度。考核的最終成績可以由以上3個方面來進行綜合評定。

6結(jié)語

高校教育必須面向市場,不斷地進行教學(xué)改革,提高教學(xué)質(zhì)量。計算機專業(yè)更是一個較前沿的專業(yè),新的概念和技術(shù)不斷出現(xiàn),《嵌入式操作系統(tǒng)》就是在物聯(lián)網(wǎng)的新形式下開設(shè)的一門課程。鑒于嵌入式設(shè)計將操作系統(tǒng)和應(yīng)用軟件一體化的特點,《嵌入式操作系統(tǒng)》實踐教學(xué)更要加快研究步伐,不斷探索,實驗內(nèi)容通常每學(xué)年做一些修訂,三年左右做一次較大修訂。只有不斷地改革《嵌入式操作系統(tǒng)》課程的實踐教學(xué)環(huán)節(jié),才能更好地培養(yǎng)動手能力強的學(xué)生,以適應(yīng)物聯(lián)網(wǎng)市場的人才需求。

參考文獻參考文獻:

[1]張莉莉.嵌入式操作系統(tǒng)課程教學(xué)探討[J].軟件導(dǎo)刊,2012(12):190-191.

[2]羅蕾.嵌入式實時操作系統(tǒng)及應(yīng)用開發(fā)[M].第3版.北京:北京航空航天大學(xué)出版社,2011.

篇7

實驗報告封面

實驗名稱:制作電子演示文稿

姓名:×××

專業(yè)年級:201x級××××學(xué)院××××專業(yè)

學(xué)號:

指導(dǎo)老師:任課教師姓名

201x~201x學(xué)年 第一學(xué)期

[實驗?zāi)康腯

1。掌握PowerPoint文檔的創(chuàng)建、打開、關(guān)閉等基本操作

2。掌握幻燈片的插入、復(fù)制、刪除操作

3。掌握幻燈片文本的編輯方法

4。掌握設(shè)置背景,母版,應(yīng)用設(shè)計模板的方法

5。掌握插入圖片,聲音,視頻和FLASH等操作

6。掌握幻燈片放映方法

[實驗環(huán)境]

Windows XP操作系統(tǒng)、OFFICE20xx

[實驗內(nèi)容和實驗步驟]

1.在D:盤建立一個名為“我的專業(yè).ppt”的演示文稿,包括三張幻燈片 。

1)第一張:版式為“標題幻燈片”,主標題為“我的專業(yè)”,副標題為“選擇因為喜愛” 步驟:

2)第二張:版式為“標題和文本”,標題內(nèi)容為“專業(yè)簡介”,內(nèi)容自己輸入。

步驟:

3)第三張:版式為“標題和兩欄文本”,標題內(nèi)容為“開設(shè)課程”,內(nèi)容自己輸入。 步驟:

4)將所有幻燈片切換設(shè)為“隨機”。

步驟:

2.將給定的Powerpoint文件a.ppt(在IE瀏覽器中輸入網(wǎng)址:

下載a.ppt)下載到本機后打開,再做以下操作:

1)將第一張幻燈片的背景紋理設(shè)為:畫布;

步驟:

2)在第二張幻燈片上,添加標題:古典名著;字體為:隸書;且居中對齊;

步驟:

3)將第三張幻燈片的版式更改為“標題和兩欄文本”,并設(shè)置幻燈片的切換效果為“溶解”。 步驟:

3.將給定的Powerpoint文件b.ppt(在IE瀏覽器中輸入網(wǎng)址:

下載b.ppt)下載到本機后

打開,再做以下操作:

1)將第一張幻燈片的版式設(shè)為:標題幻燈片;

步驟:

2)將第二張幻燈片的切換方式改為:階梯狀向左下展開;

步驟:

3)設(shè)置第二張幻燈片標題框在3秒后自動播放;

步驟:

4)在第三張幻燈片后插入一張新幻燈片,標題為:新幻燈片

步驟:

[實驗分析和實驗心得]

自己書寫。

[問題和建議]

篇8

一、引言

操作系統(tǒng)是計算機專業(yè)重要的核心課程,是一門理論性和綜合性較強的學(xué)科,該課程的理論學(xué)習(xí)是理解計算機系統(tǒng)工作、用戶與計算機系統(tǒng)交互和設(shè)計開發(fā)應(yīng)用系統(tǒng)等基本知識結(jié)構(gòu)的重要途徑,而其實驗教學(xué)則是學(xué)生得以深入理解和驗證課堂教學(xué)內(nèi)容的直接和有效手段。

操作系統(tǒng)實驗教學(xué)能強化學(xué)生加深理解操作系統(tǒng)的概念、原理、組成等基本知識,能拓寬學(xué)生編程思路,培養(yǎng)動手操作能力與分析綜合能力,所以實驗教學(xué)的質(zhì)量將直接影響學(xué)生的實踐能力、創(chuàng)新能力、合作能力等。[1]在創(chuàng)新驅(qū)動戰(zhàn)略的指引下進行操作系統(tǒng)實驗教學(xué)的改革,面向市場不斷創(chuàng)新實驗教學(xué)的各項機制,提高學(xué)生的創(chuàng)新能力和實踐能力,使實驗教學(xué)、人才培養(yǎng)和服務(wù)社會有機融合、協(xié)同發(fā)展,培養(yǎng)更符合就業(yè)市場對計算機類技術(shù)應(yīng)用型需求的人才。

二、操作系統(tǒng)實驗教學(xué)現(xiàn)狀及存在的問題

1.實驗教學(xué)的重視度不夠

在教育教學(xué)中,大多數(shù)的實驗教學(xué)往往附屬于理論教學(xué),對學(xué)生的實驗?zāi)芰蛣?chuàng)新精神的培養(yǎng)不夠重視。而學(xué)生在實驗環(huán)節(jié)中過于隨意,學(xué)習(xí)紀律渙散,遲到、早退、曠課、請假等情況屢見不鮮。由于實驗教學(xué)落不到實處,導(dǎo)致學(xué)生動手實踐能力薄弱,創(chuàng)新能力差,缺乏適應(yīng)企業(yè)需求的專業(yè)知識和實踐能力,造成了學(xué)生就業(yè)困難的局面。

2.實驗教學(xué)內(nèi)容設(shè)置問題[2]

操作系統(tǒng)課程的實驗教學(xué)內(nèi)容主要是圍繞教材中的主要算法進行驗證性的實驗,但是僅僅靠這幾個算法很難讓學(xué)生直觀地理解眾多抽象的概念,且學(xué)生在這些實驗中學(xué)習(xí)的方法和技能并不能應(yīng)用到實際項目開發(fā)中去,實驗成為一種形式,理論與實踐脫離嚴重。

3.實驗教學(xué)平臺的選擇問題[1,2]

操作系統(tǒng)課程的實驗教學(xué)環(huán)境選擇較難,大部分的教材都是以Unix系統(tǒng)為例,但是Unix安裝成本較貴,不太適宜用于學(xué)生實驗。Windows系統(tǒng)是學(xué)生較為熟悉的操作系統(tǒng),但是其大部分源代碼不對外公開,學(xué)生實驗時無法深入到操作系統(tǒng)內(nèi)部進行學(xué)習(xí)和探究,不利于學(xué)生對操作系統(tǒng)的工作原理的理解。選用Linux作為實驗操作系統(tǒng),又因為學(xué)生對Windows系統(tǒng)較為熟悉,大部分沒有接觸過Linux系統(tǒng),思維定勢難免會給學(xué)習(xí)和認知帶來難度,因而也限制了學(xué)生對操作系統(tǒng)工作原理的理解和創(chuàng)新能力的培養(yǎng)。

4.實驗教學(xué)類型和手段的單一[3]

目前的實驗教學(xué)大多是驗證型和仿真型的,注重的是理論知識的檢驗和證明。這種實驗以教師為中心,學(xué)生完全按照教師的意圖進行實踐操作,缺乏自己的思考和創(chuàng)新過程。實驗教學(xué)沒有發(fā)揮其應(yīng)有的作用,還直接影響到學(xué)生的學(xué)習(xí)興趣和積極性,也因此使學(xué)生的創(chuàng)新思維和能力的培養(yǎng)和提高受到了限制。

5.缺乏高水平的、雙師型的實驗教學(xué)師資隊伍

高校教師大多是從學(xué)校到學(xué)校,缺乏校企溝通的理念和環(huán)境,缺乏企業(yè)工程化的實踐工作經(jīng)驗,因而無法保證對學(xué)生的操作技能進行有效的指導(dǎo),直接影響實踐教學(xué)的效果和應(yīng)用型人才的培養(yǎng)。

針對上述操作系統(tǒng)實驗教學(xué)的現(xiàn)狀,筆者結(jié)合學(xué)校“第四批精品課程立項項目”――計算機操作系統(tǒng)課程建設(shè)中的實驗教學(xué)的改革實踐,提出了創(chuàng)新驅(qū)動戰(zhàn)略下實驗教學(xué)體系改革的思路以及一些具體的措施。

三、創(chuàng)新驅(qū)動戰(zhàn)略下實驗教學(xué)改革思路

1.推進產(chǎn)學(xué)研合作,構(gòu)建實驗教學(xué)改革的條件

建立產(chǎn)學(xué)研技術(shù)創(chuàng)新戰(zhàn)略聯(lián)盟,為實驗教學(xué)體系結(jié)構(gòu)的改革提供有力的支持。具體包括兩個方面的創(chuàng)新工作:

(1)創(chuàng)新制度建設(shè),搭建高校和企業(yè)合作的外部環(huán)境。建立高校教師到企業(yè)掛職制度,改善教師的專業(yè)知識結(jié)構(gòu),通過結(jié)合技術(shù)創(chuàng)新的實踐,提高專業(yè)技能、積累經(jīng)驗,從創(chuàng)新過程中加深教師對產(chǎn)業(yè)的認知。同時建立流動編制,從企業(yè)聘請集工程理論與技術(shù)專長為一體的工程師進行實驗指導(dǎo),并在制度上促進這一機制的形成。這種制度建設(shè)的改革,培養(yǎng)了高素質(zhì)的、“雙師型”實驗師資隊伍,使實驗教學(xué)教師的知識結(jié)構(gòu)與時俱進,從而保證了實驗教學(xué)的質(zhì)量。

(2)創(chuàng)新科研思路,將實驗教學(xué)與科研進行有機融合,促進產(chǎn)學(xué)研合作機制的可持續(xù)發(fā)展。以科技或市場為驅(qū)動,加強與企業(yè)的聯(lián)系,主動找準企業(yè)的關(guān)鍵點和興趣點,建立以企業(yè)需求為導(dǎo)向的科研項目。同時將科研與實驗教學(xué)相結(jié)合,以綜合性的工程實踐項目為主線,圍繞綜合實踐項目內(nèi)容將項目模塊化,按照操作系統(tǒng)功能的五大模塊:進程管理模塊、存儲管理模塊、文件管理模塊、設(shè)備管理模塊、網(wǎng)絡(luò)管理模塊分配到實驗教學(xué)內(nèi)容各環(huán)節(jié)中,從而將實驗教學(xué)與科研實現(xiàn)有機的融合。在提高教師的科研水平和業(yè)務(wù)水平的同時,實驗教學(xué)的效果和質(zhì)量得到了顯著提高,實驗教學(xué)內(nèi)容也更加貼近了產(chǎn)業(yè)技術(shù)對人才的需求。

2.創(chuàng)新實驗教學(xué)過程,分層次教學(xué),逐步培養(yǎng)學(xué)生的學(xué)習(xí)能力

單一的驗證型實驗教學(xué)并不適合培養(yǎng)學(xué)生的獨立設(shè)計能力和綜合運用知識的能力,所以要創(chuàng)新實驗課程內(nèi)容,精簡基礎(chǔ)和驗證性實驗,增加模擬設(shè)計性、規(guī)劃研究性和開放性的實驗,使實驗教學(xué)內(nèi)容的層次分明。

在不同階段實施不同的實驗內(nèi)容和形式,讓實驗教學(xué)循序漸進完成,以達到最佳實驗效果。具體實驗教學(xué)過程為:

(1)認知學(xué)習(xí)實驗階段。這種實驗主要是驗證型實驗,包括基本的應(yīng)用級和系統(tǒng)管理級的實驗。如,操作系統(tǒng)的安裝、文件操作等,實驗中以教師輔導(dǎo)為主,教會學(xué)生如何安裝虛擬機、如何加載虛擬機鏡像、熟悉操作系統(tǒng)各項功能、掌握文件操作命令等。

(2)設(shè)計性實驗階段。以學(xué)生自學(xué)為主,學(xué)生自己編程模擬實現(xiàn)操作系統(tǒng)的某些功能模塊。主要的實驗有:動態(tài)優(yōu)先權(quán)進程調(diào)度算法、時間片輪轉(zhuǎn)調(diào)度算法、頁面置換算法等。當(dāng)學(xué)生遇到問題時,并不直接替他們排除故障,而是提出產(chǎn)生故障的幾種可能性,鼓勵學(xué)生提出問題和不同的見解并自行加以解決。例如,在動態(tài)優(yōu)先權(quán)進程調(diào)度算法設(shè)計實驗中,學(xué)生的設(shè)計思路不明確時,可從幾個方面來幫助他們理清思路:是否考慮了進程的阻塞時間、在運行進程已占用CPU時間以達到所需運行時間時是否進程還未到達,等等,提出多種可能的情況,讓學(xué)生自行思考、設(shè)計并解決問題。

(3)研究創(chuàng)新性實驗階段。在進行設(shè)計性實驗后,學(xué)生已經(jīng)從書本逐步走向?qū)嵺`,消除了對編寫軟件系統(tǒng)的心理障礙,提高了編程水平。此階段是以提高素質(zhì)為主,激發(fā)學(xué)生創(chuàng)新思維能力,強調(diào)的是主動研究式的實驗學(xué)習(xí)過程。可選的實驗內(nèi)容較多,如進程創(chuàng)建、內(nèi)存分配、文件的讀/寫等,教師給出其中較為有意思部分的源代碼,要求學(xué)生閱讀,然后讓學(xué)生在此基礎(chǔ)上自行提出課題和基本思路,并利用圖書館、網(wǎng)絡(luò)等查找相關(guān)資料后獨立完成。學(xué)生在這種研究性學(xué)習(xí)過程中主動獲取知識,開動腦筋進行課題的思考和設(shè)計,因而有效地培養(yǎng)了學(xué)生的創(chuàng)新精神和實踐能力。

(4)開放性實驗階段。[4]最后,安排學(xué)生進行開放性實驗,培養(yǎng)學(xué)生的主體作用和主動學(xué)習(xí)能力。可讓學(xué)生自成小組,在虛擬機平臺上,從裸機開始,通過實例利用匯編與C語言編寫一個小型的操作系統(tǒng)的框架,包括處理機管理、存儲器管理、文件管理和簡單的設(shè)備管理。團隊協(xié)作分析和設(shè)計仿真操作系統(tǒng)的架構(gòu)和各項功能、制定實驗計劃、編寫代碼并注釋說明、分析實驗結(jié)果、撰寫說明書和實驗報告,最后由團隊統(tǒng)一提交。這樣的實驗有助于學(xué)生把握操作系統(tǒng)的精髓,真實地消化書本知識,同時培養(yǎng)和提高了學(xué)生自主學(xué)習(xí)能力、獨立思考的探索精神和團隊協(xié)作的能力。

3.創(chuàng)新實驗教學(xué)方法和手段,激發(fā)學(xué)生的興趣

在實驗中創(chuàng)新實驗教學(xué)方法和手段,使用多樣的教學(xué)方法和手段并靈活應(yīng)用來提高學(xué)習(xí)的積極性、激發(fā)學(xué)習(xí)的興趣。

(1)借助合適的實驗平臺。在實驗教學(xué)平臺選擇上,采用的是在Windows操作系統(tǒng)上運行虛擬機方式,利用一些虛擬機軟件,如VisualPC,再運行Linux系統(tǒng)。通過學(xué)生較為熟悉的Windows操作系統(tǒng)的相關(guān)功能來對比學(xué)習(xí)Linux操作系統(tǒng),這樣的實驗平臺更容易讓學(xué)生更易掌握和理解操作系統(tǒng)的工作原理。

(2)多媒體輔助實驗教學(xué)。利用多媒體技術(shù)為實驗教學(xué)提供交互式教學(xué)環(huán)境,讓學(xué)生清楚實驗的內(nèi)容、重點、目的等,促進學(xué)生對知識的學(xué)習(xí)興趣和熱情。例如在銀行家算法實驗中,可以設(shè)計動態(tài)的場景,借助多媒體的應(yīng)用,讓學(xué)生充分了解在該實驗中什么情況下會發(fā)生死鎖現(xiàn)象,又如何設(shè)計實現(xiàn)安全狀態(tài)來避免該現(xiàn)象的發(fā)生等。

(3)啟發(fā)式實驗教學(xué)。實驗教學(xué)中可采用啟發(fā)式的教學(xué)方法,加強學(xué)生對抽象知識的理解和掌握。例如在操作系統(tǒng)教學(xué)內(nèi)容中有多處調(diào)度算法,如進程調(diào)度算法、虛擬內(nèi)存的頁面調(diào)度算法、磁盤調(diào)度算法等,在實驗教學(xué)中可采用對比分析的啟發(fā)式教學(xué)方法,讓學(xué)生對不同內(nèi)容的調(diào)度算法進行比較,從而對實現(xiàn)操作系統(tǒng)課程教學(xué)的目的起到很好的促進作用。

(4)案例驅(qū)動式實驗教學(xué)。實驗中通過具體案例來挖掘?qū)W生的創(chuàng)新潛能,要有意識地從應(yīng)用及工程實踐的角度,用案例、項目的方式對實驗內(nèi)容以多角度描述,然后讓學(xué)生在案例基礎(chǔ)上進行改進和創(chuàng)造。如,將開源操作系統(tǒng)Linux作為實例教學(xué),引導(dǎo)和幫助學(xué)生進行深入分析,通過案例分析和“做中學(xué)”,使學(xué)生深刻理解操作系統(tǒng)中的原理和算法和實現(xiàn)技術(shù),讓學(xué)生在內(nèi)核中添加或修改功能。培養(yǎng)了學(xué)生的創(chuàng)新能力,同時也培養(yǎng)了學(xué)生對系統(tǒng)軟件進行分析、設(shè)計和開發(fā)的能力。

4.創(chuàng)新實驗教學(xué)考核評價模式

探索、創(chuàng)新更加合理的實驗教學(xué)考核評價模式,不再單純地以上交的實驗報告為最終成績的評定。具體的方法有:提高實驗成績在總成績中的比例,使得學(xué)生更加重視實驗教學(xué);對不同階段的實驗題目設(shè)置一定的權(quán)重,學(xué)生根據(jù)能力選擇題目;深入學(xué)生實驗項目中,隨時提問,考察學(xué)生的學(xué)習(xí)態(tài)度、設(shè)計思路等;程序驗收時,抽選部分學(xué)生進行答辯,考核學(xué)生的學(xué)習(xí)效果;結(jié)合學(xué)生平時的各項表現(xiàn),批改實驗報告,給出實驗教學(xué)最終成績。

四、結(jié)語

操作系統(tǒng)實驗教學(xué)活動可以幫助學(xué)生加深對操作系統(tǒng)原理和算法的理解和掌握,讓學(xué)生通過實驗過程體會到計算機軟硬件體系結(jié)構(gòu)和操作系統(tǒng)的關(guān)系,以及計算機體系結(jié)構(gòu)對操作系統(tǒng)發(fā)展的影響等。我們在學(xué)校立項的精品課程建設(shè)項目中,立足本校,更新實驗教學(xué)理念,深化實驗教學(xué)體系結(jié)構(gòu)的改革,培養(yǎng)學(xué)生對技術(shù)發(fā)展的跟蹤意識,提高學(xué)生的學(xué)習(xí)能力、實踐能力、創(chuàng)新能力,鍛煉他們的團隊協(xié)作精神,以達到與企業(yè)的無縫鏈接,為社會培養(yǎng)能適應(yīng)市場需求的創(chuàng)新型與技能性的計算機專業(yè)技術(shù)人才。

參考文獻:

[1]孫述和等.操作系統(tǒng)實驗教學(xué)研究與探索[J].計算機教育,2010,(1).

篇9

The Research and Practice on the Bilingual Teaching of Operation System(OS) Course

TIAN Jun, LI Dan

(School of Electronic and Information Engineering,Xuzhou Institute of Technology, Xuzhou,Jiangsu 221008,China)

Abstract:Bilingual teaching of Operation System(OS)course is the reform and innovation of teaching methods, on the basis of original teaching requirements.Then the students can master the operating system design principles and methods through the bilingual study about technical terms and algorithms. In the basis of the training goal of OS bilingual teaching,this article is focused on the three major aspects of the Practice Teaching Reform:teaching material,teaching methods and assessment methods.

Key words:operation system; bilingual teaching; discovery of teaching practice

隨著科技發(fā)展與國際交流的關(guān)系日益密切,我國對雙語人才的需求日漸增加,國家教育部在2001年提出加強大學(xué)本科教學(xué)的12項措施,其中要求各高校在三年內(nèi)開設(shè)5%---10%的雙語課程,并引進原版教材和提高師資水平[1]。在專業(yè)課授課中引入國外原版教材以及技術(shù)資料,開展相關(guān)課程的雙語教學(xué)近年來已成為徐州工程學(xué)院提高本科教育教學(xué)質(zhì)量的重要措施。作者承擔(dān)了我校“操作系統(tǒng)”雙語課程建設(shè)的工作,該文就將從操作系統(tǒng)雙語教學(xué)實踐中遇到的問題以及采取的改革措施進行初步的探討。

1 OS開展雙語教學(xué)的必要性

從計算機科技研發(fā)的發(fā)展過程看,重要的技術(shù)革新都源于歐美,這也局限了我們所接觸的核心學(xué)術(shù)論文以及軟硬件產(chǎn)品的技術(shù)資料等都是以英文來編寫,計算機專業(yè)外語也形成了一個相對獨立的體系[2,3],因此對計算機專業(yè)課程開設(shè)雙語教學(xué)是實現(xiàn)我校計算機教育與國際接軌的重要手段,勢在必行。

《操作系統(tǒng)》是為計算機應(yīng)用技術(shù)和軟件技術(shù)專業(yè)方向?qū)W生開設(shè)的專業(yè)必修課。該課程作為一門原理課程,各類算法以及學(xué)科前沿的相關(guān)資料都是英文版的,通過雙語的學(xué)習(xí),有益于學(xué)生在獲得專業(yè)知識的同時掌握計算機專業(yè)外語,具備查閱英文文獻的能力。此外,該課程開設(shè)在計算機專業(yè)本科學(xué)生的大三學(xué)年,考慮到學(xué)生已經(jīng)具備了一定的英語聽說讀水平和專業(yè)基礎(chǔ)知識,也是比較適當(dāng)?shù)摹?/p>

2本課程雙語教學(xué)的目標

5考核方式

以往的教學(xué)中考試成績只是考慮了期末成績以及平時作業(yè)、實驗報告,難以體現(xiàn)出學(xué)生對OS理論知識的運用能力,因此在本課程的考核方式中引入了專題討論成績,實現(xiàn)了考核方式的多元化。每章節(jié)作業(yè)以及實驗報告占10%,期末考試成績50%,主要考察學(xué)生對OS原理的掌握;專題討論占40%,而專題討論又細化四部分(發(fā)現(xiàn)問題10%,算法改進15%,算法實現(xiàn)5%,比較分析10%),考察學(xué)生的實踐能力。改革后課程成績考核方法如圖3所示。

6結(jié)論

對比我校近兩屆學(xué)生操作系統(tǒng)課程綜合成績,尤其是畢業(yè)設(shè)計選題及完成情況,學(xué)生平均課程成績以及畢業(yè)設(shè)計選題的前沿性都有顯著提高。說明學(xué)生較好的掌握了操作系統(tǒng)原理理論知識,培養(yǎng)了學(xué)生發(fā)現(xiàn)問題解決問題的能力,學(xué)生查閱英文文獻的能力也得到培養(yǎng)和提高。可見,我校操作系統(tǒng)雙語教學(xué)立足專業(yè)注重實踐的基本方案是可行有效的,本方案的實施也為我校其他課程雙語課程的開展具有一定參考價值。

參考文獻:

[1]蘇曉云.地方高校雙語教學(xué)課程質(zhì)量保障體系的研究與實踐[J].中國電力教育,2010(19).

篇10

培養(yǎng)實用型、創(chuàng)新型人才,提升軟件研發(fā)能力,構(gòu)建系統(tǒng)、完善的理論及實踐專業(yè)課程體系架構(gòu),一直是計算機專業(yè)課程和專業(yè)基礎(chǔ)課程的根本目標。為積極落實計算機學(xué)院計算機科學(xué)與技術(shù)專業(yè)的專業(yè)培養(yǎng)目標,強化對學(xué)生應(yīng)用編程實踐能力的體系化培養(yǎng),進一步構(gòu)建、充實計算機軟件、硬件緊密結(jié)合的基本知識架構(gòu),貫徹系統(tǒng)、可持續(xù)發(fā)展的培養(yǎng)思路和課程體系,在C語言程序設(shè)計、面向?qū)ο蠹夹g(shù)、計算機基礎(chǔ)等先修課程基礎(chǔ)上,加強學(xué)生軟件開發(fā)能力的培養(yǎng),設(shè)置并開設(shè)程序設(shè)計實踐課程“計算機設(shè)計項目實踐”。

課程設(shè)計方案針對專門的實用編程技術(shù)及其應(yīng)用實現(xiàn)方法,進行特定系統(tǒng)功能的設(shè)計,確立實現(xiàn)方法,完成程序編碼與調(diào)試。進一步加強程序設(shè)計基礎(chǔ)理論技術(shù)的掌握,提升程序設(shè)計的深度和難度,培養(yǎng)學(xué)生設(shè)計實現(xiàn)較大程序的能力。為專業(yè)素質(zhì)和能力的培養(yǎng)奠定扎實基礎(chǔ)。

本課程的設(shè)計項目對方案設(shè)計目標、設(shè)計內(nèi)容、設(shè)計思路、實施基本方法進行系統(tǒng)規(guī)劃,學(xué)生能夠了解面向具體應(yīng)用的程序設(shè)計基本方法,明確系統(tǒng)功能、設(shè)計、實現(xiàn)的基本流程,理解一個實用應(yīng)用程序的基本架構(gòu),掌握設(shè)計實現(xiàn)的應(yīng)用程序的運行流程。在選擇C語言編程環(huán)境及其方法的基礎(chǔ)上,能夠基于庫函數(shù)或類庫函數(shù)接口,運用具體編程方法,完成應(yīng)用程序的設(shè)計、編碼等開發(fā)工作。選擇學(xué)生感興趣的項目,構(gòu)建用戶自己的應(yīng)用程序代碼,達到熟練運用編譯環(huán)境工具、開發(fā)較大型應(yīng)用程序的目的。

課程方案設(shè)計的基本原則在于,通過精選應(yīng)用系統(tǒng)的需求分析、功能設(shè)計、編碼、實現(xiàn)、測試、提交等基本環(huán)節(jié),展現(xiàn)軟件開發(fā)基本過程,運用實用編程技術(shù)及其應(yīng)用實現(xiàn)方法,培養(yǎng)學(xué)生實際開發(fā)經(jīng)驗,提升學(xué)生應(yīng)用編程實力,鞏固學(xué)生程序設(shè)計基本規(guī)范、基本流程的理解和實現(xiàn)技術(shù),達到充實程序設(shè)計的應(yīng)用知識體系、激發(fā)學(xué)生的學(xué)習(xí)興趣和主動性、開拓學(xué)生的專業(yè)視野和實際工作能力的目的。

2教學(xué)方案設(shè)計

2.1應(yīng)用系統(tǒng)的設(shè)計

通用操作系統(tǒng)的文件系統(tǒng)為用戶數(shù)據(jù)的存儲和讀寫等提供必備支持,應(yīng)用程序設(shè)計也需要有關(guān)文件操作功能的支持,文件系統(tǒng)及其各項實現(xiàn)技術(shù)具有實用價值,C語言程序設(shè)計課程中,文件系統(tǒng)相關(guān)章節(jié)對文件的基本操作、編程接口、實現(xiàn)方法等內(nèi)容進行了簡要介紹,學(xué)生具備一定的理解文件系統(tǒng)功能和處理文件的知識基礎(chǔ)[1]。

參考相關(guān)資料,使用高級語言實現(xiàn)的一個文件系統(tǒng),作為一個應(yīng)用原型系統(tǒng),基于該系統(tǒng),完成軟件項目設(shè)計的各個過程[2]。

首先通過分析文件系統(tǒng)基本功能,理解文件系統(tǒng)的設(shè)計步驟,及設(shè)計實現(xiàn)一個簡單、功能完善的模擬文件系統(tǒng)SMFS。該文件系統(tǒng)功能包括文件操作、文件存儲管理、文件系統(tǒng)一致性和容錯性管理[3]。

SMFS文件系統(tǒng)采用C語言設(shè)計實現(xiàn)。通過分析原型程序的數(shù)據(jù)結(jié)構(gòu)設(shè)計、算法設(shè)計實現(xiàn),掌握該應(yīng)用軟件的模塊劃分與集成,掌握編譯環(huán)境、運行環(huán)境的構(gòu)建與使用。

首先對現(xiàn)有原型系統(tǒng)初步改錯并進行調(diào)試,查看運行結(jié)果,分析并找出原型系統(tǒng)仍然存在的問題。

再根據(jù)所設(shè)計的文件系統(tǒng)應(yīng)用程序方案功能,進行設(shè)計和修改,對應(yīng)用程序進行二次開發(fā),完成應(yīng)用程序的設(shè)計、編碼、調(diào)試、運行。

方案的實施使學(xué)生應(yīng)用能力得到鍛煉和提高。學(xué)生可了解軟件開發(fā)規(guī)律、開發(fā)思路和實現(xiàn)技術(shù)。

2.2開發(fā)平臺的選擇

使用PC機、Windows操作系統(tǒng)、高級語言編譯工具及其環(huán)境,作為硬件、軟件開發(fā)運行平臺。選擇Turbo C或 Borland C作為編譯工具。開發(fā)、運行平臺易建。原型軟件程序已通過初步調(diào)試,可運行,為學(xué)生的調(diào)試、二次設(shè)計、開發(fā)提供有利支持和保證。方案可行性、可操作性較強。

3教學(xué)內(nèi)容

3.1文件系統(tǒng)分析

以UNIX操作系統(tǒng)文件系統(tǒng)為例,對文件系統(tǒng)管理數(shù)據(jù)結(jié)構(gòu)及基本構(gòu)成進行必要分析,了解文件系統(tǒng)基本工作方式及其功能實現(xiàn)的基本方式。動手實現(xiàn)一個模擬文件系統(tǒng)――文件應(yīng)用系統(tǒng)。

3.2文件應(yīng)用系統(tǒng)規(guī)劃

文件應(yīng)用系統(tǒng)設(shè)計功能包括,提供一個文件操作接口函數(shù)庫,基于該函數(shù)庫實現(xiàn)一個簡單的文件系統(tǒng),提供高效的存儲管理功能。該文件系統(tǒng)提供較好的容錯性能,系統(tǒng)崩潰時進行數(shù)據(jù)的一致性檢測,確保數(shù)據(jù)不丟失。

基于文件函數(shù)庫的基本文件操作函數(shù),設(shè)計實現(xiàn)一個簡單的單用戶文件系統(tǒng)。文件系統(tǒng)功能設(shè)計簡化為以下幾個模塊。

Naming:將文件名映射為文件占用的磁盤塊,空閑磁盤塊管理的內(nèi)存與磁盤數(shù)據(jù)結(jié)構(gòu),稱為磁盤空閑表。該表可跟蹤磁盤上每一個磁盤塊分配使用情況,該表永久存放在磁盤上,文件系統(tǒng)啟動時放入內(nèi)存,指導(dǎo)文件的空間分配。

Allocated:磁盤塊的分配記錄,即文件系統(tǒng)的物理組織。采用索引節(jié)點方式進行文件分配磁盤塊的管理。每個文件擁有唯一I節(jié)點,每個文件的屬性信息存放在該文件的I節(jié)點中。此外,目錄文件中包含該目錄下子目錄名及其I節(jié)點或文件名及其I節(jié)點,用于按目錄逐級查找,將文件名映射到I節(jié)點上。

文件操作包括:創(chuàng)建文件;修改文件;刪除文件等。

容錯性、一致性的設(shè)計。文件系統(tǒng)的恢復(fù)策略。確保文件數(shù)據(jù)的完整性、持久性。

3.3文件應(yīng)用系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計

全局數(shù)據(jù)結(jié)構(gòu)包括:文件系統(tǒng)文件最大數(shù)量;文件系統(tǒng)最大空間;文件系統(tǒng)操作提示符――字符串;文件系統(tǒng)名稱――文件名表示;文件系統(tǒng)文件指針;文件I節(jié)點――結(jié)構(gòu)體類型;文件I節(jié)點指針;文件I節(jié)點表――數(shù)組。

3.4文件函數(shù)庫設(shè)計

文件系統(tǒng)應(yīng)能永久存儲數(shù)據(jù),物理上存儲數(shù)據(jù)的是磁盤。為簡單起見,使用一個文件模擬磁盤。將文件磁盤塊大小設(shè)定為4KB,每個磁盤塊有唯一編號,每個文件以磁盤塊為單位存儲數(shù)據(jù)。

磁盤函數(shù)庫模擬真實的硬件接口,設(shè)計為函數(shù)實現(xiàn),函數(shù)接口提供良好的調(diào)試接口,為將磁盤驅(qū)動器接口映射為模擬的磁盤函數(shù)庫函數(shù)接口。磁盤函數(shù)庫設(shè)計如下函數(shù):

void creat_file_system()

函數(shù)功能:創(chuàng)建一個文件,包括文件管理數(shù)據(jù)和實體數(shù)據(jù)結(jié)構(gòu),表示文件系統(tǒng)。

void open_file_system();

函數(shù)功能:打開或創(chuàng)建文件系統(tǒng),錯誤返回error;正確則返回文件系統(tǒng)指定的文件管理數(shù)據(jù)和實體數(shù)據(jù)結(jié)構(gòu)位置指針。

int new_a_file(char *file_name)

函數(shù)功能:搜索文件系統(tǒng),查出可用空閑管理塊,存入指定文件名,返回管理數(shù)據(jù)位置指針,否則,返回-1。

int del_a_file(char *file_name)

函數(shù)功能:搜索文件系統(tǒng),查出指定文件,從文件系統(tǒng)中刪除該文件,返回該文件位置指針,否則返回-1。

void list()

函數(shù)功能:搜索文件系統(tǒng),只要文件名不為空,輸出文件名和文件長度,文件計數(shù)。

int open_a_file(char *file_name)

函數(shù)功能:搜索文件系統(tǒng),如指定文件存在,返回指定文件所在的序號。

int offset_by_i(int i)

函數(shù)功能:返回第i個文件在文件系統(tǒng)存儲空間的偏移量。

int write(char *file_name,int offset,char *str,int count)

函數(shù)功能:打開文件file_name,寫入文件,寫入文件系統(tǒng)管理塊信息。

int read(char *file_name,int offset,int count,char *str)

函數(shù)功能:打開文件file_name,讀出該文件字符串內(nèi)容。

void print_help()

函數(shù)功能:輸出系統(tǒng)文件操作提示信息,供用戶選擇。

int main()

函數(shù)功能:啟動文件系統(tǒng),進入幫助界面,用戶可以輸入各項操作代碼,循環(huán)執(zhí)行對應(yīng)文件操作,或結(jié)束系統(tǒng)運行。

合法操作包括:①創(chuàng)建文件系統(tǒng);②新建一個文件;③刪除一個文件;④顯示文件列表;⑤寫入文件;⑥輸出文件;⑦退出文件系統(tǒng)。

3.5應(yīng)用文件系統(tǒng)運行分析

測試中,查看存在的設(shè)計缺陷。如,文件系統(tǒng)中文件數(shù)量的檢測和控制;文件長度的檢測和控制;文件系統(tǒng)啟動確認等[4]。

3.6應(yīng)用文件系統(tǒng)的再設(shè)計方案

根據(jù)學(xué)生對原型系統(tǒng)的理解和掌握程度進行自行設(shè)計。測試改進方案的系統(tǒng)運行的完善性和健壯性。

4教學(xué)過程

本課程課堂授課課時為8學(xué)時,上機實踐學(xué)時為24學(xué)時。教學(xué)采用講課、上機交替進行的方式。便于學(xué)生及時把教師交付的每個任務(wù)貫徹落實、設(shè)計實現(xiàn),教師能將學(xué)生實踐中出現(xiàn)的問題,利用課堂教學(xué)及時反饋、說明、給出指導(dǎo)意見。

教師在授課期間,對設(shè)計方案的設(shè)計思想、設(shè)計方法、實現(xiàn)系統(tǒng)功能、實現(xiàn)技術(shù)及方法、編譯運行環(huán)境等進行簡要講解、說明。學(xué)生在上機實踐環(huán)節(jié)過程中,完成項目方案的設(shè)計實現(xiàn),通過接受教師檢查、驗收、答辯等環(huán)節(jié),提交實驗報告。鍛煉和提升分析,設(shè)計,文字、語言表述,實現(xiàn),工具運用等能力。

該方案教學(xué)過程可設(shè)計為三個階段。

4.1授課內(nèi)容設(shè)計

該階段完成進行系統(tǒng)開發(fā)的技術(shù)理論、程序架構(gòu)、軟硬平臺搭建等準備工作。從項目設(shè)計目標、方案設(shè)計、實施過程及要求、編程技術(shù)分析、系統(tǒng)功能等方面進行授課。指導(dǎo)學(xué)生奠定扎實基礎(chǔ),為進行下一階段的實踐作好準備。為了比較系統(tǒng)全面了解有關(guān)軟件開發(fā)的基本概念、基本過程,設(shè)計授課內(nèi)容按系統(tǒng)功能驅(qū)動的方法展開,緊密結(jié)合實現(xiàn)編程技術(shù),引導(dǎo)學(xué)生逐步系統(tǒng)了解開發(fā)一個特定應(yīng)用系統(tǒng)所必需掌握的基本概念和基本技術(shù)。

教師在8學(xué)時的授課中,首先向?qū)W生明確說明方案系統(tǒng)的功能,然后進行功能的分解,直至完成模塊的劃分,講解需要的編程技術(shù),實現(xiàn)模塊功能,學(xué)生在此基礎(chǔ)上,設(shè)計模塊內(nèi)部的算法流程,并實現(xiàn)、調(diào)試、運行軟件系統(tǒng)。

4.2實踐內(nèi)容設(shè)計

上機實踐24學(xué)時。實踐環(huán)節(jié)以課題組模式進行工作,利于互相幫助,培養(yǎng)合作能力和意識。學(xué)生以課題組為單位進行方案論證、設(shè)計、開發(fā)環(huán)境構(gòu)建、分工、單元開發(fā)、調(diào)試、系統(tǒng)運行,完成項目實踐報告的編寫。組長是項目主持人。該過程能使學(xué)生明確軟件開發(fā)的各個環(huán)節(jié),結(jié)合自身條件對每個環(huán)節(jié)進行自己的設(shè)計實現(xiàn)。課題組學(xué)生可按以下實施內(nèi)容及步驟開展工作,并按計劃接受教師的檢查和評估。

每2人自由結(jié)為一個課題組。可以均衡學(xué)生的能力,達到互助的目的。確立方案的功能及設(shè)計基本方法,設(shè)計模塊函數(shù)功能及其編程接口。

安裝開發(fā)環(huán)境、調(diào)試開發(fā)工具。對于開發(fā)使用的 C/C++語言環(huán)境及工具、函數(shù)等作必要的調(diào)試。

分析設(shè)計系統(tǒng)功能,劃分每位同學(xué)的模塊分工明細。完成各自的功能模塊設(shè)計、編碼實現(xiàn)、調(diào)試,并接受教師檢查、評估。

課題組完成系統(tǒng)集成調(diào)試。提交調(diào)試報告和系統(tǒng)使用說明書,并接受教師軟件驗收。

項目實踐上機環(huán)節(jié)的內(nèi)容可操作性強、實施要求具體、目標明確,便于對學(xué)生的研究能力、協(xié)調(diào)協(xié)作能力、軟件系統(tǒng)分析設(shè)計能力、編碼能力,解決問題能力、語言、書面表述能力等作一個綜合的培養(yǎng)、評價、考核。

5評價體系

對學(xué)生方案設(shè)計實現(xiàn)的評價,旨在通過實踐的各個環(huán)節(jié)的監(jiān)督檢查,深入了解學(xué)生的進展情況、方案實施效果、出現(xiàn)的問題等,為學(xué)生提供指導(dǎo)、建議,考核設(shè)計與實現(xiàn)結(jié)果是否達到方案目標的要求。

針對項目實踐課程的目標和特點,必須規(guī)劃、確立學(xué)生成績評價標準。否則,課程開設(shè)效果難以保證。對學(xué)生方案設(shè)計實現(xiàn)的評價,旨在通過實踐的各個環(huán)節(jié)的監(jiān)督檢查,深入了解學(xué)生的進展情況、方案實施效果、出現(xiàn)的問題等,為學(xué)生提供指導(dǎo)、建議,考核設(shè)計與實現(xiàn)結(jié)果是否達到方案目標的要求。

課程實施過程分為:課堂教學(xué),課題組完成系統(tǒng)分析設(shè)計的理解、模塊功能設(shè)計與劃分、編程實現(xiàn)與調(diào)試、軟件驗收、答辯等。

學(xué)生成績評價體系設(shè)計根據(jù)每位學(xué)生的各個部分的實施情況進行評估。學(xué)生應(yīng)提交規(guī)定格式、內(nèi)容的文檔、實驗報告,完成編碼、調(diào)試、軟件驗收,學(xué)生在階段檢查時對設(shè)計實現(xiàn)內(nèi)容進行講解、答辯。答辯對學(xué)生的系統(tǒng)總體設(shè)計模式與運行模式進行考核,確認學(xué)生是否對軟件系統(tǒng)的設(shè)計流程、運行流程及其出現(xiàn)的問題,有全面的理解。敦促學(xué)生全面系統(tǒng)地完成項目實踐整個實施計劃與實施過程。

學(xué)生成績評價體系包括文檔成績評估設(shè)計和軟件驗收答辯兩個部分。

文檔成績評估設(shè)計。組長及其組員負責(zé)組織編寫實驗報告,實驗報告的詳細格式及內(nèi)容的規(guī)范要求見附錄。其中包括分析設(shè)計、系統(tǒng)調(diào)試、系統(tǒng)運行手冊、設(shè)計實現(xiàn)的模塊和調(diào)試等內(nèi)容。根據(jù)實驗報告的可讀性、創(chuàng)新性、結(jié)構(gòu)內(nèi)容完整性、工作量等因素,評估每位學(xué)生的文檔成績。

軟件驗收答辯。根據(jù)教師提出的系統(tǒng)需求和設(shè)計方案建議,以課題組為單位進行系統(tǒng)分析設(shè)計,每人獨立進行模塊詳細設(shè)計及編碼調(diào)試工作,根據(jù)提交的模塊設(shè)計實現(xiàn)文檔和調(diào)試文檔,學(xué)生對模塊使用的數(shù)據(jù)結(jié)構(gòu)及算法設(shè)計進行講解、答辯。教師根據(jù)講解簡明、思路清楚、工作量飽滿、使用技術(shù)有獨到之處等方面給予成績評定。根據(jù)提交的實驗報告進行軟件系統(tǒng)驗收,根據(jù)系統(tǒng)的運行功能實現(xiàn)、界面設(shè)計、編碼技術(shù)運用等評估學(xué)生的驗收成績。考核分值分布如表1所示。

表1考核分值分布表

考核內(nèi)容百分比

系統(tǒng)分析設(shè)計報告10%

模塊詳細設(shè)計報告10%

原運行系統(tǒng)調(diào)試報告15%

系統(tǒng)調(diào)試報告用戶手冊15%

階段檢查25%

驗收檢查25%

6教學(xué)文檔及環(huán)境支撐

計算機設(shè)計項目實踐包括24學(xué)時的上機操作,需要完成課程軟件系統(tǒng)開發(fā)與文檔組織編寫,是以學(xué)生自主完成為主,教師指導(dǎo)為輔的實踐過程。為配合師生的需求,提高學(xué)生的工作效率,支持文檔的編寫、系統(tǒng)的設(shè)計實現(xiàn)、編碼、調(diào)試等諸多具體要求,一個方便實用的文檔及具體要求支持體系十分必要。教學(xué)文檔可提前提交給學(xué)生參考,一般包括:①授課教案;②實驗指導(dǎo)書;③應(yīng)用軟件開發(fā)環(huán)境;④課程實踐環(huán)節(jié)參考手冊;⑤網(wǎng)上教學(xué)資源平臺;⑥教學(xué)大綱;⑦實驗大綱;⑧授課計劃;⑨實驗上機學(xué)期計劃表。

7課程實踐環(huán)節(jié)參考手冊設(shè)計

特別設(shè)置一個實踐環(huán)節(jié)參考手冊,對課程設(shè)計所有環(huán)節(jié)具體要求和實施辦法作一說明。為學(xué)生方便地編寫文檔和規(guī)范地完成實施過程,提供規(guī)范文檔體系參考與指導(dǎo),使學(xué)生的成果體系完整、有據(jù)可查。

附錄一,實驗報告規(guī)范模板;附錄二,實驗任務(wù)書;附錄三,報告文檔內(nèi)容格式參考;附錄四,進度安排及成果提交;附錄五,實驗報告撰寫規(guī)范;附錄六,成績評估表。

8結(jié)語

操作系統(tǒng)技術(shù)對于大學(xué)計算機專業(yè)課體系教育的重要性勿容置疑,實踐教學(xué)對理論教學(xué)有延伸和提升的作用,其教學(xué)重要性、迫切性、科學(xué)性越來越得到國內(nèi)外同行的共識,如何將實用技術(shù)引入實踐教學(xué)

環(huán)節(jié)一直是教學(xué)中探索的重點和難點。本方案的創(chuàng)新性在于系統(tǒng)全面地設(shè)計了實踐類課程的各個環(huán)節(jié),提供了較全面的方案設(shè)計內(nèi)容,有一定的參考價值。方案具有較好的可操作性和可移植性,可供其他計算機專業(yè)課的實踐環(huán)節(jié)參考。該方案已應(yīng)用于教學(xué),對學(xué)生拓展應(yīng)用編程技術(shù),進行軟件開發(fā)具有較好的效果。

該方案具有技術(shù)實用、平臺易建、功能明確、難度適中的特點。通過方案的實施,學(xué)生系統(tǒng)軟件分析能力和應(yīng)用軟件的開發(fā)能力能得到一個全面的實踐和鍛煉。

參考文獻:

[1] 譚浩強. C語言程序設(shè)計[M]. 北京:清華大學(xué)出版社,2006(6):150-210.

[2] 盧軍. Linux0.01內(nèi)核分析與操作系統(tǒng)設(shè)計[M]. 北京:清華大學(xué)出版社,2004(6):139-198.

[3] 孟慶昌,牛欣源. 操作系統(tǒng)[M]. 2版. 北京:電子工業(yè)出版社,2009(11):183-216.

[4] 趙斌. 軟件測試技術(shù)經(jīng)典教程[M]. 北京:科學(xué)出版社,2007(5):1-59.

Research and Implementation of Programming Practice Project

NIU Xin-yuan

篇11

“信息安全導(dǎo)論”是面向計算機科學(xué)與技術(shù)專業(yè)和網(wǎng)絡(luò)工程專業(yè)學(xué)員的一門專業(yè)技術(shù)課程。隨著部隊信息化建設(shè)的迅猛發(fā)展,部隊對信息系統(tǒng)的依賴日益加重,信息安全問題日益突出,因此在利用信息化提升部隊?wèi)?zhàn)斗力的同時,必須研究信息安全的自身特點,尋找信息安全問題的解決之道。

 

本課程要求學(xué)員了解信息安全的重要性和復(fù)雜性、理解信息安全的基本概念和基本原理、掌握信息安全的基本技能和基本方法。而實驗教學(xué)的主要目的是讓學(xué)員通過實驗?zāi)軌蛘莆栈镜男畔踩雷o技能,了解系統(tǒng)存在的安全隱患,樹立牢固的安全意識,培養(yǎng)良好的安全習(xí)慣,另一方面提高實踐操作和應(yīng)用能力。

 

課程的課內(nèi)學(xué)時為32課時,課外學(xué)時即實驗學(xué)時為12學(xué)時。課程內(nèi)容基本覆蓋了信息安全領(lǐng)域所涉及的主要分支和領(lǐng)域,共包括信息安全緒論、密碼學(xué)基礎(chǔ)、計算機系統(tǒng)安全、計算機網(wǎng)絡(luò)安全、計算機應(yīng)用安全和信息系統(tǒng)安全工程六章內(nèi)容。而課外實驗由于學(xué)時有限,只能在課程內(nèi)容中進行適當(dāng)?shù)倪x擇。

 

2實驗教學(xué)內(nèi)容選擇

 

由于時間有限,應(yīng)該優(yōu)先選擇最基本、最常用的安全技術(shù)方面的實驗,并按照所需技術(shù)水平的高低進行階梯式的安排。

 

根據(jù)這一原則在整個課程中計算機系統(tǒng)安全章節(jié)、計算機網(wǎng)絡(luò)安全章節(jié)中涉及的內(nèi)容成為實驗內(nèi)容安排的重點。

 

2.1計算機系統(tǒng)安全的實驗內(nèi)容選擇

 

在計算機系統(tǒng)安全章節(jié)中的計算機操作系統(tǒng)的安全內(nèi)容成為實驗內(nèi)容的首選。計算機操作系統(tǒng)是應(yīng)用軟件同系統(tǒng)硬件的接口,其目標是高效地、最大限度地、合理地使用計算機資源。沒有系統(tǒng)的安全就沒有信息的安全。操作系統(tǒng)作為系統(tǒng)軟件中最基礎(chǔ)的部分,其安全問題的解決最為關(guān)鍵。目前操作系統(tǒng)主要分為 Windows系列的操作系統(tǒng)和類Unix的操作系統(tǒng)。雖然這些操作系統(tǒng)符合C2級安全級別,即自主安全保護和受控存儲控制,但操作系統(tǒng)仍存在不少安全漏洞,而大多數(shù)惡意代碼正是針對操作系統(tǒng)存在的安全漏洞進行攻擊,因此導(dǎo)致出現(xiàn)很多安全問題。

 

為了讓學(xué)員了解操作系統(tǒng)存在的安全漏洞以及攻擊者入侵操作系統(tǒng)的手段,加強自身的安全意識,我們設(shè)計了一個Windows 2000漏洞入侵實驗。實際上,對于大部分的安全問題,我們可以通過對操作系統(tǒng)的安全管理配置操作來進行防范。在實驗內(nèi)容中,我們選擇Windows 2000和Linux操作系統(tǒng)進行操作系統(tǒng)的安全管理配置操作的學(xué)習(xí)。

 

2.2計算機網(wǎng)絡(luò)安全的實驗內(nèi)容選擇

 

在計算機網(wǎng)絡(luò)安全章節(jié)中防火墻技術(shù)、嗅探技術(shù)和VPN技術(shù)被選擇為實驗的內(nèi)容。

 

許多來自網(wǎng)絡(luò)的遠程攻擊可以通過防火墻技術(shù)來進行防范。防火墻是在兩個網(wǎng)絡(luò)之間執(zhí)行訪問控制策略的一組硬件和軟件系統(tǒng),其目的是保護本地網(wǎng)絡(luò)的通信安全。使用防火墻進行網(wǎng)絡(luò)的安全防護是最常用的安全技術(shù)。據(jù)統(tǒng)計,全球接入因特網(wǎng)的計算機中有1/3以上處在防火墻保護之下。因此,理解防火墻的工作原理,并能根據(jù)定義的安全策略配置相應(yīng)的安全規(guī)則是學(xué)習(xí)安全技術(shù)的一個重點。

 

嗅探技術(shù)主要通過將網(wǎng)卡設(shè)置為混雜模式來接收和分析所有經(jīng)過網(wǎng)卡的數(shù)據(jù)包。而利用嗅探器竊取別人的用戶密碼和秘密信息是惡意攻擊者常用的手段。通過學(xué)習(xí)嗅探器的使用,可以使學(xué)員們了解數(shù)據(jù)包的基本結(jié)構(gòu),從而加深對后階段實驗的理解,同時增強數(shù)據(jù)包在網(wǎng)絡(luò)上傳輸時需要安全保護的意識。

 

在學(xué)習(xí)嗅探器使用的實驗中,學(xué)員已經(jīng)認識到數(shù)據(jù)包在網(wǎng)絡(luò)上傳輸?shù)牟话踩浴6鳹PN技術(shù)是實現(xiàn)網(wǎng)絡(luò)安全傳輸?shù)囊环N安全技術(shù)。VPN稱為虛擬專用網(wǎng),它是在因特網(wǎng)上實現(xiàn)的一個專用網(wǎng)絡(luò)。由于利用VPN技術(shù)構(gòu)建的虛擬網(wǎng)絡(luò)中數(shù)據(jù)包是加密傳輸?shù)模瑥亩軌虮WC信息在網(wǎng)絡(luò)傳輸?shù)臋C密性。通過學(xué)習(xí)VPN 服務(wù)的配置和連接的建立技術(shù),可以加深學(xué)員對VPN技術(shù)的理解。

 

最后,學(xué)員通過學(xué)習(xí)本門課程不斷地提高自身信息安全技術(shù)水平,并按照如圖1的階梯式實驗內(nèi)容的安排進行學(xué)習(xí),能夠了解入侵操作系統(tǒng)的典型攻擊手段、掌握主流操作系統(tǒng)的安全管理配置操作、掌握防火墻的基本配置和使用、學(xué)會嗅探工具的使用和掌握VPN服務(wù)的配置和連接。

 

3實驗內(nèi)容設(shè)計

 

根據(jù)圖1的安排,整個實驗課程的內(nèi)容包括六個實驗。每個實驗所占課時為2個課時,為了讓學(xué)員們能夠在短時間達到實驗要求,實驗內(nèi)容主要以驗證性的實驗為主,部分提高型的設(shè)計實驗為輔。驗證性的實驗內(nèi)容的實驗步驟比較詳細,力爭學(xué)員在實驗課時間內(nèi)完成所需實驗,而提高型的實驗內(nèi)容用于部分感興趣的同學(xué)在課后進一步提高技術(shù)水平。

 

3.1Windows 2000漏洞入侵的實驗內(nèi)容

 

操作系統(tǒng)存在許多安全漏洞如緩沖區(qū)溢出,很多攻擊都是針對這些漏洞進行的。此次實驗的操作系統(tǒng)選擇的是Windows 2000。實驗的主要目的是讓學(xué)員們了解典型入侵過程,提高安全意識。針對漏洞入侵的典型過程如圖2。在入侵典型過程中安裝后門和清除入侵痕跡不屬于必備環(huán)節(jié),而是較高級的攻擊者采取的方法。 此次實驗的主要內(nèi)容是設(shè)計兩個可驗證步驟的漏洞入侵過程,讓學(xué)員可以在實驗課時內(nèi)按照實驗步驟完成實驗。這兩個入侵過程分別為:1433溢出漏洞攻擊和弱口令入侵。第一個實驗包括了典型入侵過程的主要環(huán)節(jié)。第二個實驗進一步提高學(xué)習(xí)內(nèi)容,包括了安裝后門的環(huán)節(jié)。

 

3.2操作系統(tǒng)的安全配置實驗內(nèi)容

 

針對攻擊者的攻擊,實際上可以通過對操作系統(tǒng)進行安全管理配置的操作來進行防范。操作系統(tǒng)的安全配置實驗包括Windows的安全管理配置和Linux的安全管理配置兩次實驗。

 

這兩次實驗的具體操作雖然不同,但實驗的內(nèi)容是相同的。每次的實驗內(nèi)容包括三部分:系統(tǒng)用戶管理、系統(tǒng)服務(wù)管理和系統(tǒng)安全配置。

 

多用戶的操作系統(tǒng)通過將用戶進行分組的管理,每組賦予不同的權(quán)限,來限制用戶對系統(tǒng)資源的使用,從而防止非授權(quán)用戶進行非法操作。通過系統(tǒng)用戶管理的學(xué)習(xí),學(xué)員不僅可以掌握如何增加和刪除用戶,而且還可以學(xué)會如何修改用戶權(quán)限。

 

由于針對操作系統(tǒng)的漏洞進行攻擊是攻擊者的主要手段,因此操作系統(tǒng)應(yīng)遵循最小特權(quán)原則,盡可能關(guān)閉不需要的服務(wù)。通過系統(tǒng)服務(wù)管理,學(xué)員可以知道如何根據(jù)需求關(guān)閉特定的服務(wù)和端口。

 

為了防御攻擊,操作系統(tǒng)還可以進行專門的安全配置。審核策略就是其中的一項重要的功能。審核策略可以對特定事件如登陸失敗的事件進行日志記錄。系統(tǒng)管理員通過對日志記錄進行分析可以對攻擊者的攻擊行為進行事后追蹤。同時,管理員還可以發(fā)現(xiàn)攻擊者的不良企圖,從而加強對系統(tǒng)的防護。

 

3.3嗅探工具Sniffer的使用的實驗內(nèi)容

 

利用嗅探器竊取別人的用戶密碼和秘密信息是惡意攻擊者常用的手段。此實驗的目的是通過學(xué)習(xí)典型嗅探器sniffer的使用了解數(shù)據(jù)包的結(jié)構(gòu),加深學(xué)員對后階段實驗的理解,并增強學(xué)員對數(shù)據(jù)包在網(wǎng)絡(luò)傳輸要進行保護的安全意識。

 

整次實驗包括如何利用嗅探器sniffer對報文進行捕獲、解碼和編寫報文的內(nèi)容。其中報文捕獲和解碼是基本學(xué)習(xí)內(nèi)容,而編寫報文為提高內(nèi)容。

 

報文捕獲的實驗內(nèi)容如下:

 

利用sniffer工具捕獲指定目標機發(fā)出的所有數(shù)據(jù)包。

 

利用sniffer分析捕獲的報文。讓學(xué)員兩人一組:一人在目標機上登錄某網(wǎng)站并輸入用戶名和密碼;一人捕獲其發(fā)出的數(shù)據(jù)包并分析出用戶名和密碼。

 

報文解碼的實驗內(nèi)容包括熟悉各種協(xié)議報文結(jié)構(gòu)并對捕獲的IP報文主要是報文頭部的各種信息進行分析。

 

編寫報文的實驗內(nèi)容是利用sniffer提供的報文編輯功能,自行編寫一個IP報文并發(fā)送到合作伙伴的目標機上,并由合作伙伴捕獲進行分析。

 

3.4防火墻iptables的啟用與配置的實驗內(nèi)容

 

使用防火墻是防范攻擊者攻擊的一種最常用的安全技術(shù)。此實驗的目的是通過啟動配置linux系統(tǒng)下的防火墻iptables,理解防火墻的工作原理,并能根據(jù)定義的安全策略配置相應(yīng)的安全規(guī)則。

 

此次實驗需要兩臺機器,可驗證的實驗步驟如下:

 

(1) 一臺機器啟動防火墻iptables,充當(dāng)服務(wù)器。

 

(2) 服務(wù)器清空防火墻的過濾規(guī)則表。

 

(3) 另一臺機器充當(dāng)客戶機,使用掃描器nmap對服務(wù)器進行掃描,發(fā)現(xiàn)其開放的服務(wù),并使用其提供的服務(wù)。

 

(4) 服務(wù)器配置報文過濾表使得客戶機不能訪問服務(wù)器提供的任何服務(wù)。

 

(5) 客戶機再次訪問服務(wù)器,已不能使用其提供的服務(wù)。

 

3.5VPN服務(wù)器配置與連接的實驗內(nèi)容

 

VPN技術(shù)是在因特網(wǎng)上構(gòu)建的虛擬專用網(wǎng)絡(luò)。它通過一套復(fù)雜的協(xié)議來保證數(shù)據(jù)包在網(wǎng)絡(luò)上進行安全的傳輸。此實驗的目的就是通過對學(xué)習(xí)VPN服務(wù)器的配置和連接建立來加深學(xué)員對VPN概念的理解。

 

實驗內(nèi)容選擇學(xué)習(xí)VPN中最常用的一種訪問連接方式——遠程訪問連接方式。通過虛擬專用網(wǎng)的遠程訪問方式,VPN客戶端可以通過IP網(wǎng)絡(luò)(例如因特網(wǎng))與充當(dāng)VPN服務(wù)器的遠程訪問服務(wù)器建立虛擬點對點連接。這種方式最適用于公司內(nèi)部經(jīng)常有流動人員遠程辦公的情況。

 

可驗證的實驗步驟包括:

 

(1) 配置和啟動Windows 2000 Server下的VPN服務(wù)器。

 

(2) 授予用戶通過VPN連接服務(wù)器的權(quán)限。

 

(3) 授權(quán)用戶與VPN服務(wù)器建立VPN連接。

 

4教學(xué)效果

 

信息安全導(dǎo)論實驗課程的每次實驗都需要提交實驗報告來考察實驗教學(xué)的效果。從提交的實驗報告來看,所有學(xué)員都在既定時間內(nèi)完成了實驗規(guī)定的基本內(nèi)容,而部分學(xué)員在課外時間完成了提高部分的內(nèi)容。信息安全導(dǎo)論課程的總評分中筆試占70%,實驗成績占30%。整個課程的成績在良好以上的學(xué)員占 30%,中以上的學(xué)員占80%,達到預(yù)期目標。

 

篇12

該精品課的創(chuàng)新點主要有以下幾點:

提高學(xué)生創(chuàng)新性培養(yǎng)。該精品課是以當(dāng)前嵌入式技術(shù)的主流方向和技術(shù)特點為主要內(nèi)容,具有技術(shù)先進、涉及領(lǐng)域?qū)挼忍攸c。通過本課程學(xué)習(xí),啟發(fā)學(xué)生的創(chuàng)新能力,將新技術(shù)應(yīng)用到不同領(lǐng)域。對此,我們嘗試采取了相應(yīng)的考試方法,要求學(xué)生期末遞交實驗報告及創(chuàng)新課題立項報告及閉卷考卷,綜合評定成績。

加強學(xué)生的實踐能力培養(yǎng)。本課程的學(xué)時32 學(xué)時;講課16學(xué)時;實驗16學(xué)時。從學(xué)時安排加強實驗環(huán)節(jié),加強學(xué)生動手能力鍛煉。提供學(xué)生良好的實驗條件及設(shè)備。

把教學(xué)內(nèi)容與各種競賽緊密配合。使學(xué)生能把學(xué)來的內(nèi)容盡快地應(yīng)用到競賽實踐中,提高學(xué)生的學(xué)習(xí)興趣。

增強學(xué)生的合作能力、團隊精神。通過本課程學(xué)習(xí)可以使學(xué)生掌握教學(xué)內(nèi)容,另外也為學(xué)生參加各種競賽提供良好基礎(chǔ)。我們在此課的基礎(chǔ)上組織興趣小組活動。為選拔組隊參加各種競賽提供基礎(chǔ)。學(xué)生通過活動提高了合作能力及團隊精神。

進一步提高學(xué)生的交流能力、與人交往能力。通過幾次競賽中學(xué)生的表現(xiàn),我們發(fā)現(xiàn)學(xué)生的表達能力、溝通能力欠佳。盡管有好的創(chuàng)意,但不能很好地展示給聽眾。所以,我們通過報告問答等形式加強學(xué)生表現(xiàn)力。

教學(xué)內(nèi)容與世界知名大學(xué)同步。積極跟進世界知名大學(xué)教材及課件內(nèi)容,經(jīng)常與知名大學(xué)聯(lián)絡(luò)交流,參加各種高層次學(xué)術(shù)活動,把最新技術(shù)引入教學(xué)內(nèi)容。

精品課程建設(shè)實施辦法

教學(xué)內(nèi)容與最新技術(shù)同步。始終保持教學(xué)內(nèi)容不斷更新,緊跟當(dāng)前嵌入式技術(shù)的主流方向和技術(shù)特點,不斷更新教學(xué)內(nèi)容及教學(xué)軟件包內(nèi)容。注重教學(xué)內(nèi)容的寬口徑、基礎(chǔ)性及創(chuàng)新性人才的培養(yǎng)。

教學(xué)方法特色鮮明,形式多樣。充分利用多媒體技術(shù)、網(wǎng)絡(luò)技術(shù),在網(wǎng)上提供教學(xué)多媒體課件及相關(guān)參考文件,便于學(xué)生學(xué)習(xí)。在課堂教學(xué)之外,組織學(xué)生參加課外興趣小組,從中選拔優(yōu)秀學(xué)生參加各種全國、亞太及全球性的嵌入式系統(tǒng)設(shè)計大賽,提高和激發(fā)學(xué)生學(xué)習(xí)的積極性、創(chuàng)造性。實驗內(nèi)容具有基礎(chǔ)性和創(chuàng)造性。

媒體課件及教材系統(tǒng)化。幾年來不斷更新教學(xué)內(nèi)容,不斷完善本科生、碩士生及不同層次的教學(xué)課件,已經(jīng)有兩本相應(yīng)教材出版。

不斷完善教學(xué)實踐基地建設(shè)。進一步加強教學(xué)實踐環(huán)節(jié)基地建設(shè),務(wù)求實效,把有限資金合理使用。擴大學(xué)生直接參與的范圍及時間,做到每人一套獨立完成,提高獨立工作能力。

不斷加強與著名企業(yè)之間的聯(lián)系。在鞏固與原有大型企業(yè)合作的基礎(chǔ)上,進一步加深合作范圍,派出實習(xí)學(xué)生,加強合作科研,為進一步改進教學(xué)內(nèi)容提供充實材料。

做好精品課教材建設(shè)。與精品課配套的教材已申報國家“十一五”規(guī)劃教材。教材暫定名《嵌入式操作系統(tǒng)實用教材-基于Windows CE》。該教材在多年教學(xué)課件基礎(chǔ)上加以改進編寫,教材內(nèi)容與課件內(nèi)容相配套,便于學(xué)生閱讀。

建設(shè)好教學(xué)網(wǎng)站。在原有教學(xué)網(wǎng)站的基礎(chǔ)上,進一步充實教學(xué)內(nèi)容,增設(shè)習(xí)題、考題、教學(xué)課件、試驗指導(dǎo)書、實驗報告及教學(xué)相關(guān)軟件、硬件資源。

精品課程相關(guān)教材介紹

精品課程相關(guān)教材正在編寫中,該教材已申報國家“十一五”規(guī)劃教材。教材暫定名《嵌入式操作系統(tǒng)實用教材-基于Windows CE》。

該教材是為電子類和非計算機本科學(xué)生學(xué)習(xí)嵌入式操作系統(tǒng)編寫的。教材本著實用性強、內(nèi)容簡練、通俗易懂原則,以Windows CE為例,介紹嵌入式操作系統(tǒng)原理、嵌入式應(yīng)用軟件的設(shè)計方法及經(jīng)驗。

學(xué)生在學(xué)習(xí)閱讀本書之前,了解計算機程序設(shè)計的基本概念,熟悉C 語言程序設(shè)計、對計算機基本原理有初步了解即可。

教材主要章節(jié):

第一章 嵌入式系統(tǒng)概述

第二章 Windows CE系統(tǒng)結(jié)構(gòu)

第三章 模型、進程和線程

第四章 內(nèi)存管理

第五章 存儲管理

第六章 設(shè)備管理

第七章 用戶界面與圖形子系統(tǒng)

第八章 應(yīng)用程序設(shè)計

第九章 Windows CE 6.0簡介

第十章 VxWorks簡述

第十一章 PXA255 概述

主講教師個人簡歷及成果

王金剛,1970-2005年在天津大學(xué)電信學(xué)院任助教、講師、教授。

擔(dān)任過課程:

本科生主講課程:電路分析基礎(chǔ),專業(yè)英語、電子線路的計算機輔助分析、嵌入式系統(tǒng)等;

2002-2005年擔(dān)任本科生主講課程“嵌入式實時系統(tǒng)原理”課程(100人選修/每年);

2006年擔(dān)任本科生主講課程“嵌入式實時系統(tǒng)原理”課程 (120人必修)+(100人選修)。

碩士生課程:2002-2005年開始擔(dān)任碩士生主講課程“嵌入式實時系統(tǒng)原理及應(yīng)用”(30人選修/每年)。近五年來主要從事“嵌入式系統(tǒng)原理及應(yīng)用”的教學(xué)內(nèi)容、教學(xué)方法研究,尤其對不同層次學(xué)生的教學(xué)內(nèi)容選取,優(yōu)秀本科學(xué)生的選拔及本科學(xué)生參加各種嵌入式系統(tǒng)大賽的培訓(xùn)等作了深入研究。

負責(zé)組織學(xué)生參加了Intel支持的“2004年嵌入式系統(tǒng)專題電子大賽”,并獲得了二等獎和三等獎。

負責(zé)組織學(xué)生參加了Intel支持的“2004年嵌入式系統(tǒng)專題電子大賽”,并受聘為大賽評委。

負責(zé)組織學(xué)生參加了“2005年微軟支持的嵌入式系統(tǒng)挑戰(zhàn)賽”。

2006年帶隊參加“微軟嵌入式大學(xué)生競賽”,進入世界前三十名,到美國西雅圖參加決賽。

近五年主持了六部關(guān)于嵌入式系統(tǒng)的編著、譯著及教材的編寫,在2003-2004年間已陸續(xù)出版。

有六篇論文被EI收錄、五篇論文被ISTP收錄。

近五年關(guān)于教育教學(xué)的立項及成果:

1.2005年度“教育部-微軟精品課程”建設(shè)項目立項;

2.國家發(fā)改委-微軟聯(lián)合推出的“國家發(fā)改委-微軟嵌入式系統(tǒng)教學(xué)包”嵌入式系統(tǒng)原理部分編寫(微軟-國家發(fā)改委),2005年;

3.微軟“嵌入式操作系統(tǒng)Windows CE”優(yōu)秀課程建設(shè)”項目(微軟),2004年;

4.“嵌入式系統(tǒng)教材建設(shè)立項”教材清華大學(xué)出版社2003年已出版(天津大學(xué)立項),2003年;

5.“嵌入式系統(tǒng)課程建設(shè)”項目(天津大學(xué)立項),2003年;

6.獲得Intel公司的“Intel大學(xué)計劃”支持,2003年;

7.獲得美國風(fēng)河公司的“大學(xué)伙伴”支持,2002年;

8.“電路分析基礎(chǔ)雙語教學(xué)多媒體教學(xué)軟件”項目(天津大學(xué)立項),2003年;

9.“電路分析基礎(chǔ)雙語教學(xué)”項目(天津大學(xué)立項),2003年;

篇13

1引言

“操作系統(tǒng)原理”課程的重要性可以用Avi Silberschatz在其經(jīng)典教材《Operating Systems Concepts》中的描述來概括:“操作系統(tǒng)是任何計算機系統(tǒng)的基本組成部分,因而操作系統(tǒng)課程也是任何計算機科學(xué)相關(guān)教育的基本組成部分”。該課程主要講述通用操作系統(tǒng)應(yīng)該具備的功能、工作原理及相關(guān)算法。應(yīng)該說課程內(nèi)容并不艱深晦澀,但該課程卻是一門公認的難教、難學(xué)的課程。難教的原因是其內(nèi)容多且散、理論性強又抽象。難學(xué)的原因是教學(xué)內(nèi)容看不見摸不到,學(xué)生難以理解掌握。

在理論教學(xué)時以學(xué)生常用的操作系統(tǒng)如Windows、Linux等作為案例進行分析對輔助學(xué)生掌握課程內(nèi)容有一定作用。但由于理論課時有限,教學(xué)內(nèi)容多,Windows、Linux等案例的分析很難展開;而且案例分析時學(xué)生看到的主要是程序代碼,不能直觀的反映教學(xué)內(nèi)容。因此設(shè)計直觀、合理的課程實驗成為保證“操作系統(tǒng)原理”課程教學(xué)效果的重要手段。

國內(nèi)外操作系統(tǒng)課程實驗教學(xué)采用的系統(tǒng)有Minix、Nachos、ToyOS、Linux等。Minix、Nachos、ToyOS均不是通用操作系統(tǒng),而是為教學(xué)目的而開發(fā)的,功能不完善,存在較多BUG,安裝復(fù)雜,不宜作為操作系統(tǒng)課程實驗平臺。Linux是一個完整的通用操作系統(tǒng),且開放源代碼,是一個可行的實驗平臺。但目前大多數(shù)高校機房由于承擔(dān)了多門課程的上機任務(wù),往往安裝的是Windows操作系統(tǒng)。若同時安裝雙系統(tǒng)則給機房管理造成困難,因此Linux的實驗平臺在建設(shè)上也存在困難。

Windows作為目前使用最普遍的操作系統(tǒng),以之作為實驗平臺可極大的激發(fā)學(xué)生的學(xué)習(xí)興趣。但Windows代碼不公開,給課程實驗設(shè)置帶來困難。作為微軟共享源代碼計劃的一部分,微軟了WAP(Windows Academic Program),提供了一套簡單但完整的操作系統(tǒng)內(nèi)核源代碼,老師和學(xué)生可以更清晰的了解Windows內(nèi)核工作機制,并可以動手對之進行修改或添加新的底層功能,成為一個理想的操作系統(tǒng)課程實驗平臺。

在微軟亞洲研究院資助下,我們開始了WAP在本科“操作系統(tǒng)原理”課程實驗教學(xué)中的應(yīng)用探索。本文以學(xué)生對實驗教學(xué)內(nèi)容的興趣及需求分析為依據(jù),介紹了基于WAP的“操作系統(tǒng)原理”課程實驗教學(xué)的方案設(shè)計和內(nèi)容設(shè)計。應(yīng)用WAP后,學(xué)生對“操作系統(tǒng)原理”課程實驗興趣大大增加,學(xué)習(xí)的主動性、動手能力得到提高,也更深刻的理解掌握了課程內(nèi)容。

2學(xué)生興趣與需求調(diào)研

目前各高校普遍開設(shè)了“操作系統(tǒng)原理”課程實驗,實驗內(nèi)容的設(shè)置也各有不同,為切實了解學(xué)生對于“操作系統(tǒng)原理”課程實驗的興趣與需求,從而有針對性的設(shè)置實驗平臺及實驗內(nèi)容,在2008年對正在開設(shè)“操作系統(tǒng)原理”課程的210名本科生進行了問卷調(diào)查,同樣的調(diào)查也于2009年在部分本科生中開展。

圖1是學(xué)生希望使用的實驗平臺情況。不出意料,絕大多數(shù)學(xué)生(93%)希望使用Windows作為實驗平臺,這與學(xué)生平時的使用經(jīng)歷有關(guān),100%的學(xué)生在日常生活中就使用了Windows,所以他們也希望“操作系統(tǒng)原理”課程實驗選擇熟悉的Windows平臺。雖然有4%的學(xué)生希望使用Linux或Unix,3%的學(xué)生希望使用Nachos或其它系統(tǒng),但這些學(xué)生也比較熟悉Windows。此外,調(diào)查中,學(xué)生也普遍表現(xiàn)出對了解Windows的結(jié)構(gòu)、工作原理的興趣。因此,以Windows作為課程實驗平臺,符合了學(xué)生的意愿,能夠最大程度的激發(fā)他們的學(xué)習(xí)興趣,保證教學(xué)效果。

實驗的目的是輔助學(xué)生形象深刻的理解課程重點,內(nèi)容應(yīng)涵蓋課程的主要知識點。實驗類型根據(jù)實驗的難度、知識要求及對學(xué)生的輔助作用的不同,一般可分為驗證性實驗、設(shè)計性實驗和綜合性實驗。為了達到實驗效果,應(yīng)該設(shè)置不同難度的實驗以使學(xué)生循序漸進的掌握知識。 圖2是學(xué)生希望的實驗難度情況。有過半的學(xué)生希望實驗?zāi)軌蛴幸欢ǖ碾y度,其中有10%的學(xué)生希望能有難度較大的實驗,只有16%的學(xué)生希望實驗?zāi)芎唵巍_@一結(jié)果對不同類型實驗的設(shè)置有指導(dǎo)意義,考慮到大多數(shù)學(xué)生希望實驗難度在中等以上,即使是驗證性實驗也必須考慮實驗內(nèi)容的設(shè)置要保證不能太簡單;同時設(shè)計性實驗和綜合性實驗可以有一定的難度,但只有10%的學(xué)生希望實驗有較大難度,因此,難度也不能太大。

3WAP的應(yīng)用

依據(jù)對學(xué)生的問卷調(diào)查結(jié)果,決定選擇Windows作為課程實驗平臺。但Windows代碼不公開,給課程實驗設(shè)置帶來困難。微軟的WAP(Windows Academic Program)為解決這一困難提供了可行的途徑。因此,最終確定基于WAP設(shè)計實驗教學(xué)方案和內(nèi)容設(shè)計,開展Windows平臺下的“操作系統(tǒng)原理”課程實驗教學(xué)的探索。

3.1WAP介紹

WAP是微軟公司的一項讓學(xué)生通過閱讀Windows內(nèi)核源碼來學(xué)習(xí)“操作系統(tǒng)原理”的項目,它分為三部分:

(1) 課程資源包CRK(Curriculum Resource Kit)

CRK是一套Windows系統(tǒng)教學(xué)資源包,包括大量驗證性實驗、實驗工具及Windows課程講義。這些資源均以Windows XP和Windows 2003為基礎(chǔ)。CRK基本覆蓋了操作系統(tǒng)課程的所有知識點。但主要提供驗證性實驗。

(2)Windows研究內(nèi)核WRK(Windows Research Kernel)

WRK是微軟為高校操作系統(tǒng)課程提供的可修改和跟蹤的操作系統(tǒng)實驗教學(xué)平臺。它給出了Windows內(nèi)核的大部分代碼,可以對其進行修改、編譯,并且可以用這個內(nèi)核啟動Windows操作系統(tǒng)。這一平臺是進行設(shè)計性或綜合性實驗的理想平臺。

(3) 項目實驗工具ProjectOZ

一套探索實際操作系統(tǒng)運行情況的工具,其實是一個運行在用戶模式下的內(nèi)核接口程序。在這個環(huán)境下學(xué)生可以查看實際運行的Windows的各種數(shù)據(jù)結(jié)構(gòu)、處理過程等。同時提供了一個運行于其上的簡單但完整的示例操作系統(tǒng)BasicOZ。全部程序以C和匯編語言源碼形式提供。

3.2實驗教學(xué)內(nèi)容設(shè)計

以WAP為平臺,對“操作系統(tǒng)原理”課程實驗教學(xué)的方案和內(nèi)容進行了設(shè)計。實驗教學(xué)共計32學(xué)時,主要希望達到這樣一些目的:

理解并掌握現(xiàn)代操作系統(tǒng)的工作原理和機制;

會分析和解讀Windows操作系統(tǒng)內(nèi)核源代碼;

能從Windows內(nèi)核源代碼級修改和擴充操作系統(tǒng)功能。

根據(jù)難度的不同,每個實驗或由學(xué)生單獨進行或分組進行。為使學(xué)生重視,實驗成績占課程成績30%,并且每個實驗要求學(xué)生在給老師演示結(jié)果的同時提交實驗報告和設(shè)計文檔。實驗教學(xué)內(nèi)容設(shè)置了8個必做實驗和一定數(shù)量的自選實驗,覆蓋了“操作系統(tǒng)原理”課程的基本內(nèi)容,并具有不同的難度。必做實驗如表1所示。

4結(jié)束語

以WAP作為“操作系統(tǒng)原理”課程實驗教學(xué)平臺已有兩個學(xué)期。結(jié)果表明WAP平臺極大的吸引了學(xué)生的興趣,學(xué)生有很大的熱情去閱讀分析Windows的源代碼,并嘗試進行修改。大部分課堂較認真的學(xué)生基本能獨立的完成所有實驗。由于WAP平臺所提供資源很豐富,下一步將探索在WAP下開設(shè)更多難度適中、學(xué)生有興趣的實驗;另外也將研究基于WAP平臺開展“操作系統(tǒng)原理”課程設(shè)計。

參考文獻:

[1] 黃廷輝,王宇英,崔更中.“操作系統(tǒng)”課程實踐教學(xué)的研究與實踐[J]. 計算機教育,2007(11):18-20.