簡介,檔案的分類,分類的目的,按照檔案性質和用途分類,檔案的保護方式,檔案的保存期限,檔案的後綴,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,檔案系統,
簡介
檔案的分類
分類的目的
對不同檔案進行區分和管理,提高系統效率;提高用戶界面友好性。
按照檔案性質和用途分類
檔案的保護方式
唯讀檔案,讀寫檔案,執行檔,不保護檔案。
檔案的保存期限
檔案的後綴
exe, com, bin:執行檔;c, cc, cpp, java, pas:程式原始碼;bat, sh: 命令檔案;txt, doc: 文本數據,文本文檔;lib, dll: 庫檔案;zip, rar: 壓縮檔案;mpeg, mov, rm: 多媒體檔案。
A
ACCESS.CHM - Windows幫助檔案
ADVAPI32.DLL - 高級Win32套用
程式接口
B
BIGMEM.DRV - BIGMEM虛擬設備
C
CDFS.VXD - CDROM檔案系統
CDPLAYER.HLP - CD播放器幫助檔案
CHOOSUSR.DLL - 網路客戶
CHOKD.WAV - 聲音檔案例子
CIS.SCP -
腳本檔案(演示如何建立與CompuservePPP連線)
CLAIRE~1.RMI - MINI序列
CLIP.INF - 安裝
信息檔案(剪粘板查看器)
CLOSEWIN.AVI - 影片剪輯(AVI)(如何關閉視窗)
CMC.DLLail - API1.0公共信息調用
COMBUFF.VXD - COM端虛擬設備
COMCTL32.DLL - 32位Shell組件
COMDLG32.DLL - 32位公共對話庫
COMMDLG.DLL - 16位公共對話庫
COMMON.HLP - OLE幫助檔案
COMPOBJ.DLL - OLE16/32互*作庫
CONAGEN.EXE - 32位控制支持
CONFAPI.DLL - Microsoft網路組件
CONFIG.SYS - 配置檔案
CONFIG.TXT - 自述檔案(配置檔案如何使用
命令)
CONTROL.EXE - "控制臺"應用程式
COOL.DLL - 統一資源定位檔案
CP-1250.NLS - 自然語言支持檔案
CPQNDIS.DOS - 網卡驅動程式
CPQNDIS3.VXD - Compaq以太控制器NDIS
驅動程式CR3240.EXE - DOS6.22文版CR3240
印表機驅動程式
CRTDLL.DLL - Microsoft C運行時間庫
CSETUP.EXE - MSDOS6.22文設定
程式CSETUP.WIN - CSetup.exe支持檔案
CSMAPPER.SYS - 系統檔案(支持PCMCIA)
CSPMAN.DLL -
動態程式庫(SoundBlaster 16 Driver)
CTRLPAN.EXE - MSDOS6.22文版控制
程式D
DBLBVFF.SYS - 雙緩衝驅動程式
DCIMAN.DLL - 顯示控制接口
DCIMAN32.DLL - 顯示控制接口
DEBMP.DLL - 光柵顯示設備
DEBUG.EXE - Debug調試工具
DECPSMW4.INF - 安裝
信息檔案(DEC印表機安裝)
DECLAN.VXD - DECLAN
網卡驅動程式
DEFRAG - 打開"選定驅動器"視窗
DEL.INF - 安裝信息檔案
DEMET.DLL - 向量顯示工程
DESKTOP.MSN - Microsoft網路組件
DESS.DLL - 表格顯示工程
DEWP.DLL - 字處理顯示工程
DIALER.CNT - 對話幫助
DIALER.HLP - 電話撥號幫助檔案
DIALMON.EXE - 撥號監視
程式(IE2.0)
DIBENG.DLL - 獨立設備位同工程
DICONIX.DRX -
印表機驅動 非常棒^__^.WAN - 聲音檔案例子
DIRECTCC.EXE - 直接線纜連線
應用程式DISKDRV.INF - 安裝信息
DISPLAY.TXT - 顯示卡README檔案
DRAGDROP.AVI - 影片剪輯(AVI)(如何使用拖拽)
DRVSPACE.HLP -
磁碟空間管理幫助檔案
E
EDLIN.EXE - DOS行編輯器
ENABLE.INF - 初始化信息
ENGCT.EXE - MSN支持檔案
EUDCEDIT.HLP - 幫助檔案(造字
程式)
EVX16.DOS - 網卡驅動程式
EWRK3.SYS - 網卡驅動程式
EXCEL.XLS - Excel5.0檔案模板
EXCEL4.XLS - Excel4.0檔案模板
EXCHANGE.TXT - Inbox和Exchange自述檔案
EXCHNG.CNT - Mail/Exchange幫助檔案內容
EXCHNG.HLP - Mail/Exchange組件
EXCHNG32.EXE - 對用戶交換機作初始設定
EXPLORER.AVI - 影片剪輯(AVI)(如何使用
資源管理器)
EXPLORER.EXE - "資源管理器"應用程式
EXPO.HLP - 幫助檔案(產品信息)
EXPOSTRT.EXE - 產品信息
應用程式 EXTRACT.EXE -
解壓縮工具
EXTRA.TXT - 自述檔案(在線上訪問附加檔案)
F
FAQ.TXT - 疑難解答自述檔案
FAXCOVER.EXE - 封面編輯器
FD8XX.MPD - SCSI驅動程式
FDISK.EXE - DOS
命令,
硬碟建立、刪除及顯示當前分區
FILEXFER.CNT -
檔案傳輸幫助檔案內容
FILEXFER.EXE - Microsoft
檔案傳輸FIND.AVI - 影片剪輯(如何使用查找)
FINDMVI.DLL - 媒體視覺支持
FLSIMTD.VXD - PCMCIA支持
FLSIMTD.VXD - PCMCIA支持
FURELI~1.RMI - MINI序列
G
GBK.TXT - 文Windows95GBK
代碼集字元定義表
GDI.EXE - 簡版WIN3.1圖形界面
GDI32.DLL - 32位GDI圖形界面
GENERAL.IDF - 一般MIDI指示器
GRPCONV.EXE - Windows
程式組轉換器
H
HOSTS.SAM - TCP配置
HPCLRLSK.ICM - 列印簡介
HPJAHLP.CNT - JetAdmin
程式幫助檔案
HPJD.DLL - HPJetAdmin支持
程式HPLJ300.DRV - HPLJ300DPI印表機
驅動程式HPLJ600.DRV - HPLJ600DPI
印表機驅動程式
HPNETPRN.INF - HPJetAdmin支持
程式HPPRARBK.DLL - HPJetAdmin支持
程式HPPRARRK.HLP - HPJetAdmin支持
程式幫助檔案
HSFLOP.PDR - HSFLOP虛擬設備
HYPERTRM.CNT - 終端設備幫助檔案
HYPERTRM.HLP - "超級終端"幫助
I
IB401917.SPD - 印表機驅動程式
IBM20470.SPD - 印表機驅動程式
IBM20K.DOS - 網路適配器驅動程式
ICONLIB.DLL - 圖符庫
IEXPLORE.CNT - 幫助索引檔案
(IE) IEXPLORE.EXE - InternetExplore IEXPLORE.HLP - 幫助檔案
(IE) IFSHLP.SYS - 檔案系統安裝幫助檔案
IMAGEOIT.EXE - 圖象編輯器游標程式
IMCLIENT.DLL - Microsoft網路組件
IME.HLP - Windows幫助檔案
IMEGEN.EXE - 輸入法生成器
IMEGEN.HLP - 幫助檔案(輸入法生成器)
IMEINFO.INI - 輸入法初始化檔案
INBOX.EXC - 郵件組件
INDICDLL.DLL - 語言組件
INET.TXT - IE自述檔案
INET16.DLL -
動態程式庫(支持IE2.0)
INETAB32.DLL -
動態程式庫(支持Internet mail)
INETCFG.DLL -
動態程式庫(支持IE2.0)
INETCPL.CPL -
控制臺檔案(配置IE2.0)
INETMAIL.INF - 安裝
信息檔案(Internet mail)
INETWIZ.EXE - Internet安裝精靈
INformS.WPF - 樣板檔案
INSTBE.BAT - Microsoft網路組件
INSTDICT.EXE - MSDOS
命令(輸入法安裝
程式)
INTB.VXD - 13號斷虛擬設備
INTL.CPL - 控制臺
INT-MAIL.CNT - 幫助索引檔案
(Internet mail) IOS.INI - 設定需要安全保護
程式IO.SYS - Windows啟動檔案(隱藏)
IRMATR.DOS - 網路適配器驅動程式
ISAPNP.VXD - ISA匯流排
即插即用程式
J
JOYSTICK.INF - 媒體安裝信息
JUNGLE~1.WAV - 聲音檔案
K
KBDBR.KBD - 巴鍵盤格式
KDCOLOR1.SPD - 印表機驅動程式
KODAKCE.ICM - 柯達ICC配置檔案
L
LFNBK.TXT - LFNBK自述檔案
LICENSE.HLP - Windows幫助檔案
LMSCRIPT.EXE - LAN管理器文稿處理
程式LOGIN.EXE - Win95登錄NetWare檔案
LQ1600K.EXE - LQ1600K列印
驅動程式M
MAILOPT.INF - MAIL/MAPI設定檔案
MAPI.DLL - Mail/Exchange組件
MCIAVI.DRV - 媒體驅動程式
MCIOLE.DLL - MCIOLE句柄
MCIVISCA.DRV - MCIVCR
驅動程式MCIWAVE.DRV - MCI Ware驅動程式
MDMNOKIA.INF - 安裝
信息檔案(modem)
MDMNOVA.INF - 安裝
信息檔案(modem)
MDMVV.INF - 安裝
信息檔案(modem)
MEMMAKER.INF - 記憶體
管理程式設定信息
MFCUIA32.DLL - OLEI公共對話
動態程式庫MINET32.DLL - 支持Internet Mail
動態程式庫MKECR5XX.MPD - SCSI驅動程式
ML3XEC16.EXE -
應用程式(MAPI)
MLSHEXT.DLL - 微軟核擴展庫
MMDRV.HLP - 媒體幫助檔案
MMSOUND.DRV - 媒體驅動程式
MOVEWIN.AVI - 影片剪輯(如何移動視窗)
MSBASE.INF - 設定信息
MSCDEX.EXE - DOS MSCDEX CDROM擴展工具
MSCDROM.INF - 類安裝設定信息
MSD.INI - 微軟診斷初始化
MSDET.INF - 系統檢測設定信息
MSDISP.INF - 顯示設定信息
MSDLG.EXE - 數據連結控制協定
MSDOS.INF - 設定信息
MSDOSDRV.TXT - 設備
驅動程式自述檔案
MSFT.VRL - 統一資源定位檔案
MSGSRV32.EXE - Windows32位虛擬設備信息系統
MSMAIL.INF - Mail/MAPI初始化
MSMOUSE.INF - 滑鼠設定信息
MSN.TXT - 微軟網路自述檔案
MSNET32.DLL - 微軟32位網路API庫
MSNPSS.HLP - 微軟網路幫助檔案
MSNVER.TXT - 微軟網路幫助信息
MSPAINT.EXE - 畫圖工具
MSPCIC.DLL - PCMCIA類安裝與控制工具
MSPORTS.INF - 公共設定信息
MSPWL32.DLL - 口令清單管理庫
MSSNDSYS.DRV - Windows聲音系統
驅動程式MSSP.VXP - Windows NT安全支持
MSTCP.DLL - TCP用戶界面
MSVIEWUT.DLL - 顯示設備服務數據程式庫
MTMMINIP.MPD - SCSI驅動程式
MULLANG.INF - 種語言
字型支持設定信息
N
NBTSTAT.EXE - TCP工具
NDDEAPI.DLL - Workgroups DDE共享接口
NDDENB.DLL - 微軟
網路DDE NetBIOS接口
NET.INF - 網路檢測信息
NET.MSG - 網路客戶信息
NET3COM.INF - 網路設定信息
NETAMD.INF - 網路設定信息
NETAPI32.DLL - 32位網路API
動態程式庫
NETAVXT.INF - MS內部傳輸檔案
NETBIOS.DLL - NetBIOSAPI庫
NETDCA.INF - 安裝信息檔案
NETDET.INI - NetWare檢測檔案
NETDI.DLL - 網路設備安裝
NETH.MSG - 網路客戶幫助信息
NETOS.DLL - NOS檢測DLL
NETWORK.TXT - 網路信息自述檔案
NODRIVER.INF - 即插即用設備信息
NOTEPAD.EXE - NOTEPAD檔案
NSCL.VXD - NSCL虛擬設備
NW16.DLL - NetWare客戶
NWLSPROC.EXE - NetWare登錄處理器
NWNET32.DLL - NetWare客戶
NWNP32.DLL - NetWare組件
NWREDIR.VXD - NetWare重定向
NWSERVER.VXD - NCP服務
NWSP.VXD - NCP服務安全提供
O
OEMREVA.INF - 安裝信息檔案
OLE2.INF - OLE設定信息
OLE32.DLL - 32位OLE2.0組件
OLEAUT32.DLL - OLE2-32自動化
OLEDLG.DLL - Windows OLE2.0
用戶接口支持
OLESVR.DLL - 對象連結與嵌入服務端庫
OLETHK32.DLL - OLE形實替換
程式庫P
PBRVSH.EXE - "畫圖"應用程式
PDOS95.BAT - 進入文DOS狀態
PING.EXE - TCPPing工具
PPPMAC.VXD - Windows虛擬PPP
驅動程式PRINT.EXE - DOS列印檔案
PRINTERS.TXT - 列印信息自述檔案
Q
QUIKVIEW.EXE - 快速查看
QUIT.EXE - 退出文DOS狀態
R
README.TXT - Windows95自述檔案
REGEDIT.EXE - 註冊編輯器
RNAUI.DLL - 遠程網路存取
用戶接口DLL
ROMAN.FON - 字型檔案
RPCRT4.DLL - 遠程調用庫
RPCSS.EXE - 遠程調用結點映象
RPLIMAGE.DLL - 遠程
程式裝入
磁碟映象器
RSRC16.DLL - 資源計量器
RSRCMTR.EXE - 資源計量器
RSRCMTR.INF - 資源計量器
RUMOR.EXE - DDE測試/遊戲
RUNDLL.EXE - 把DLL作為
應用程式運行
RUNDLL32.EXE - 32位殼組件
S
S3.DRV - S3顯示驅動
S3.VXD - S3虛擬設備
SACLIEN.DLL - Microsoft網路組件
SAMPLEVIDEOS - 圖象檔案
SAPNSP.DLL - Winsock
數據連線庫
SB16.VXD - 16位音效卡虛擬設備
SBAWE.VXD - AWE音效卡虛擬設備
SBAWE32.DRV - AWE音效卡驅動
SBFM.DRV - 16位音效卡驅動
SCANDISK.BAT - MSDOS6.x Scandisk替代存根模組
SCANDISK.PIF - 安裝
磁碟診斷工具時PIF檔案
SCSI.INF - SCSI安裝檔案檔案名稱描述
SCSIIHLP.VXD - SCSI支持檔案
SCSIPORT.PDR - SCSI虛擬設備口
SECUR32.DLL - Microsoft Win32安全服務
SECURCL.DLL - Microsoft網路組件
SEIKO24E.DRV - 印表機驅動
SEIKOSH9.DRV - 印表機驅動
SERIFE.FON - 字型檔案
SETMDIR.EXE - SBS檔案
SETUP.BIN - 安裝支持檔案
SETUP.EXE - Windows95安裝
程式SETUP.INF - 安裝信息檔案
SETUP.TXT - 安裝時README檔案
SETUP4.DLL - 安裝支持檔案
SETUPPP.INF - 安裝信息
SETUPX.DLL - 安裝支持
SETVER.EXE - MSDOS版本顯示,該
程式可網路執行
SF4029.EXE - 印表機驅動
SHELL.INF - 安裝殼信息
SHELL.VXD - 虛擬殼設備
SHELL2.INF - 顏色組合
SHELL3.INF - 顏色組合
SIZENESW.ANI - 活動游標
SIZEWE.ANI- 活動游標
SKPSFA-1.SPD - 印表機驅動
SLAN.DOS - 網路適配器驅動
SLCD32.MPD - SCSI驅動器
SLENH.DLL - 高級節能選項
SMALLE.FON - 字型檔案
SMALLF.FON - 字型檔案
SNAPSHOT.EXE - 抽點
SNAPSHOT.VXD - 抽點虛擬設備
SNIP.VXD - 網路適配驅動器
SOCKET.VXD - Windows虛擬Socket
網卡驅動器SOCKET.VXD PCMCIA支持
SOL.HLP - 紙牌遊戲幫助檔案
SOUNDREC.CNT - 錄音機幫助檔案內容
SOUNDREC.HLP - 錄音機幫助檔案
SPARROW.WPD - SCSI驅動器
SPARROWX.MPD - SCSI驅動器
SPOOL32.EXE - 印表機支持
SRAMMTD.VXD - PCMCIA支持
SSERIFE.FON - 字型檔案
SSERIFF.FON - 字型檔案
SSFLYWIN.SCR - 螢幕保護
SSSTARS.SCR - 螢幕保護
STAR24E.DRV - 印表機驅動
STAR9E.DRV - 印表機驅動
STATE.PBK - Microsoft網路組件
STDOLE.TLB - OLE2.0檔案
STDOLE32.TLB - OLE2-32檔案
STEMO409.DLL - Windows95幫助檔案
DLL STLSO4SS.SPD - 印表機驅動程式
STLS577U.SPD - 印表機驅動程式
STRN.DOS - 網路適配器驅動
SUBST.EXE - MSDOS Subst實用
程式SUEXPAND.DLL - LZ DLL安裝
SUHELPER.BIN - 安裝支持
SUPERVGA.DRV - 高級VGA顯示驅動
SURPORT.TXT - PSS支持信息
SVCPROP.DLL - Microsoft網路組件
SVRAPI.DLL - 32位公用伺服器API實用
程式SXCIEXT.DLL - Matrox顯示驅動支持檔案
SYMBOLE.FON - 字型檔案
SYSCLASS.DLL - 系統類庫安裝
SYSDETMG.DLL - 系統檢測庫
SYSEDIT.EXE - 系統編輯器
SYSLOGO.RLE - 系統標識
SYSMON.HLP - 系統監控幫助
SYSTEM.DRV - 最Win3.1標準模式
SYSTHUNK.DLL - Windows系統形實替換
程式庫
SYSTRAY.EXE - 高級節能管理
T
T128.MPD - SCSI驅動器
T160.MPD - SCSI驅動器
T20N3.VXD - 網路適配驅動器
T30ND.DOS - 網路適配驅動器
T338.MPD - SCSI驅動器
TADA.WAV - 聲音檔案
TAPI32.DLL - 32位形實替換
TAPIEXE.EXE - API通話組件
TAPIINI.EXE - API通話組件
TCCARC.DOS - 網路適配驅動器
TCTOKCH.VXD - 網路適配驅動器
TELEPHON.CPL - 通話幫助
TESTPS.TXT - PostScript測試
TEXTCHAT.EXE - Microsoft網路組件
THEMIC-1.WAV - 聲音檔案
THINKJET.DRV - 印表機驅動
THREED.VBX - Windows95瀏覽
T1850.DRV - 印表機驅動
TIMES.TTF - 時間字型
TIMESBD.TTF - 時間粗體字型
TIMESBI.TTF - 時間粗斜體字型
TIMESI.TTF - 時間斜體字型
TIMEZONE.INF - 安裝信息
TIMLP232.SPD - 印表機驅動
TIPS.txt - 提示和技巧自述檔案
TKPHZR32.SPD - 印表機驅動
TLNK.DOS - 網路適配驅動器
TLNK3.VXD - 網路適配驅動器
TMV1.MPD - SCSI驅動器
TOOLHELP.DLL - 16位開工具幫助器
TOSHIBA.DRV - 印表機驅動
TOUR.EXE - 瀏覽檔案
TPHAIII.ICM - 印表機簡介
TRACERT.EXE - TCP/IP IRACEROUTE
命令TREEEDCL.DLL - Microsoft網路組件
TREENVCL.DLL - Microsoft網路組件
TRIUMPHI.SPD - 印表機驅動
TSD32.DLL - 聲音壓縮管理器
TSENG.DRV - ET4000W32顯示驅動
TYPELIB.DLL - OLE2.0
U
U9415470.SPD - 印表機驅動
UBNEI.DOS - 網路適配器驅動
ULTRA124.MPD - SCSI驅動器
ULTRA24F.MPD - SCSI驅動器
UNIDRV.DLL - Microsoft通用
印表機驅動庫
UNIDRV.HLP - 通用印表機驅動幫助
UNIMODEM.VXD - 通用數據機驅動
USER32.DLL - 32位用戶
V
V86MMGR.VXD - V86MMGR虛擬設備
VCACHE.VXD - VCache虛擬設備
VCOND.VXD - Win32控制台
VDMAD.VXD - VDMAD虛擬設備
VER.NEW - 版本檢測與檔案安裝庫
VFAT.VXD - VFAT檔案系統
VGA.DRV - VGA顯示驅動程式
VIP.386 - TCP/IP虛擬IP設備
VJOYD.VXD - 遊戲棒虛擬設備
VLB32.DLL - Mail/Exchange組件
VMM32.VXD - 虛擬存儲管理設備
VNETBIOS.VXD - VNETBIOS虛擬設備
VPICD.VXD - 虛擬可程式干擾控制器設備
VPOWERD.VXD - 高級電源管理虛擬設備
VREDIR.VXD - Microsoft網路32位客戶端
程式VSERVER.VXD - Microsoft網路32位伺服器端
程式VSPP.DLL - PowerPoint語法分析
程式VSTIFF.DLL - TIFF檔案語法分析
程式VSWORD.DLL - Word檔案語法分析
程式VSWP5.DLL - WordPerfect5檔案語法分析
程式VSXL5.DLL - Excel檔案/圖表語法分析
程式VTCP.386 - TCP/IP虛擬TCP
驅動程式VTDAPI.VXD - VTDAPI虛擬設備
W
WAVE.INF - 即插即用音波設備信息
WDTOOOEX.MPD - SCSI驅動
WGPOADMN.DLL - Mail/Exchange組件
WIN87EM.DLL - 80387數學仿真庫
WINABC.HLP - 智慧型ABC幫助檔案
WINDOWS.CNT - Windows95幫助檔案內容
WINDOWS.HLP - Windows95幫助檔案
WINFILE.CNT - 檔案管理器幫助檔案內容
WINFILE.EXE - Windows工作組檔案管理器
WINFILE.HLP - 檔案管理器幫助檔案
WINGB.HLP - 區位碼輸入法幫助檔案
WINHLP23.HLP - Windows幫助檔案
WINIME.HLP - *作指幫助檔案
WININIT.EXE - Windows初始化檔案
WINIPCFG.EXE - TCP/IP配置工具
WINNEWS.TXT - Winnews信息
WINPHO.HLP - 繁體注音輸入法幫助檔案
WINPOPUP.EXE - POPUP工具
WINREG.DLL - 遠程註冊支持
WINSOCK.DLL - Windows套接API
WINXSP.HLP - GBK雙拼輸入法幫助檔案
WINZM.HLP - 鄭碼輸入法幫助檔案
WNASPI32.DLL - Windows DLL32位ASPI WPSUNI.DRV - 傳真驅動程式
WPSUNIRE.DLL - WPS
主機資源執行
程式X
XCOPY.EXE - DOS XCOPY工具
XGA.DRV - XGA顯示驅動程式
檔案系統
作業系統中負責管理和存儲檔案信息的軟體機構稱為
檔案管理系統,簡稱檔案系統。檔案系統由三部分組成:與檔案管理有關的軟體、被管理的檔案以及實施檔案管理所需的
數據結構。從系統角度來看,檔案系統是對檔案
存儲器空間進行組織和分配,負責檔案的存儲並對存入的檔案進行保護和檢索的系統。具體地說,它負責為用戶建立檔案,存入、讀出、修改、轉儲檔案,控制檔案的存取,當用戶不再使用時撤銷檔案等。
檔案系統是
作業系統用於明確
磁碟或分區上的檔案的方法和數據結構;即在磁碟上組織檔案的方法。也指用於存儲檔案的
磁碟或分區,或檔案系統種類。因此,可以說"我有2個檔案系統"意思是他有2個分區,一個存檔案,或他用"擴展檔案系統",意思是檔案系統的種類。
磁碟或分區和它所包括的檔案系統的不同是很重要的。少數
程式(包括最有理由的產生檔案系統的程式)直接對
磁碟或分區的原始
扇區進行操作;這可能破壞一個存在的檔案系統。大部分
程式基於檔案系統進行操作,在不同種檔案系統上不能工作。
一個分區或
磁碟能作為檔案系統使用前,需要初始化,並將記錄數據結構寫到磁碟上。這個過程就叫建立檔案系統。
大部分UNIX檔案系統種類具有類似的通用結構,即使細節有些變化。其中心概念是超級塊superblock,i節點inode,
數據塊datablock,
目錄塊directoryblock,和間接塊indirectionblock。超級塊包括檔案系統的總體信息,比如大小(其準確信息依賴檔案系統)。i節點包括除了名字外的一個檔案的所有信息,名字與i節點數目一起存在
目錄中,目錄條目包括檔案名稱和檔案的i節點數目。i節點包括幾個
數據塊的數目,用於存儲檔案的數據。i節點中只有少量
數據塊數的空間,如果需要更多,會動態分配指向數據塊的
指針空間。這些動態分配的塊是間接塊;為了找到
數據塊,這名字指出它必須先找到間接塊的號碼。
UNIX檔案系統通常允許在檔案中產生孔(hole)(用lseek;請看手冊),意思是檔案系統假裝檔案中有一個特殊的位置只有0位元組,但沒有為這檔案的這個位置保留實際的
磁碟空間(這意味著這個檔案將少用一些磁碟空間)。這對小的二進制檔案經常發生,Linux共享庫、一些
資料庫和其他一些特殊情況。(孔由
存儲在間接塊或i節點中的作為
數據塊地址的一個特殊值實現,這個特殊地址說明沒有為檔案的這個部分分配數據塊,即,檔案中有一個孔。)
孔有一定的用處。在筆者的系統中,一個簡單的測量工具顯示在200MB使用的
磁碟空間中,由於孔,節約了大約4MB。在這個系統中,
程式相對較少,沒有
資料庫檔案。
下面是檔案系統的代碼,根據這個代碼我們可以更好地了解檔案系統的工作流程
1.main.cpp
#include"head.h"
#include"blockinodesuperblock.h"
#include"initial.h"
#include"userop.h"
#include"file.h"
#include"dir.h"
#include"command.h"
#include"chsome.h"
/////////////////////////////////////////////////////////////////////////////////////////
voidmain()
{
control.open("control.txt",ios::in|ios::out|ios::nocreate);
inti;
control>>i;
control.close();
if(i!=0)//不為0就初始化
{
initial();
}
control.open("control.txt",ios::in|ios::out|ios::nocreate);
control.seekp(0);
control