<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            操作系統

            華中科技大學計算機操作系統實驗報告

            時間:2025-04-21 06:15:51 操作系統 我要投稿
            • 相關推薦

            華中科技大學計算機操作系統實驗報告兩篇

              篇一:華中科技大學計算機操作系統實驗報告

            華中科技大學計算機操作系統實驗報告兩篇

              實驗目的

              掌握Linux操作系統的使用方法;

              了解Linux系統內核代碼結構;

              掌握實例操作系統的實現方法。

              一、實驗要求

              1、掌握Linux操作系統的使用方法,包括鍵盤命令、系統調用;掌握在Linux

              下的編程環境。

              編一個C程序,其內容為實現文件拷貝的功能;

              編一個C程序,其內容為分窗口同時顯示三個并發進程的運行結

              果。要求用到Linux下的圖形庫。

              2、掌握系統調用的實現過程,通過編譯內核方法,增加一個新的系統調用。

              另編寫一個應用程序,調用新增加的系統調用。

              實現的功能是:文件拷貝;

              3、掌握增加設備驅動程序的方法。通過模塊方法,增加一個新的設備驅動

              程序,其功能可以簡單。

              實現字符設備的驅動;

              4、了解和掌握/proc文件系統的特點和使用方法

              了解/proc文件的特點和使用方法

              監控系統狀態,顯示系統中若干部件使用情況

              用圖形界面實現系統監控狀態。

              5、設計并實現一個模擬的文件系統(選作)

              二、實驗一

              1、編一個C程序,其內容為實現文件拷貝的功能

              要實現文件拷貝功能,主要用到的函數是fopen、fputc、fgetc。

              主要用到的頭文件:

              #include

              #include

              設計思路:由scanf函數獲取2個文件名,根據其文件名和路徑分別打開該2個文件,設置一個循環,從源文件復制1個字節到目的文件,直到源文件指針到文件尾,最后關閉2個文件。

              在可能出錯的地方需要加上相應的報錯代碼,并輸出錯誤信息,以方便調試。

              理清楚設計思路后,首先搭建linux下編程環境。

              安裝gcc: sudo apt-get install build-essential

              安裝codeblocks: sudo apt-get install codeblocks

              在集成開發環境Code::Blocks IDE下根據需求寫出相應的源代碼copy.c ,將程序編譯并生成exe可執行文件。

              然后手動創建一個測試文件test.txt ,運行copy.exe文件,并輸入

              篇二:華中科技大學計算機操作系統實驗報告

              實驗目的

              掌握Linux操作系統的使用方法;

              了解Linux系統內核代碼結構;

              掌握實例操作系統的實現方法。

              一、 實驗要求

              1、 掌握Linux操作系統的使用方法,包括鍵盤命令、系統調用;掌握在Linux

              下的編程環境。

              編一個C程序,其內容為實現文件拷貝的功能;

              編一個C程序,其內容為分窗口同時顯示三個并發進程的運行結

              果。要求用到Linux下的圖形庫。

              2、 掌握系統調用的實現過程,通過編譯內核方法,增加一個新的系統調用。

              另編寫一個應用程序,調用新增加的系統調用。

              實現的功能是:文件拷貝;

              3、 掌握增加設備驅動程序的方法。通過模塊方法,增加一個新的設備驅動

              程序,其功能可以簡單。

              實現字符設備的驅動;

              4、 了解和掌握/proc文件系統的特點和使用方法

              了解/proc文件的特點和使用方法

              監控系統狀態,顯示系統中若干部件使用情況

              用圖形界面實現系統監控狀態。

              5、 設計并實現一個模擬的文件系統(選作)

              二、 實驗一

              1、 編一個C程序,其內容為實現文件拷貝的功能

              要實現文件拷貝功能,主要用到的函數是fopen、fputc、fgetc。

              主要用到的頭文件:

              #include

              #include

              設計思路:由scanf函數獲取2個文件名,根據其文件名和路徑分別打開該2個文件,設置一個循環,從源文件復制1個字節到目的文件,直到源文件指針到文件尾,最后關閉2個文件。

              在可能出錯的地方需要加上相應的報錯代碼,并輸出錯誤信息,以方便調試。

              理清楚設計思路后,首先搭建linux下編程環境。

              安裝gcc: sudo apt-get install build-essential

              安裝codeblocks: sudo apt-get install codeblocks

              在集成開發環境Code::Blocks IDE下根據需求寫出相應的源代碼copy.c ,將程序編譯并生成exe可執行文件。

              然后手動創建一個測試文件test.txt ,運行copy.exe文件,并輸入

              text.txt與target.txt。

              這樣就能將源文件test.txt復制到目標文件target.txt

              程序源代碼 copy.c:

              #include

              #include

              int main()

              {

              char a[20],b[20];

              scanf("%s",a);

              get);

              scanf("%s",b);

              FILE *p=NULL,*q=NULL;

              p=fopen(a,"rb");

              if(p==NULL){printf("%s default",a);return 0;}

              q=fopen(b,"wb+");

              char c;

              while((c=fgetc(p))!=EOF)

              {

              fputc(c,q);

              }

              printf("copy success");

              return 0;

              }

              2、 編一個C程序,其內容為分窗口同時顯示三個并發進程的運行結果。要

              求用到Linux下的圖形庫。 安裝Linux下的GTK+: sudo apt-get install build-essential

              這將安裝gcc/g++/gdb/make 等基本編程工具

              sudo apt-get install gnome-core-devel

              這將安裝 libgtk2.0-dev libglib2.0-dev 等開發相關的庫文件 sudo apt-get install pkg-config

              用于在編譯GTK程序時自動找出頭文件及庫文件位置

              sudo apt-get install devhelp

              這將安裝 devhelp GTK文檔查看程序

              sudo apt-get install libglib2.0-doc libgtk2.0-doc

              這將安裝 gtk/glib 的API參考手冊及其它幫助文檔

              sudo apt-get install glade libglade2-dev

              這將安裝基于GTK的界面GTK是開發Gnome窗口的c/c++語言圖形庫

              sudo apt-get install libgtk2.0*, gtk+2.0

              所需的所有文件統通下載安裝完畢

              編寫一個GTK+程序的基本步驟如下: 初始化Gtk 建立控件 登記消息與消息處理函數 執行消息循環函數gtk_main()

              題名

              初始化主要使用的函數有 gtk_init(&argc,&argv);//啟動GTK gtk_window_new(GTK_WINDOW_TOPLEVEL); //創建窗口 gtk_window_set_title(GTK_WINDOW(window),"標題名"); //設置窗口標gtk_widget_set_usize(window, 200, 200); //設置窗口大小 gtk_widget_show(window); //顯示窗口建立控件的一般流程

              /*創建表格準備封裝*/ gtk_table_new ( //創建多少列

              gint rows,

              gint columns,

              gint homogeneous);

              //創建多少欄 //用來決定表格如何來定大小 /*這個函數是將表格table,結合到窗口window里*/ gtk_container_add(GTK_CONTAINER(window),table);

              gtk_widget_show(table); // 顯示該表格

              /*要把物件放進box中,可用以下函數*/

              void gtk_table_attach_defaults (

              GtkTable*table, //參數("table")是選定某表格

              GtkWidget*widget, //("child")是想放進去的物件

              gintleft_attach, //以下參數是指定把物件放在哪里, 及用多少個boxes

              gintright_attach,

              ginttop_attach,

              gintbottom_attach);

              在Code::Blocks IDE創建GTK+工程如下流程:

              首先在codeblocks選中File,然后選擇New,最后Project。出現如上圖所示界面。

              在該界面中選中GTK+Project然后Go進入下一步。

              繼續Next,直到如下圖輸入工程名稱與路徑。

              然后Next->Finish

              這樣,就創建了一個GTK+工程。

              直接運行剛才創建的GTK+工程中的默認程序,得到一個包含2個按鈕的窗口界面應用,如下圖所示:

              此時,可以按此模板修改源代碼,也可以刪除重寫。

              并發進程:

              創建3個如上GTK+工程,生成3個不同的exe文件。

              if ((p1=fork()) == 0)

              {

              execv("../1",NULL);

              }

              else if ((p2=fork())==0)

              {

              execv("../2",NULL);

              }

              else if ((p3=fork()==0))

            【華中科技大學計算機操作系統實驗報告】相關文章:

            華中科技大學碩士專業解析08-06

            2017華中科技大學全國排名10-05

            2015最新的華中科技大學專業排名11-04

            華中科技大學語文試題及答案參考09-28

            2015華中科技大學各專業在全國排名08-09

            2017年華中科技大學專業排名09-17

            2015華中科技大學各專業在全國排名08-30

            2014年華中科技大學排名08-26

            2014年華中科技大學招生計劃11-11

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看