1.1.1 檔案及其分類
一、對比----以前認識和現在認識:
1)old:檔案是最小單元,不能再細分。
new:域是最小單元。域--->記錄----->檔案
2)old:域---記錄---檔案,該格式以為是資料庫檔案的獨創。
new:該格式是檔案的先創,資料庫檔案在此基礎上的推演。
(再次體現大道理:任何新生事物都以以前事物為基礎,在其上發生小的微變。)
二、疑問:
乙個音訊檔案:其記錄是什麼?其域是什麼?
乙個office檔案(比如word檔案):其記錄是什麼?其域是什麼?
cc:例:
基本資料項:學號、姓名;
組合資料項:經理:正經理和副經理;
記錄:乙個學生:學生: 學號、姓名、班級……
醫療物件:病歷號、姓名、姓名……
檔案:物件集。
對比:txt:資料項:字元;
記錄:一段文字;
檔案:整個檔案;
記錄:橫向的一屏畫素;
2:(也可能沒有,資料庫三層,可以簡化成兩層:記錄就是一條資料項!-->簡化資料庫模型:項,資料庫;-->簡化檔案模型:資料項,檔案)
資料項:畫素;
記錄:一幀;
檔案:檔案;
2)資料庫檔案與檔案(檔案系統中的檔案),在域---記錄的形式上有何異同?
不同的檔案格式,儲存組織方式都是不一樣的。
3)書中說:「大多數檔案系統不支援變長的域」
cc:根本上來講,作為任何乙個最基本的單元,都一定是最簡單的,不可在劃分的,基本單元。
所以,可變了,就不簡單了,可劃分了,不適合做域!
另外,作為任何事物的基本構件,效率一般很重要,可變的話,不太合適。
(1)主流的windows、類unix系統支援嗎?哪些系統支援變長域,哪些系統不支援?
cc:不知道。
(2)資料庫系統支援變長域嗎?
cc:支援,blob型別,其他型別,確定;
(3)從物理儲存的角度看:存在變長的域到底給檔案(或者更準確的說:給檔案的增刪改查)帶來哪些複雜性?
cc: 1.檢索;
2.檔案多分割槽讀取,整合。
三、推廣、演繹:
1)書中說:「記錄是相關域的集合,可以看成是將乙個單元**用程式使用」,「使用者和應用程式把檔案當成單個實體」。
(1)站在應用程式的角度看:記錄是其操作檔案的最小單元,而非域。
(2)此處不要認為「操作」的最小單元就應該被當成單個實體,為什麼呢?(cc:??不明白問題?)
個人認為:同乙個檔案內的各個記錄有相同的訪問控制屬性、具體的絕對檔案路徑等。因此將檔案定為單個實體,比將記錄定為單個實體,在管理上要方便、簡單的多。(具體答案後續書中應該會提供)
2)書中說:「訪問控制常常在檔案層上進行」,則非在記錄層上或者域層。
(1)為什麼呢?答案同1)(2)個人認為
(2)主流的windows、類unix系統是在檔案層上進行的訪問控制嗎?哪些系統是,哪些系統不是?
cc:linux一切皆檔案:
設計乙個系統的終極目標往往就是要找到原子操作,一旦鎖定了原子操作,設計工作就會變得簡單而有序。「檔案」作為乙個抽象概念,其原子操作非常簡單,只有讀和寫,這無疑是乙個非常好的模型。通過這個模型,api的設計可以化繁為簡,使用者可以使用通用的方式去訪問任何資源,自有相應的中介軟體做好對底層的適配。
windows不是,unix和linux是。
3)檔案管理 = 檔案說明 + 檔案體
個人認為:檔案說明存放著檔案路徑、訪問控制許可權、檔案型別、磁碟儲存方式(具體答案後續書中應該會提供)。因此非常重要!!!
4)書中說:「檔案的許可權由檔案所有者或系統授予」
(1)哪些檔案的許可權是檔案所有者能修改(授予)的,哪些是系統修改(授予)的?
使用者檔案---檔案所有者,
庫檔案,系統檔案----系統。
但是個人認為:有時候利用命令工具也能修改庫檔案、系統檔案。(cc:意見一致)
(2)如何修改?<1>通過圖形介面操作來修改 <2>通過命令工具(此處只談類unix系統)chmod來修改rwx訪問屬性。
三、舉例:
1)按用途分
(1)使用者檔案:使用者自己建立的word文件、text文字等。
(2)庫檔案:比如:ios中uikit庫中的uiview.h檔案則是庫檔案
(3)系統檔案:如windows中c盤中的一些檔案。具體名字麻煩大家指出。
2)按訪問控制屬性分:
省略。
9 檔案與檔案系統
1.讀寫檔案 open 方法用於開啟乙個檔案,並返回檔案物件 注意 1 使用 open 方法一定要保證關閉檔案物件,即呼叫 close 方法。2 open 函式常用形式是接收兩個引數 檔名 file 和模式 mode open file mode r fo open r.txt wb print 檔...
檔案系統 磁碟管理 四 檔案系統管理
檔案系統管理 檔案系統管理屬於核心的功能 當乙個磁碟進行分割槽後,只能通過格式化才能使用這個分割槽,而這個格式化是高階格式化 建立檔案系統 因為檔案系統對的管理屬於核心功能,所以通過檢視 proc filesystems檔案來看核心支援的檔案系統型別都有哪些。mkfs make file syste...
Linux檔案系統和管理 1檔案系統目錄
root c8 1 ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var root c8 1 ll total 20 lrwxrwxrwx.1 root root 7 may 1...