亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Linux的操作系統(tǒng)課程網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境設(shè)計(jì)

        2008-12-31 00:00:00張新有
        計(jì)算機(jī)教育 2008年10期

        文章編號(hào):1672-5913(2008)10-0036-03

        摘要:本文結(jié)合校園網(wǎng)以及“操作系統(tǒng)”課程實(shí)驗(yàn)環(huán)節(jié)的特點(diǎn),提出了構(gòu)建基于校園網(wǎng)和Linux平臺(tái)的開(kāi)放式操作系統(tǒng)課程實(shí)驗(yàn)系統(tǒng),并對(duì)該系統(tǒng)的功能、設(shè)計(jì)及實(shí)現(xiàn)進(jìn)行了詳細(xì)的說(shuō)明。實(shí)際應(yīng)用證明該系統(tǒng)使用方便,對(duì)學(xué)生理解和掌握操作系統(tǒng)原理有一定幫助。

        關(guān)鍵詞:校園網(wǎng);實(shí)驗(yàn)環(huán)境;操作系統(tǒng);Linux;服務(wù)器

        中圖分類號(hào):G642

        文獻(xiàn)標(biāo)識(shí)碼:B

        1 引言

        操作系統(tǒng)是信息技術(shù)相關(guān)專業(yè)的必修課,其重要性不言而喻。該課程的主要內(nèi)容是講述操作系統(tǒng)的工作原理以及相關(guān)算法,由于其抽象,難以理解,學(xué)生學(xué)習(xí)起來(lái)十分吃力。開(kāi)發(fā)操作系統(tǒng)實(shí)驗(yàn)教學(xué)系統(tǒng)是提高操作系統(tǒng)教學(xué)水平有效和必要的手段。

        國(guó)內(nèi)外操作系統(tǒng)實(shí)驗(yàn)課程早期多以TANENBAUM的Minix為例。由于Minix系統(tǒng)僅僅是一個(gè)教學(xué)用的操作系統(tǒng),不是一個(gè)通用操作系統(tǒng),功能不完善,安裝復(fù)雜。而Windows由于是一個(gè)“黑匣子”,本身不適于做操作系統(tǒng)課程的實(shí)驗(yàn)環(huán)境。

        Linux操作系統(tǒng)由于其開(kāi)放源代碼,結(jié)構(gòu)簡(jiǎn)單清晰,而且是一個(gè)完整的通用操作系統(tǒng),因此越來(lái)越多地用于操作系統(tǒng)實(shí)驗(yàn)環(huán)境建設(shè),目前已經(jīng)多本此類實(shí)驗(yàn)教材出版。但由于目前大多數(shù)學(xué)校機(jī)房中安裝的是Windows操作系統(tǒng),同時(shí)安裝兩個(gè)系統(tǒng)將給機(jī)房的管理造成困難,對(duì)機(jī)房的管理人員也提出了更高的要求;而僅僅安裝Linux操作系統(tǒng)又會(huì)造成計(jì)算機(jī)資源浪費(fèi)。因此基于Linux的操作系統(tǒng)實(shí)驗(yàn)在建設(shè)上也有一定困難。

        本文的目的就是在不改變用戶計(jì)算機(jī)大多采用Windows系統(tǒng)的前提下,通過(guò)提供一個(gè)Linux服務(wù)器,構(gòu)建一個(gè)基校園網(wǎng)的、開(kāi)放的操作系統(tǒng)教學(xué)實(shí)驗(yàn)環(huán)境。

        2 建設(shè)基于Linux的操作系統(tǒng)課程網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境的可行性

        傳統(tǒng)的實(shí)驗(yàn)課程要求學(xué)生在同一時(shí)間、同一地點(diǎn)(機(jī)房)完成上機(jī)實(shí)驗(yàn)。即使開(kāi)放實(shí)驗(yàn),也要求學(xué)生在指定機(jī)房完成實(shí)驗(yàn)。而隨著計(jì)算機(jī)的普及以及校園網(wǎng)深入到學(xué)生宿舍,構(gòu)建基于Linux的操作系統(tǒng)網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境成為可能:

        (1) 計(jì)算機(jī)相關(guān)專業(yè)的學(xué)生大多都有自己的計(jì)算機(jī),而且都接入校園網(wǎng)。

        (2) 各高校的校園網(wǎng)大多都是千兆骨干,百兆到桌面。而目前校園網(wǎng)上的應(yīng)用相對(duì)較少,主要用于學(xué)校的各項(xiàng)管理工作,如辦公系統(tǒng),教務(wù)管理等。

        (3) 建設(shè)基于校園網(wǎng)的“虛擬實(shí)驗(yàn)室”,使校園網(wǎng)盡可能為教學(xué)服務(wù),可在一定程度減少網(wǎng)絡(luò)對(duì)學(xué)生學(xué)習(xí)造成的負(fù)面影響。

        (4) 基于校園網(wǎng)的實(shí)驗(yàn)環(huán)境建設(shè)及其管理應(yīng)該是今后高校實(shí)驗(yàn)室建設(shè)的一個(gè)重要方向。通過(guò)校園網(wǎng),利用學(xué)生自己的計(jì)算機(jī),可以形成一個(gè)覆蓋整個(gè)校園的“虛擬實(shí)驗(yàn)室”。

        (5) Linux具有完善的網(wǎng)絡(luò)服務(wù),默認(rèn)集成完善的C/C++編程環(huán)境。

        可以看出,建設(shè)基于Linux的操作系統(tǒng)網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境是切實(shí)可行的。這種實(shí)驗(yàn)環(huán)境造價(jià)低廉,學(xué)生使用方便,同時(shí)也可為其他課程的基于網(wǎng)絡(luò)的實(shí)驗(yàn)環(huán)境建設(shè)提供方法和經(jīng)驗(yàn)。

        3 系統(tǒng)功能設(shè)計(jì)

        本系統(tǒng)的主要任務(wù)是構(gòu)建一個(gè)Linux教學(xué)管理服務(wù)器;它不僅要向用戶提供Web登錄賬號(hào),而且要開(kāi)放Telnet賬號(hào),要有完善的教學(xué)管理功能,以方便老師的實(shí)驗(yàn)教學(xué)管理。參考目前現(xiàn)有的其他課程教學(xué)管理系統(tǒng)的功能,同時(shí)結(jié)合操作系統(tǒng)課程實(shí)驗(yàn)的特點(diǎn),本教學(xué)管理系統(tǒng)主要分為教師端,學(xué)生端和管理員端三部分。

        3.1教師端功能

        教師端程序相對(duì)復(fù)雜,主要具備如下功能:

        ① 教學(xué)班創(chuàng)建與刪除

        根據(jù)目前各學(xué)校學(xué)生選課流程,學(xué)生首先要在教務(wù)管理系統(tǒng)上選課。本系統(tǒng)首先要實(shí)現(xiàn)與教務(wù)選課系統(tǒng)方便有效地結(jié)合,將教務(wù)系統(tǒng)的選課名單導(dǎo)入本教學(xué)管理系統(tǒng)。

        由于教務(wù)系統(tǒng)保存了學(xué)校全部學(xué)生的成績(jī)檔案,安全性要求較高,通常不會(huì)向網(wǎng)絡(luò)用戶提供編程接口(如Web Service接口)。較簡(jiǎn)單的辦法就是通過(guò)復(fù)制方式將選課名單粘貼成一個(gè)文本數(shù)據(jù)庫(kù)文件,每個(gè)學(xué)生占一行,各屬性字段用空格分開(kāi)。再用編程方式將文本數(shù)據(jù)庫(kù)文件導(dǎo)入本實(shí)驗(yàn)教學(xué)管理系統(tǒng)。在導(dǎo)入過(guò)程中,系統(tǒng)自動(dòng)給每個(gè)用戶創(chuàng)建Web賬號(hào)。Telnet賬號(hào)可以班為單位單獨(dú)添加和刪除,也可和Web賬號(hào)一同創(chuàng)建。

        在學(xué)期教學(xué)完成后,教師可以刪除該教學(xué)班。

        ② 賬號(hào)管理

        主要完成個(gè)別學(xué)生的Web賬號(hào)及telnet賬號(hào)的創(chuàng)建,恢復(fù)與刪除。在選課過(guò)程中,經(jīng)常會(huì)出現(xiàn)學(xué)生補(bǔ)選該課程或刪除該課程,以及部分學(xué)生忘記自己的密碼等問(wèn)題。

        ③ 作業(yè)管理

        此功能主要包括教師通過(guò)Web方式布置作業(yè),管理學(xué)生上傳的作業(yè)以及對(duì)學(xué)生通過(guò)telnet登錄完成的作業(yè)進(jìn)行統(tǒng)計(jì)。其中教師在布置作業(yè)時(shí)可以指明該作業(yè)是否要求學(xué)生通過(guò)網(wǎng)絡(luò)上傳結(jié)果。若可以上傳,老師還可以對(duì)學(xué)生上傳的作業(yè)進(jìn)行評(píng)分。Telnet作業(yè)統(tǒng)計(jì)功能可以對(duì)學(xué)生通過(guò)Telnet登錄完成的作業(yè)數(shù)量及其屬性進(jìn)行統(tǒng)計(jì)。

        ④ 公告發(fā)布功能和教學(xué)答疑功能

        3.2學(xué)生端功能

        學(xué)生端的功能比較簡(jiǎn)單,主要包括Web賬號(hào)密碼修改,查看本系統(tǒng)中自己的教學(xué)班,作業(yè)下載與上傳,教案下載,Telnet連接以及使用答疑系統(tǒng)。

        3.3管理員端功能

        管理員主要完成教師賬號(hào)管理,公告信息管理,數(shù)據(jù)庫(kù)管理以及其他如IP地址、信息過(guò)濾等管理。

        4 數(shù)據(jù)庫(kù)設(shè)計(jì)

        本系統(tǒng)基于Linux平臺(tái),采用Apache+PHP+Mysql作為開(kāi)發(fā)環(huán)境。

        根據(jù)系統(tǒng)要求的功能,所設(shè)計(jì)的數(shù)據(jù)庫(kù)OSnet中共有12個(gè)表,分別為:管理員數(shù)據(jù)表、教師數(shù)據(jù)表、學(xué)生數(shù)據(jù)表、課程數(shù)據(jù)表、實(shí)驗(yàn)項(xiàng)目數(shù)據(jù)表、選課數(shù)據(jù)表、上傳作業(yè)數(shù)據(jù)表、課程資料數(shù)據(jù)表、公告數(shù)據(jù)表、留言薄數(shù)據(jù)表、相關(guān)資料數(shù)據(jù)表和實(shí)驗(yàn)時(shí)間安排表。

        上述12個(gè)表中,部分表是為了擴(kuò)充系統(tǒng)功能設(shè)計(jì)的,并非基于Linux的操作系統(tǒng)課程實(shí)驗(yàn)系統(tǒng)所必須的。這里僅列出課程數(shù)據(jù)表結(jié)構(gòu)(如表1):

        表1 課程數(shù)據(jù)表結(jié)構(gòu)

        5 系統(tǒng)主要功能實(shí)現(xiàn)

        用戶通過(guò)系統(tǒng)的登錄頁(yè)面輸入用戶信息后,依據(jù)用戶類型的不同在不同的數(shù)據(jù)表里驗(yàn)證后,調(diào)用相應(yīng)用戶類型的模塊。其程序流程如圖1所示。

        圖1 用戶登錄流程

        5.1教學(xué)班管理模塊(教師端)

        教學(xué)班管理模塊的要完成的功能如圖2所示:

        圖2 教學(xué)班管理模塊

        在學(xué)期開(kāi)始,教師需要?jiǎng)?chuàng)建自己的教學(xué)班,同時(shí)添加學(xué)生名單。創(chuàng)建教學(xué)班時(shí)通過(guò)添加表單,將所需要的信息傳遞給后臺(tái)PHP程序。后臺(tái)程序在收到這些信息后,首先查詢數(shù)據(jù)庫(kù),檢查課程與課程簡(jiǎn)稱是否有重復(fù),如果存在重名,則彈出警告窗口;否則在數(shù)據(jù)庫(kù)里進(jìn)行操作,添加相應(yīng)的數(shù)據(jù)項(xiàng),同時(shí)根據(jù)學(xué)生名單創(chuàng)建學(xué)生登錄賬號(hào)。如有必要,則同時(shí)創(chuàng)建Telnet賬號(hào)。

        學(xué)期結(jié)束后,教師需要?jiǎng)h除教學(xué)班。老師首先選擇要?jiǎng)h除的班級(jí),然后系統(tǒng)從數(shù)據(jù)庫(kù)中得到這個(gè)班的學(xué)生名單,并從選課數(shù)據(jù)表中刪除。如果這個(gè)課程是此賬號(hào)在系統(tǒng)中的最后一門課,那么其WEB賬號(hào)一并刪除;如果該教學(xué)班有Telnet賬號(hào),則先刪除此賬號(hào),然后刪除與這門課有關(guān)的教案、作業(yè)與學(xué)生上傳的作業(yè),最后從課程數(shù)據(jù)表中刪除這門課程。

        5.2賬號(hào)管理模塊(教師端)

        該功能利用PHP對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,當(dāng)需要添加學(xué)生賬號(hào)的時(shí)候,先將賬號(hào)插入到選課數(shù)據(jù)表中。如果這是該賬號(hào)的第一門課,會(huì)將其插入到賬號(hào)數(shù)據(jù)表中。如果所添加的學(xué)生所在的班級(jí)有Telnet賬號(hào),那么還需要為其添加Telnet賬號(hào)。

        教師賬號(hào)的添加與學(xué)生賬號(hào)添加相似,不同在于教師賬號(hào)僅僅是插入到教師賬號(hào)數(shù)據(jù)表中。

        添加賬號(hào)的難點(diǎn)在于Telnet賬號(hào)的添加,原因是Linux系統(tǒng)中僅有管理員賬號(hào)才有添加賬號(hào)的權(quán)限,如果直接使用system()命令來(lái)調(diào)用Linux中的useradd指令,會(huì)遇到權(quán)限不足的問(wèn)題。解決方法是:首先創(chuàng)建一個(gè)用戶供www服務(wù)器使用,這樣PHP就是以這個(gè)用戶的身份執(zhí)行外部命令,然后修改Linux的sudoer文件,利用Linux的sudo命令使其暫時(shí)獲得相應(yīng)的權(quán)限,在PHP中使用system()調(diào)用此命令時(shí)就不會(huì)出現(xiàn)權(quán)限問(wèn)題。但需要注意所創(chuàng)建用戶的安全問(wèn)題,以防止非法用戶利用這個(gè)賬號(hào)進(jìn)行破壞活動(dòng)。方法之一是修改其登錄的shell為nologin,使這個(gè)用戶不能被登錄。

        實(shí)現(xiàn)添加Telnet用戶的部分關(guān)鍵代碼如下:

        $command=\"sudo /usr/sbin/useradd -d

        /var/www/html/teacher/telnet/\".$classid.\"/\".$_POST[\"stu_number\"].\" -g \".$classid.\" \".$username;

        //添加用戶的Linux命令

        system($command);//使用system命令執(zhí)行這條指令

        $command=\"echo \".$_POST[\"stu_number\"].\"|sudo /usr/

        bin/passwd \".$username.\" --stdin\";//修改新增用戶的密碼,使用了管道

        exec($command);

        5.3學(xué)生提交作業(yè)模塊(學(xué)生端)

        學(xué)生發(fā)出提交作業(yè)請(qǐng)求給系統(tǒng)時(shí),系統(tǒng)會(huì)首先檢查學(xué)生提交的作業(yè)文件名是否符合要求(文件名要求為學(xué)號(hào).rar),然后檢查作業(yè)是否是已經(jīng)被教師所評(píng)閱,是否超期等。在經(jīng)過(guò)這一系列的檢查后,通過(guò)檢查的作業(yè)數(shù)據(jù)將寫(xiě)入數(shù)據(jù)表并最終完成提交作業(yè)操作,其流程如圖3所示。

        5.4Telnet作業(yè)統(tǒng)計(jì)(教師端)

        該功能會(huì)自動(dòng)對(duì)當(dāng)前班級(jí)的Telnet目錄每個(gè)學(xué)生的文件進(jìn)行統(tǒng)計(jì),具體實(shí)現(xiàn)方法是使用Linux下面的ls命令與管道功能,同樣由于權(quán)限問(wèn)題,要用到sudo命令以提升服務(wù)器用戶的權(quán)限。關(guān)鍵部分的源代碼如下:

        $path=\"/var/www/html/teacher/telnet/\".$classid.\"/\".$row[0];

        //文件夾路徑

        $command=\"sudo /bin/ls \".$path.\" -l|awk '/^d/'|wc -l\";

        //目錄數(shù)

        system($command);

        $command=\"sudo /bin/ls \".$path.\" -l|awk '/^-/'|wc -l\";

        //文件數(shù)目

        system($command);

        $command=\"sudo /bin/ls \".$path.\"|grep \\\"\\\\.c\\\"$|wc -l\";

        //C文件數(shù)目

        system($command);

        $command=\"sudo /bin/ls \".$path.\"|grep -E \\\"\\\\.C|\\.cpp\\\"$|wc -l\";

        //C++文件數(shù)目

        system($command);

        $command=\"sudo /bin/ls \".$path.\" -l|awk '/^-rwx/'|wc -l\";

        //可執(zhí)行文件數(shù)目

        system($command);

        圖3 提交作業(yè)檢查流程圖

        6 結(jié)束語(yǔ)

        該系統(tǒng)經(jīng)過(guò)一段時(shí)間的運(yùn)行及改進(jìn),目前功能已經(jīng)比較完善,性能穩(wěn)定。實(shí)踐證明該系統(tǒng)使用方便,對(duì)增強(qiáng)學(xué)生對(duì)操作系統(tǒng)原理的理解有一定的幫助。為方便學(xué)生使用,我們已經(jīng)編寫(xiě)了基于該系統(tǒng)的操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書(shū)。

        在使用過(guò)程中,該系統(tǒng)仍有如下問(wèn)題需要解決:要盡量從技術(shù)上減少學(xué)生抄襲現(xiàn)象;定時(shí)清除學(xué)生遺留下來(lái)的不良進(jìn)程;關(guān)于操作系統(tǒng)內(nèi)核修改的實(shí)驗(yàn)不能實(shí)現(xiàn)。上述問(wèn)題目前正在解決中。

        參考文獻(xiàn)

        [1] 趙永儉等. 建設(shè)以實(shí)驗(yàn)中心為主體的教學(xué)基地,培養(yǎng)高素質(zhì)人才[J]. 實(shí)驗(yàn)技術(shù)與管理,2001,(1).

        [2] 古梅. 校園網(wǎng)環(huán)境下實(shí)現(xiàn)網(wǎng)絡(luò)化教學(xué)的探索與實(shí)踐[J]. 計(jì)算機(jī)教育,2005,(增刊).

        [3] Steve Shah著. 楊濤等譯. Linux管理員指南[M]. 北京:機(jī)械工業(yè)出版社,2001.

        亚洲日韩专区在线视频| 乱码一二区在线亚洲| 国产激情视频在线观看的| 亚洲一区久久蜜臀av| 亚洲九九夜夜| 美女自卫慰黄网站| 高潮潮喷奶水飞溅视频无码| 亚洲女av中文字幕一区二区| 激情综合五月天开心久久| 午夜无码大尺度福利视频| 久久久久久无码av成人影院| 中文字幕午夜精品久久久| 亚洲一区极品美女写真在线看 | 成人片黄网站a毛片免费| 在线小黄片视频免费播放| 亚洲国产字幕| 日本国产视频| 国产成人精品日本亚洲11 | 亚洲中文字幕在线精品2021| 91精品91| 午夜AV地址发布| 手机在线看永久av片免费| 精品九九人人做人人爱| 亚洲国产中文字幕在线视频综合| 国产一区二区三区乱码在线| 免费国产一级片内射老| 在线观看免费午夜大片| 少妇性荡欲视频| 国产成人精品一区二区三区| 精品国产三级a在线观看不卡| 国产高清自产拍av在线| 久久久久久无码AV成人影院| 欧美在线观看一区二区| 台湾佬综合网| 中出人妻中文字幕无码| 欧美老熟妇乱xxxxx| 国产激情一区二区三区在线| 国产人妖av在线观看| 一区二区三区国产偷拍 | av最新版天堂在资源在线| 亚洲精品国产老熟女久久|