Ⅰ 【求助】linux下的c語言多線程,怎樣監視鍵盤上的輸入
發所用語言為C..
一般的..要想學好嵌入式開發..就要兩個都會..
如果只學linux,這個只是為以後從事linux伺服器搭建,管理和維護等..差不多就是跟硬體打交道..
而嵌入式開發就相當於..在windows下用C,C++,C#,java等開發一樣..只不過他的開發平台換成了linux...
如果想自學建議按照以下步驟:
學習步驟如下:
1、Linux 基礎
安裝Linux操作系統
Linux文件系統
Linux常用命令
Linux啟動過程詳解
熟悉Linux服務能夠獨立安裝Linux操作系統
能夠熟練使用Linux系統的基本命令
認識Linux系統的常用服務安裝Linux操作系統
Linux基本命令實踐
設置Linux環境變數
定製Linux的服務 Shell 編程基礎使用vi編輯文件
使用Emacs編輯文件
使用其他編輯器
2、Shell 編程基礎
Shell簡介
認識後台程序
Bash編程熟悉Linux系統下的編輯環境
熟悉Linux下的各種Shell
熟練進行shell編程熟悉vi基本操作
熟悉Emacs的基本操作
比較不同shell的區別
編寫一個測試伺服器是否連通的shell腳本程序
編寫一個查看進程是否存在的shell腳本程序
編寫一個帶有循環語句的shell腳本程序
3、Linux 下的 C 編程基礎
linux C語言環境概述
Gcc使用方法
Gdb調試技術
Autoconf
Automake
Makefile
代碼優化 熟悉Linux系統下的開發環境
熟悉Gcc編譯器
熟悉Makefile規則編寫Hello,World程序
使用 make命令編譯程序
編寫帶有一個循環的程序
調試一個有問題的程序
4、嵌入式系統開發基礎
嵌入式系統概述
交叉編譯
配置TFTP服務
配置NFS服務
下載Bootloader和內核
嵌入式Linux應用軟體開發流程
熟悉嵌入式系統概念以及開發流程
建立嵌入式系統開發環境製作cross_gcc工具鏈
編譯並下載U-boot
編譯並下載Linux內核
編譯並下載Linux應用程序
嵌入式系統移植
Linux內核代碼
平台相關代碼分析
ARM平台介紹
平台移植的關鍵技術
移植Linux內核到 ARM平台 了解移植的概念
能夠移植Linux內核移植Linux2.6內核到 ARM9開發板
5、嵌入式 Linux 下串口通信
串列I/O的基本概念
嵌入式Linux應用軟體開發流程
Linux系統的文件和設備
與文件相關的系統調用
配置超級終端和MiniCOM 能夠熟悉進行串口通信
熟悉文件I/O 編寫串口通信程序
編寫多串口通信程序
6、嵌入式系統中多進程程序設計
Linux系統進程概述
嵌入式系統的進程特點
進程操作
守護進程
相關的系統調用了解Linux系統中進程的概念
能夠編寫多進程程序編寫多進程程序
編寫一個守護進程程序
sleep系統調用任務管理、同步與通信 Linux任務概述
任務調度
管道
信號
共享內存
任務管理 API 了解Linux系統任務管理機制
熟悉進程間通信的幾種方式
熟悉嵌入式Linux中的任務間同步與通信
編寫一個簡單的管道程序實現文件傳輸
編寫一個使用共享內存的程序
7、嵌入式系統中多線程程序設計
線程的基礎知識
多線程編程方法
線程應用中的同步問題了解線程的概念
能夠編寫簡單的多線程程序編寫一個多線程程序
8、嵌入式 Linux 網路編程
網路基礎知識
嵌入式Linux中TCP/IP網路結構
socket 編程
常用 API函數
分析Ping命令的實現
基本UDP套介面編程
許可證管理
PPP協議
GPRS 了解嵌入式Linux網路體系結構
能夠進行嵌入式Linux環境下的socket 編程
熟悉UDP協議、PPP協議
熟悉GPRS 使用socket 編寫代理伺服器
使用socket 編寫路由器
編寫許可證伺服器
指出TCP和UDP的優缺點
編寫一個web伺服器
編寫一個運行在 ARM平台的網路播放器
9、GUI 程序開發
GUI基礎
嵌入式系統GUI類型
編譯QT
進行QT開發熟悉嵌入式系統常用的GUI
能夠進行QT編程使用QT編寫「Hello,World」程序
調試一個加入信號/槽的實例
通過重載QWidget 類方法處理事件
10、Linux 字元設備驅動程序
設備驅動程序基礎知識
Linux系統的模塊
字元設備驅動分析
fs_operation結構
載入驅動程序了解設備驅動程序的概念
了解Linux字元設備驅動程序結構
能夠編寫字元設備驅動程序編寫Skull驅動
編寫鍵盤驅動
編寫I/O驅動
分析一個看門狗驅動程序
對比Linux2.6內核與2.4內核中字元設備驅動的不同
Linux 塊設備驅動程序塊設備驅動程序工作原理
典型的塊設備驅動程序分析
塊設備的讀寫請求隊列了解Linux塊設備驅動程序結構
能夠編寫簡單的塊設備驅動程序比較字元設備與塊設備的異同
編寫MMC卡驅動程序
分析一個文件系統
對比Linux2.6內核與2.4內核中塊設備驅動的不同
11、文件系統
虛擬文件系統
文件系統的建立
ramfs內存文件系統
proc文件系統
devfs 文件系統
MTD技術簡介
MTD塊設備初始化
MTD塊設備的讀寫操作了解Linux系統的文件系統
了解嵌入式Linux的文件系統
了解MTD技術
能夠編寫簡單的文件系統為 ARM9開發板添加 MTD支持
移植JFFS2文件系統
通過proc文件系統修改操作系統參數
分析romfs 文件系統源代碼
創建一個cramfs 文件系統
望採納:可是一個字一個字錢敲出來的..
另外,站長團上有產品團購,便宜有保證
Ⅱ Linux 創建虛擬機啟動文件時顯示這個該怎麼解決
提示很明顯啊,你應該用GB 或 MB 等單位 來表示虛擬文件大小,而你用的是10G,是非法的州早。改為州型10GB再試試!冊跡雀
Ⅲ 如何用C語言創建一個新文件
C語言可以通過fopen函數創建一個新文件。
細節如下:
使用fopen需要添加頭文件 #include <stdio.h>
創建一個新的文本文件語句如下: FILE *fp=fopen("文件名", "w");
創建一個新的二進制文件的語句如下:FILE *fp=fopen("文件名", "wb");
該函數詳細說明如下:
函數原型:FILE * fopen(const char * path,const char * mode);
返回值:文件順利打開後,指向該流的文件指針就會被返回。如果文件打開失敗則返回NULL,並把錯誤代碼存在errno中。
參數說明:
參爛孫數path字元串包含欲打開的文件路徑及文件名,參數mode字元串則代表著流形態。
mode有下列幾種形態字飢卜鏈符串:
r 以只讀方式打開文件,該文件必須存在。
r+ 以可讀寫方式打開文件,該文件必須存在。
rb+ 讀寫打開一個二進制文件,允許讀寫數據,文件必須存在。
w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a 以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會弊首被保留。
a+ 以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。
wb 只寫打開或新建一個二進制文件;只允許寫數據。
wb+ 讀寫打開或建立一個二進制文件,允許讀和寫。
ab+ 讀寫打開一個二進制文件,允許讀或在文件末追加數據。例子代碼
FILE*fp;//定義文件指針
fp=fopen("d:\out.txt","w");//打開文件
//寫文件的代碼
fclose(fp);
//關閉文件
Ⅳ VMware通過單個vmdk文件創建虛擬機,為什麼vmdk只有10幾MB,怎樣能弄出這樣的vmdk
不是立即分配悶核禪所有硬碟空間,隨著需要自動增長,除非創建虛擬硬碟的氏告時候勾選了「立螞塵即分配所有磁碟空間」
Ⅳ c語言 分配超大內存
用文件內存映射,這樣系統就會把文件作為內存使用,文件有多大你虛擬出來的內存就有多大
Ⅵ 如何使用C語言產生垃圾文件要有一些大小(幾百KB或幾十KB),最好不要抄別人的。
很簡單,打開文件,定義一個內存區,直接將內存區的內容寫入就可以,下面是生成一個40K的文件,內容隨機:
#include <stdio.h>
main()
{
FILE *fp;
char sBuff[40960];
fp = fopen("rub.bin","wb");
fwrite(s,1,40960,fp);\
fclose(fp);
}
Ⅶ 在c語言中,創建一個二進制文件,最大為4M,將若干個小文件寫到這個文件,並讀出指定文件 求大神指導orz
自己做一個文件頭,記錄每個文件的大小
#include<stdio.h>
longGetFileSize(FILE*fp)
{
fseek(fp,0,SEEK_END);
returnftell(fp);
}
voidWriteToFile(FILE*mainFile,FILE*subFiles[],size_tfileCount)
{
//文件頭:文件數量+每個文件的大小
charbuff[1024];
intfileHeader[fileCount+1];//文件頭
fileHeader[0]=fileCount;
for(size_ti=0;i<fileCount;i++)
{
fileHeader[i+1]=GetFileSize(subFiles[i]);
}
fseek(mainFile,0,SEEK_SET);
fwrite(fileHeader,sizeof(int),fileCount+1,mainFile);
for(size_ti=0;i<fileCount;i++)
{
while(1)
{
intcount=fread(buff,sizeof(char),1024,subFiles[i]);
if(count<=0)break;
橡鬧和fwrite(buff,sizeof(char),count,mainFile);
}
fclose(subFiles[i]);
}
fclose(mainFile);
}
voidReadToFile(FILE*mainFile,FILE*subFile,size_tindex)
{
intfileCount;//文件數量
longoffset=0;//文件內容相對於文件頭的偏移量
charbuff[1024];//緩沖區
fread(&fileCount,sizeof(int),1,mainFile);
if(index>fileCount)
{
printf("無第%d號文件! ",index);
return;
}
intfileSize[fileCount];
梁盯fread(fileSize,sizeof(int),fileCount,mainFile);
for(size_ti=0;i<index;i++)
{
offset+=fileSize[i];
}
fseek(mainFile,offset,SEEK_CUR)
inttimes=fileSize[index]/sizeof(buff);//讀取次數
intrest=fileSize[index]%sizeof(buff);//剩餘位元組數
for(inti=1;i<=times;i++)
{
fread(buff,sizeof(char),1024,mainFile);
fwrite(buff,sizeof(char),1024,subFile);
}
fread(buff,sizeof(char),rest,mainFile);
fwrite(buff,sizeof(char),rest,subFile);
彎爛fclose(mainFile);
fclose(subFile);
}
intmain(void)
{
FILE*mainFile=fopen("main.bin","w");
FILE*subFiles[]={文件1,文件2,...};
WriteToFile(mainFile,subFiles,文件數量);
mainFile=fopen("main.bin","r");
FILE*subFile=fopen("sub.bin","w");
ReadToFile(mainFile,subFile,文件索引);
return0;
}
Ⅷ 怎麼用c語言生成一個特定大小的文本文件
#include <stdio.h>
void CreateMyFile(char * szFileName,int nFileLength)
{
FILE* fp = fopen(szFileName, "wb+"); // 創建文件
if(fp==NULL)
printf("文件打開失敗");
else
{
fseek(fp, nFileLength-1, SEEK_SET); // 將文件的指針 移至 指定大小的位置
fputc(32, fp); // 在要指定大小文件的末尾隨便放一個數據
fclose(fp);
}
}
void main()
{
CreateMyFile("test.txt",1024*256); //調用測試
}
Ⅸ 用C語言創建文件
工具:華碩電腦
原料:C-Free5.0
1、打開C-Free5.0新建一個空白頁面,然後將C語言的基礎格式寫完,注意格式縮進。
Ⅹ 用戶在程序中試圖讀某文件的第100個邏輯塊,使用操作系統的什麼介面
1 虛擬存儲技術產
虛擬化技術並件新技術,發展,應該說隨著計算機技術發展發展起,早始於70代.由於存儲容量,特別內存容量本非高,容量,於型應用程序或程序應用受限制.克服限制,採用虛擬存儲技術,典型應用虛擬內存技術.隨著計算機技術及相關信息處理技術斷發展,存儲需求越越.需求刺激各種新技術現,比磁碟性能越越,容量越越.量型信息處理系統,單磁碟能滿足需要,情況存儲虛擬化技術發展起.發展程由幾階段幾種應用.首先磁碟條帶集(RAID,帶容錯)技術,物理磁碟通定邏輯關系集合起,容量虛擬磁碟.隨著數據量斷增加數據用性要求斷提高,種新存儲技術應運,存儲區域網路(SAN)技術.SAN廣域化則旨存儲設備實現種公用設施,任何員,任何主機都隨隨獲取各自想要數據.目前討論比較包括iSCSI,FC Over IP 等技術,由於些相關標准沒終確定,存儲設備公用化,存儲網路廣域化逆轉潮流.
2 虛擬存儲概念
所謂虛擬存儲,存儲介質模塊(硬碟,RAID)通定手段集管理起,所存儲模塊存儲池(Storage Pool)統管理,主機工作站角度,看硬碟,區或者卷,象超容量(1T)硬碟.種種,存儲設備統管理起,使用者提供容量,高數據傳輸性能存儲系統,稱虛擬存儲.
虛擬存儲類
目前虛擬存儲發展尚統標准,虛擬化存儲拓撲結構講主要兩種式:即稱式與非稱式.稱式虛擬存儲技術指虛擬存儲控制設備與存儲軟體系統,交換設備集整體,內嵌網路數據傳輸路徑;非稱式虛擬存儲技術指虛擬存儲控制設備獨立於數據傳輸路徑外.虛擬化存儲實現原理講兩種式;即數據塊虛擬與虛擬文件系統.具體:
A.稱式虛擬存儲
圖1
圖1稱式虛擬存儲解決案示意圖
圖1所示稱式虛擬存儲結構圖,存儲控制設備 High Speed Traffic Directors(HSTD)與存儲池系統Storage Pool集起,組SAN Appliance.看該案存儲控制設備HSTD主機與存儲池數據交換程起核作用.該案虛擬存儲程:由HSTD內嵌存儲管理系統存儲池物理硬碟虛擬邏輯存儲單元(LUN),並進行埠映射(指定某LUN能哪些埠所見),主機端各見存儲單元映射操作系統識別盤符.主機向SAN Appliance寫入數據,用戶需要數據寫入位置指定自映射盤符(LUN),數據經HSTD高速並行埠,先寫入高速緩存,HSTD存儲管理系統自完目標位置由LUN物理硬碟轉換,程用戶見虛擬邏輯單元,關每LUN具體物理組織結構.該案具主要特點:
(1)採用容量高速緩存,顯著提高數據傳輸速度.
緩存存儲系統廣泛採用位於主機與存儲設備間I/O路徑間介質.主機存儲設備讀取數據,與前數據存儲位置相連數據讀緩存,並調用數據保留緩存;主機讀數據,幾率能夠緩存找所需要數據.直接緩存讀.緩存讀取數據速度受電信號傳播速度影響(等於光速),高於硬碟讀數據碟片機械轉速度.主機向存儲設備寫入數據,先數據寫入緩存,待主機端寫入作停止,再緩存數據寫入硬碟,同高於直接寫入硬碟速度
(2)埠並行技術,消除I/O瓶頸.
傳統FC存儲設備控制埠與邏輯盤間固定關系,訪問塊硬碟能通控制控制器埠.稱式虛擬存儲設備,SAN Appliance存儲埠與LUN關系虛擬,說台主機通存儲埠(8)並發訪問同LUN;光纖通道100MB/帶寬前提,並行工作埠數量越,數據帶寬越高.
(3)邏輯存儲單元提供高速磁碟訪問速度.
視頻應用環境,應用程序讀寫數據固定數據塊單位(512byte1MB間).存儲系統保證應用程序帶寬需求,往往設計傳輸512byte數據塊才能達其佳I/O性能.傳統SAN結構,容量需求增,唯解決辦塊磁碟(物理或邏輯)綁定帶區集,實現容量LUN.稱式虛擬存儲系統,主機提供真超容量,高性能LUN,用帶區集式實現性能較差邏輯卷.與帶區集相比,Power LUN具優勢,塊I/O block真存儲系統所接受,效提高數據傳輸速度;並且由於沒帶區集處理程,主機CPU解除負擔,提高主機性能.
(4)HSTD系統容錯性能.
稱式虛擬存儲系統,HSTD數據I/O必經,存儲池數據存放.由於存儲池數據具容錯機制保障安全,用戶自想HSTD否容錯保護.象許型存儲系統,熟稱式虛擬存儲系統,HSTD配製,每HSTD間通SAN Appliance內嵌網路管理服務實現緩存數據致相互通信.
(5)SAN Appliance便連接交換設備,實現超規模Fabric結構SAN.
系統保持標准SAN結構,系統擴展互連提供技術保障,所SAN Appliance便連接交換設備,實現超規模Fabric結構SAN.
B.非稱式虛擬存儲系統
圖2
圖2非稱式虛擬存儲系統示意圖
圖2所示非稱式虛擬存儲系統結構圖,網路每台主機虛擬存儲管理設備均連接磁碟陣列,其主機數據路徑通FC交換設備達磁碟陣列;虛擬存儲設備網路連接磁碟陣列進行虛擬化操作,各存儲陣列LUN虛擬邏輯帶區集(Strip),並網路每台主機指定每Strip訪問許可權(寫,讀,禁止訪問).主機要訪問某Strip,首先要訪問虛擬存儲設備,讀取Strip信息訪問許可權,再通交換設備訪問實際Strip數據.程,主機識別邏輯strip,直接識別物理硬碟.種案具特點:
(1)同物理硬碟陣列容量進行邏輯組合,實現虛擬帶區集,陣列控制器埠綁定,定程度提高系統用帶寬.
(2)交換機埠數量足夠情況,網路內安裝兩台虛擬存儲設備,實現Strip信息訪問許可權冗餘.
該案存些足:
(1)該案本質帶區集——磁碟陣列結構,旦帶區集某磁碟陣列控制器損壞,或者陣列交換機路徑銅纜,GBIC損壞,都導致虛擬LUN離線,帶區集本身沒容錯能力,LUN損壞意味著整Strip面數據丟失.
(2)由於該案帶寬提高通陣列埠綁定實現,普通光纖通道陣列控制器效帶寬僅40MB/S左右,要達幾百兆帶寬意味著要調用十幾台陣列,佔用幾十交換機埠,兩台交換機型網路,實現.
(3)由於各種品牌,型號磁碟陣列其性能完全相同,於虛擬化目同品牌,型號陣列進行綁定,帶問題:即數據寫入或讀各並發數據流速度同,意味著原數據包順序傳輸完畢打亂,系統需要佔用間資源重新進行數據包排序整理,嚴重影響系統性能.
4 數據塊虛擬與虛擬文件系統
拓撲結構角度析稱式與非稱式虛擬存儲案異同,實際虛擬化存儲實現原理講兩種式;即數據塊虛擬與虛擬文件系統.
數據塊虛擬存儲案著重解決數據傳輸程沖突延問題.交換機組型Fabric結構SAN,由於台主機通交換機埠訪問存儲設備,延數據塊沖突問題非嚴重.數據塊虛擬存儲案利用虛擬埠並行技術,台客戶機提供極高帶寬,限度減少延與沖突發,實際應用,數據塊虛擬存儲案稱式拓撲結構表現形式.
虛擬文件系統存儲案著重解決規模網路文件共享安全機制問題.通同站點指定同訪問許可權,保證網路文件安全.實際應用,虛擬文件系統存儲案非稱式拓撲結構表現形式.
虛擬存儲技術門課結合點
本期門課,所涉及虛擬存儲技術,實際虛擬存儲技術面,特指CPU間外存空間換取昂貴內存空間操作系統資源轉換技術
基本思想:程序,數據,堆棧超內存,操作系統程序前使用部保留內存,其部保存磁碟,並需要內存磁碟間態交換,虛擬存儲器支持道程序設計技術
目:提高內存利用率
管理式
A 請求式頁存儲管理
進程始運行前,裝入全部頁面,裝入或零頁面,根據進程運行需要,態裝入其頁面;內存空間已滿,需要裝入新頁面,則根據某種算淘汰某頁面,便裝入新頁面
B 請求式段存儲管理
能實現虛擬存儲,段式邏輯址空間程序段運行並全部裝入內存,同請求式頁存儲管理,首先調入或若干程序段運行,運行程調用哪段,根據該段度內存配連續區給使用.若內存沒足夠空閑區,則考慮進行段緊湊或某段或某些段淘汰,種存儲管理技術稱請求式段存儲管理
現團IDC網45元/美空間團購,便宜口碑
2.批處理、操作系統、實操作系統各特徵 3.道程序設計與重處理何區別 4.討論操作系統哪些角度發何統起 5.現代操作系統運行環境何要求 3 2 1.說進程由偽處理機執行程序 2.比較進程與程序聯系區別 3.我說程序並發執行導致終結失封閉性所程序都立試舉例說明 4.臨界區舉臨界區例 5.線程線程進程何區別 6.某高校計算機系設網路課並安排機實習假設機房共2m台機器2n 名選該課規定: ① 每2 組組各佔台機器協同完機實習; ② 組2 齊並且機房空閑機器該組才能進入機房; ③ 機實習由名教師檢查檢查完畢組同離機房 試用P、V操作模擬機實習程 7.今三並發進程RMP共享循環使用緩沖區B緩沖區B 共N單元進程R 負責輸入設備讀信息每讀字元存放緩沖區B 單元;進程M負責處理讀入字元若發現讀入字元空格符則改;進程P負責處理字元取並列印輸緩沖區單元字元進程P 取則用存放讀入字元請用PV操作同步機制寫能確並發執行程序 8.寫Reader-Writer 問題算避免由於斷Reader 現使Writer 限期等待 9. 設計C 程序(嵌入匯編語言)忙等待式實現信號量P、V操作 10. 設計C 程序實現產者-消費者問題 說明:8-10 課外實踐練習 4 3 1.進程調度功能哪些 2.進程調度機哪幾種 3.說進程文切換程文切換程序能破壞進程文結構 4.比較用幾種調度算 5.假設四道作業進入刻與執行間所示: 作業號 進入刻() 執行間() 1 10.00 0.4 2 10.10 1.0 3 10.20 0.6 4 10.30 0.2 單道程序環境別採用先先服務短作業優先調度算試說明調度順序及平均周轉間 5 4 1.虛擬存儲器其特點 2.態區管理用內存配算哪幾種比較各自優缺點 3.頁式管理靜態頁式管理實現虛存 4.請求頁式管理哪幾種用頁置換算比較優缺點 5.段式管理與頁式管理何區別 6.請求頁系統採用LRU 頁面置換算假進程頁面訪問順序4 32143543215配給該進程物理塊數M 別3 4 請計算訪問程發缺頁數缺頁率比較所結 7.設計算機4 頁框裝入間、近訪問間每頁訪問位、修改位所示(間鍾周期單位): 頁 裝入間 近訪問間 訪問位A 修改位M 0 126 279 0 0 1 230 260 1 0 2 120 272 1 1 3 160 280 1 1 1)NRU 置換哪頁 2)LRU 置換哪頁 3)FIFO 置換哪頁 8.已知段表: 段號 基址 度 合(0)/非(1) 0 219 600 0 1 2300 14 0 2 90 100 1 3 1327 580 0 4 1952 96 0 段存儲管理系統運行列邏輯址物理址 (1)0430 (2)110 (3)111 (4)2500 (5)3400 (6)4112 6 5 1.系統調用系統調用與般程調用何區別 2.Linux 操作系統引起進程調度機哪些 3.簡述 shell 命令Linux 實現程 4.Linux 系統進程候處理接收軟斷信號進程接收軟斷信號放 5.Windows 2000/xp 哪些情況進行線程優先順序提升 6.試描述使用Win32 API 實現線程同步般 7 6 1.文件、文件系統文件系統哪些功能 2.文件物理結構哪幾種說串聯文件結構適合隨機存取 3.文件目錄文件目錄包含哪些信息 4.實現文件系加快文件目錄檢索速度利用文件控制塊解假設目錄文件存放磁碟每盤塊512 位元組文件控制塊佔64 位元組其文件名佔8 位元組通文件控制塊解兩部第部佔10 位元組(包括文件名文件內部號)第二部占 56 位元組(包括文件內部號文件其描述信息) ① 假設某目錄文件共254 文件控制塊試別給採用解前解查找該目錄文件某文件控制塊平均訪問磁碟數 ② 般若目錄文件解前佔用 n 盤塊解改用 m 盤塊存放文件名文件內部號部請組訪問磁碟數減少條件 5.創建文件能發哪幾種情況應何處理 6.文件存取控制式哪幾種比較優缺點 7.文件系統採用級索引結構搜索文件內容設塊512 位元組每塊號3 位元組考慮邏輯塊號物理塊所佔位置別求二級索引三級索引定址文件度 8 7 1.設備管理目標功能 2.I/O 緩沖要引入I/O 緩沖 3.設備驅程序要設備驅程序用戶進程使用設備驅程序 4.單緩沖與雙緩沖情況系統塊數據處理間別 max(C,T)+M max(C,T)其C:CPU 計算間T:數據I/O 控制器緩沖區傳輸間M:數據緩沖區用戶工作區傳輸間 5.要引入設備獨立性何實現設備獨立性 6.某移臂磁碟柱面由外向順序編號假定前磁停100 號柱面且移臂向向現表1 所示請求序列等待訪問磁碟: 表1 訪問磁碟請求序列 請求序 1 2 3 4 5 6 7 8 9 10 柱面號 190 10 160 80 90 125 30 20 140 25 答面問題: ① 寫別採用短查找間優先算電梯調度算實際處理述請求序 ② 針本題比較述兩種算移臂所花間(忽略移臂改向間)言哪種算更合適簡要說明 9 8 1.ext2 文件系統磁碟I 節點內存I 節點 2.Linux 系統用於打文件系統調用open 格式 fd = open( pathname, flags) 其pathname 欲打文件路徑名flags 指示打式(讀、寫)open 返值文件描述符 1)給open 實現算 2)說明用戶文件描述符表、系統打文件表與I 節點表作用及三者間關系 3.Linux 系統文件共享哪兩種式 4.說明Linux 虛擬文件系統VFS 工作原理 5.說明Linux 虛擬文件系統VFS 查找文件程 6.塊設備驅程序 7.別給文件磁碟索引節點與內存索引節點引用數能於1情況 10 9 1.死鎖給產死鎖必要條件 2.三進程P1、P2 P3 並發工作進程P1 需用資源S3 S1;進程P2 需用資源S1 S2;進程P3 需用資源S2 S3答: (1) 若資源配加限制發情況?? (2) 保證進程確工作應採用資源配策略?? 3.某系統R1R2R3 三種資源T0 刻P1P2P3P4 四進程資源佔用需求情況表1 所示刻系統用資源向量(2, 1, 2)問題: ① 系統各種資源總數刻各進程各資源需求數目用向量或矩陣表示; ② P1 P2 均發資源請求向量Request(1, 0, 1)保持系統安全性應該何配資源給兩進程說明所採用策略原; ③ ②兩請求立刻滿足系統刻否處於死鎖狀態 表1 T0 刻P1P2P3P4 四進程資源佔用需求情況表 Maximum demand Current allocation R1 R2 R3 R1 R2 R3 P1 3 2 2 1 0 0 P2 6 1 3 4 1 1 P3 3 1 4 2 1 1 P4 4 2 2 0 0 2 4.解決死鎖問題幾種哪種容易實現哪種使資源利用率高