【正文】
int Init()。 //執(zhí)行查詢時,獲取對于數(shù)據(jù)表的每一行,把結(jié)果集傳給 row 變量,如陜西理工學(xué)院畢業(yè)設(shè)計 第 19 頁 共 59 頁 果操作成功返回 TURE 失敗返回 FALSE void DB_GETNUMLENTH(unsigned long **)。 5) 通過 recv()/send()函數(shù),讀取客戶端的數(shù)據(jù)或向客戶端發(fā)送數(shù)據(jù)。用戶客戶端對數(shù)據(jù)的請求,必須通過網(wǎng)絡(luò)通信才能到達(dá)服務(wù)器端,進(jìn)行相應(yīng)的數(shù)據(jù)處理,之后把處理得到的數(shù)據(jù)通過網(wǎng)絡(luò)通信返回給客戶端。 ( 6) 初始化 MYSQL 結(jié)構(gòu),使用庫函數(shù) mysql_init(),使用方法如下: MYSQL *mysql = NULL。 根據(jù)分析,操作系統(tǒng)網(wǎng)上試驗系統(tǒng)的數(shù)據(jù)庫系統(tǒng)主要存在 三個實體即老師,學(xué)生和實驗,老師和學(xué)生只能對實驗或自己的實體進(jìn)行操作,老師實體和學(xué)生實體之間沒有任何直接的操作關(guān)系。 實驗報告書或?qū)嶒灲Y(jié)果是老師評閱實驗的重要依據(jù),老師需要選擇一個實驗,之后點(diǎn)擊查看實驗報告書或查看結(jié)果,系統(tǒng)就調(diào)出該學(xué)生該實驗的實驗報告或?qū)嶒灲Y(jié)果,顯示或運(yùn)行。 2) 查看說明書,提供給學(xué)生對實驗指導(dǎo)書的查閱。 操 作 系 統(tǒng) 網(wǎng) 上 實 驗 系 統(tǒng)基 本 信 息 管 理 實 驗 信 息 管 理修改密碼修改基本信息查看基本信息學(xué) 生 老 師查看該生所有實驗查看實驗指導(dǎo)書查看示例結(jié)果提交實驗報告查看試驗狀態(tài)看該老師上傳實驗上傳實驗查看學(xué)生實驗情況評閱實驗查看實驗報告圖 網(wǎng)上實驗系統(tǒng)功能層次圖 系統(tǒng)功能結(jié)構(gòu)分析 操作系統(tǒng)網(wǎng)上實驗系統(tǒng) ,從結(jié)構(gòu)上分,由兩大部分組成,服務(wù)器和客戶端。 ( 2) 經(jīng)濟(jì)可行性 經(jīng)過小組的討論,該項目的開發(fā)所需要的時間大概在一人 30 天左右,所需的硬件配置不高,開發(fā)成功之后,可以部署到校園的內(nèi)部系統(tǒng)之中,不需要添加額外的硬件設(shè)備 。確定基礎(chǔ)數(shù)據(jù)來源(根據(jù)生成的報表樣式 )、 數(shù)據(jù)的組成(數(shù)據(jù)元素,屬性,數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)關(guān)系)、數(shù)據(jù)的去向(確 定輸出報表)、數(shù)據(jù)處理(數(shù)據(jù)量、峰值、峰值時間等及數(shù)據(jù)流動中的時序關(guān)系),掌握 有規(guī)律性 的數(shù)據(jù) 、需進(jìn)行 連續(xù) 積累的歷 史數(shù)據(jù)、有變化的基礎(chǔ)數(shù)據(jù)。 陜西理工學(xué)院畢業(yè)設(shè)計 第 3 頁 共 59 頁 數(shù) 據(jù) 中 心數(shù) 據(jù) 更 新網(wǎng) 線服 務(wù) 器網(wǎng) 線客 戶 端 老 師 端客 戶 端 學(xué) 生 端數(shù)據(jù)請求和接收數(shù)據(jù)數(shù)據(jù)請求和接收數(shù)據(jù)接 收 數(shù) 據(jù) , 處 理 數(shù)據(jù) , 還 回 數(shù) 據(jù) 圖 整體功能 描述圖 實現(xiàn)系統(tǒng)的技術(shù)概述 操作系統(tǒng)網(wǎng)上實驗系統(tǒng)設(shè)計解決的主要問題就是設(shè)計一個網(wǎng)上實驗平臺,通過這個平臺,學(xué)生可以隨時獲取各種實驗資料,進(jìn)行各種練習(xí),及時發(fā)現(xiàn)反饋各種疑惑、問題,和同學(xué)進(jìn)行交流并得到老師的及時解答,方便師生交流。該系統(tǒng) 的使用范圍定位在莫所高校莫個院系的所有專業(yè)的實驗。 由于計算機(jī)技術(shù)的發(fā)展,帶動了其他很多產(chǎn)業(yè)的飛速前進(jìn),一些龐大的數(shù)據(jù)處理,在計算機(jī)的幫助下變得簡單快捷,節(jié)省了大量的人力物力,并且正確率和準(zhǔn)確率也得到了很大的提高,在計算機(jī)發(fā)展之前一些不可能實現(xiàn)的數(shù)據(jù)處理,在計算機(jī)的幫助下變得可能且簡單 。 [關(guān)鍵字 ] 教育事業(yè) ; 傳統(tǒng)教育 ; 網(wǎng)絡(luò)教學(xué); 操作系統(tǒng)網(wǎng)上實驗系統(tǒng);工具 陜西理工學(xué)院畢業(yè)設(shè)計 Operating Systems Design and Implementation of experimental system online Name: Liu Wen Pan (Grade09,Class2,Major Network Engineering,Institute of Mathematics and Computer Science Dept,Shanxi University of Technology,hanzhong 723001,Shanxi) Tutor: Wang Peng [Abstract]: Education is the product of highly developed human society, the accumulation of crystals generations of civilization , but also the social carriers pass down from generation to generation . Traditional educational approach is to explain the theory of knowledge based on the height of a particular historical and cultural analysis , for those single cultural knowledge and skills , this education is perhaps one of the more easily accepted in a way. However, in modern highly developed societies, cultural diversity and crosscutting disciplines characteristics, in particular scientific discipline requires practice , the traditional mode of education can not meet the needs of modern teaching , and it is difficult to be accepted by the student , so this needs to find a new teaching methods. In the current teaching practice, more and more online teaching are favored by students of all ages and teachers, and in the constant practice , it has been confirmed that online education is an effective approach to supplement the shortage of traditional education. Experimental system is based on the operating system online courses on operating system design and implementation as experimental subjects online experiment system that belongs to the work as part of teaching , in order to supplement classroom teaching students unable to get enough material for experimental verification experiment their level of knowledge and self check Network access, the teacher can not grasp students39。 操作系統(tǒng)網(wǎng)上試驗系統(tǒng),主要是以操作系統(tǒng)為實驗對象進(jìn)行網(wǎng)上實驗系統(tǒng)的設(shè)計和實現(xiàn) 。對于老師登錄身份來說,其也有兩個模塊的功能,個人基本信息管理和實驗資料管理。收集實驗資料(實驗信息和實驗說明書),了解實驗環(huán)節(jié)的情況并統(tǒng)計其信息,找出其中的規(guī)律,生成報表形式。 ( 1) 技術(shù)可行性 為了開發(fā)這個系統(tǒng),我們選擇了 VC++ 作為主要的開發(fā)工具,該開發(fā)工具有高度的封裝性,MFC 的內(nèi)置控件功能非常的龐大,應(yīng)用非常的方便, 快捷,是軟件開發(fā)的一種很好地選擇。在開發(fā)操作系統(tǒng)網(wǎng)上實驗系統(tǒng)之前,首先要對其進(jìn)行系統(tǒng)的功能分析。 用戶只需點(diǎn)擊系統(tǒng)的修改基本信息按鈕,系統(tǒng)將提供一個提示對話框,顯示需要修改的基本信息,用戶可以改變其中的值,在確認(rèn)之后,點(diǎn)擊確定提交,如果程序運(yùn)行正確, 基本信息更新成功。 ( 3) 查看學(xué)生實驗完成情況,實現(xiàn)老師對學(xué)生完成他上傳的實驗的情況。 實現(xiàn)系統(tǒng)的工具 或技術(shù) 選擇 工具或技術(shù)的選擇,是實現(xiàn)一個系統(tǒng)或工程的關(guān)鍵步驟之一,根據(jù)我們目前擁有你的條件或掌握的技能,實現(xiàn)操作系統(tǒng)網(wǎng)上試驗系統(tǒng)需要的工具或技術(shù)選擇如下清單所示: ( 1)計算機(jī)主要配置:內(nèi)存: 2G,主頻: ,硬盤: 500G/5400 轉(zhuǎn) /分 ( 2)操作系統(tǒng): Windows XP 專業(yè)版 32 位 ( 3)編程語言: C/C++ ( 4)編程工具: VC++ /MFC 組件 ( 5)數(shù)據(jù)庫: MYSQL Server /SQLyog(MYSQL 輔助工具 ) ( 6)網(wǎng)絡(luò)通信協(xié)議: TCP/IP 數(shù)據(jù)庫系統(tǒng)的設(shè)計 數(shù)據(jù)庫系統(tǒng)是操作系統(tǒng)網(wǎng)上試驗系統(tǒng)的數(shù)據(jù)中心, 下面我們主要從數(shù)據(jù)庫的設(shè)計和數(shù)據(jù)庫在 vc中的應(yīng)用分別來說明數(shù)據(jù)庫系統(tǒng)的設(shè)計。 ( 3) 將 “、 ”拷到你所建的工程的目錄下。 ( 11) 關(guān)閉數(shù)據(jù)庫,使用庫函數(shù) mysql_close()。 2) 通過 bind(),綁定套接字和 指定的地址。 //執(zhí)行對數(shù)據(jù)庫的查詢操作,傳入查詢字符串,如果操作成功返回TURE 失敗返回 FALSE BOOL DB_ACTION(char *)。 int Send(char *,int)。 ///創(chuàng)建位圖畫刷 ( 4) 接著 在 OnDraw 函數(shù)中畫出來 ,代碼如下 : CRect rect。 實現(xiàn)該效果 的方法如下: ( 1) 我們首先需要 把窗口分割成一行兩列的窗口,實現(xiàn)方法是如下: 1) 在 CMainFrame 類中添加 OnCreateClient 響應(yīng)消息,生成 BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)函數(shù)。具體的操作方法參照 MFC 或網(wǎng)絡(luò)查詢。在登錄成功的時候,就已經(jīng)記錄下來了當(dāng)前登錄賬戶的基本信息,如個人的密碼,姓名,賬號,登陸角色是老師還是學(xué)生等相關(guān)的信 息,根據(jù)登錄角色的不同進(jìn)入到不同的操作界面。 cs)中修改單文檔框的 外觀和大 小,主要使用為 cs 結(jié)構(gòu)設(shè)置不同的參數(shù)。 //創(chuàng)建 mysql MYSQL_RES* result。 陜西理工學(xué)院畢業(yè)設(shè)計 第 17 頁 共 59 頁 圖 基于 TCP/IP 網(wǎng)絡(luò)套接字的實現(xiàn) 服務(wù)器 端程序設(shè)計 與實現(xiàn) 操作系統(tǒng)網(wǎng)上試驗系統(tǒng)的服務(wù)器端主要由數(shù)據(jù)庫和 socket 網(wǎng)絡(luò)編程的服務(wù)器方組成,再對數(shù)據(jù)庫和服務(wù)器方進(jìn)行封裝之后再進(jìn)行合理的組織就組成了操作系統(tǒng)網(wǎng)上試驗系統(tǒng)的服務(wù)器端 。 TCP/IP 協(xié)議棧的數(shù)據(jù)封轉(zhuǎn)過程如圖 所示。此函數(shù)可以獲取數(shù)據(jù)表每一行的數(shù)據(jù)(如果操作為非查詢操作, 9 和 10 兩步跳過)。 mysql 數(shù)據(jù)庫在 vc 中的部署 在成功安裝 mysql 數(shù)據(jù)庫之后,將設(shè)計好的數(shù)據(jù)表等導(dǎo)入到 mysql 數(shù)據(jù)庫中,之后就是數(shù)據(jù)庫在 vc 創(chuàng)建的工程上的部署了 。 但用戶可以查看信息和修改一些基本的信息和修改密碼,特定的用戶只能查看自己的信息,密碼必須是少于 10 個數(shù)字字符組成,且必須以密文表示 ,基本信息的修改不能改變關(guān)鍵的信息,如學(xué)號,所在專業(yè)等信息。 學(xué)生需要查看實驗的完成情況的時候,就需要對這一系列進(jìn)行相應(yīng)的操作,例如想查看已經(jīng)完成的實驗,點(diǎn)擊已完成按鈕,系統(tǒng)將把已經(jīng)完成且成功上傳到系統(tǒng)的該生的所有的實驗通過列表的形式羅列出來, 點(diǎn)擊未完成按鈕,系統(tǒng)將把該生需要完成且沒有完成的所有的實驗通過列表的形式羅列出來,點(diǎn)擊重修實驗按鈕時,系統(tǒng)將把該生已經(jīng)完成且成功上傳到系統(tǒng)的且沒有通過的所有的實驗通過列表的形式羅列出來,點(diǎn)擊查看評閱時,系統(tǒng)將把該生已經(jīng)完成且成功上 傳到系統(tǒng)的且老師已經(jīng)評閱的所有的實驗的評閱信息通過列表的形式羅列出來。 而學(xué)生用戶又有兩個 模塊的功能,基本信息管理和實驗信息管理,下面分別從這兩個方面進(jìn)行功能分析。在需求分析中,數(shù)據(jù)流圖和數(shù)據(jù)字典是非常重要的環(huán)節(jié),其設(shè)計的質(zhì)量的好差,將直接影響到軟件的質(zhì)量和開發(fā)的效率,也是決定軟件效益最關(guān)鍵的步驟之一 。 ( 16) 進(jìn)行需求分析評審 。 ( 4) 走訪教務(wù)處、 相關(guān)老師,相關(guān)學(xué)生和實驗室 管理人員,了解 其組織機(jī)構(gòu)、管理模式及內(nèi)容、主要業(yè)務(wù)、國家標(biāo)準(zhǔn)、操作流程和實現(xiàn)方法 、存在問題 、需要完善的體制等, 了解業(yè)務(wù)量大和問題多的業(yè)務(wù)。 系統(tǒng)的功能概述 我們明白了操作系統(tǒng)網(wǎng)上實驗系統(tǒng)的系統(tǒng)概述之后,需要對該系統(tǒng)有一個基本的功能構(gòu)架,進(jìn)行簡單的功能概述,我們知道,該系統(tǒng)主要又兩部分組成,服務(wù)器端和客戶端。教育事業(yè)是人類社會發(fā)展的文明象征, 是人類社會高度發(fā)展的產(chǎn)物,是世世代代文明積累的結(jié)晶 ,他的發(fā)展直接影響到人類社會發(fā)展的腳步,也是科技技術(shù)的帶頭軍,大力