CHƯƠNG 9: GIAO TIẾP VỚI HỆ THỐNG FILE

 Tổng quan về dữ liệu và file  Các thuộc tính & thao tác trên file  Các phương pháp truy cập file  Tổ chức thư mục  Mount hệ thống file  Bảo vệ hệ thống file  Sao lưu và phục hồi dữ liệu

TỔNG QUAN VỀ DỮ LIỆU & TỔNG QUAN VỀ DỮ LIỆU & FILEFILE

 YêuYêu cầucầu llưưuu trữtrữ củacủa useruser

 LLưưuu trữtrữ lâulâu dàidài nhanh  TruyTruy cậpcập nhanh nhiêu dữdữ liệuliệu  LLưưuu đđựocựoc nhiêu  ChiaChia xẻxẻ vàvà bảobảo vệvệ tốttốt dụng  DễDễ sửsử dụng

 cầncần sựsự hỗhỗ trợtrợ củacủa phầnphần cứng  KháiKhái niệmniệm filefile (tập(tập tin, cứng vàvà OSOS tệp) tin, tệp)

 ĐĐơơnn vịvị llưưuu trữtrữ luậnluận lýlý củacủa OSOS loại:: chchươươngng trình  PhânPhân loại  CóCó thểthể có/có/ không

trình hoặchoặc dữdữ liệuliệu

không cócó cấucấu trúctrúc::

2

 Thuộc

CÁC THUỘC TÍNH & CÁC THUỘC TÍNH & THAO TÁC TRÊN FILE THAO TÁC TRÊN FILE attribute)) Thuộc tínhtính filefile ((filefile attribute Tên,Tên, kiểu,

kiểu, vịvị trítrí llưưuu trũtrũ ,, kíchkích cỡ,cỡ, thông

thông tintin bảobảo vệvệ……

operation))  ThaoThao táctác vềvề dữdữ liệuliệu trêntrên filefile ((datadata operation truncate delete, truncate

seek, delete,

read, seek,

create, open( close

create, write,write, read, open(FFii)) close ((FFii))

 ThaoThao táctác vềvề đđặtặt têntên filefile ((naming

TạoTạo hardhard link, Thiết lậplập thuộc Thiết

link, soft thuộc tính,

operation)) naming operation rename, link, rename, thuộc tínhtính

soft link, tính, lấylấy thuộc

3

CẤU TRÚC DỮ LIỆU QUẢN LÝ CẤU TRÚC DỮ LIỆU QUẢN LÝ FILEFILE  BảngBảng thông

((OpenOpen FileFile Table Table))..

 DànhDành chocho nn quáquá trình trình dùng  ChứaChứa:: biếnbiến đđiếmiếm sửsử dụng,

thông tintin vềvề cáccác filefile đđangang mởmở dùng chung dụng, thuộc chung mộtmột filefile thuộc tínhtính file, file, vịvị trítrí filefile trêntrên đđĩa,ĩa,

concon trỏtrỏ đđếnến vịvị trítrí củacủa filefile trong trong bộbộ nhớnhớ..

 BảngBảng thông ((PerPer--process

process FileFile Table

từng quáquá trình trình chứa:: file, bảngbảng nàynày chứa trong OpenOpen FileFile TableTable

trong filefile

rw) trình vớivới filefile (r,(r, w,w, rw)

thông tintin vềvề cáccác filefile củacủa từng Table)):: VớiVới mỗimỗi file,  ConCon trỏtrỏ đđếnến mụcmục ttươươngng ứngứng trong  VịVị trítrí hiệnhiện tạitại trong  ChếChế đđộộ truytruy cậpcập củacủa quáquá trình buffer  ConCon trỏtrỏ tớitới filefile buffer

4

TÁC VỤ FILE (1) TÁC VỤ FILE (1)

thông tintin quảnquản lýlý filefile

Create(name)  TạoTạo filefile:: Create(name) không giangian llưưuu trữtrữ descriptor chứa

chứa thông descriptor vàovào ththưư mụcmục chứa

chứa filefile

chứa filefile

 CấpCấp không  TạoTạo filefile descriptor  ThêmThêm filefile descriptor  XoáXoá filefile:: Delete(name) Delete(name)  TìmTìm ththưư mụcmục chứa  GiảiGiải phóng  XoáXoá filefile descriptor

chứa filefile

 MởMở filefile:: file_id

phóng cáccác khốikhối đđĩaĩa dànhdành chocho filefile descriptor khỏikhỏi ththưư mụcmục chứa Open(name, mode)mode)

file_id == Open(name,

quyền sửsử dụngdụng filefile.. count củacủa filefile..

thống thông tintin quảnquản lýlý filefile đđangang mởmở vàovào bảngbảng filefile củacủa hệhệ thống

 KiểmKiểm tratra filefile cócó mởmở hayhay chchưưaa  chiachia xẻxẻ filefile..  KiểmKiểm tratra quyền  TTăăngng openopen count  TạoTạo vàvà thêmthêm thông trình.. vàvà củacủa quáquá trình Close(file_id) ??  ĐóngĐóng filefile:: Close(file_id)

5

TÁC VỤ FILE (2) TÁC VỤ FILE (2)

 ĐọcĐọc filefile::

 Read(file_id,  Read(file_id,

nhiên buf_addr) :: đđọcọc ngẫungẫu nhiên

 GhiGhi filefile::

 TTươươngng tựtự đđọcọc filefile  ThựcThực hiệnhiện copycopy dữdữ liệuliệu từtừ buffer

Read(file_id, from, Read(file_id, size, from, size, size, buf_addr) size, buf_addr) buf_addr) :: đđọcọc tuầntuần tựtự

 SeekSeek::

buffer vàovào filefile

memory mapping

 CậpCập nhậtnhật vịvị trítrí concon trỏtrỏ filefile  ÁnhÁnh xạxạ filefile vàovào bộbộ nhớnhớ ((memory

vùng đđịaịa chỉchỉ ảoảo vàovào nộinội dung

mapping aa filefile)):: dung filefile

 AùnhAùnh xạxạ 11 vùng  TácTác vụvụ đđọc/ọc/ ghighi lênlên vùng

vùng nhớnhớ  đđọc/ọc/ ghighi filefile

6

record……)) theotheo trật (byte, record trật tựtự

NG PHÁP TRUY CẬP CÁC PHƯƠƯƠNG PHÁP TRUY CẬP CÁC PH FILEFILE  TheoTheo quanquan đđiểmiểm ngngưườiời lậplập trình trình  TuầnTuần tựtự:: xửxử lýlý dữdữ liệuliệu (byte,  TheoTheo khoákhoá:: tìmtìm khối

 TheoTheo quanquan đđiểmiểm hệhệ đđiềuiều hànhhành

 TruyTruy cậpcập tuầntuần tựtự ((sequential

khóa khối dữdữ liệuliệu theotheo giágiá trịtrị khóa

access)):: giữgiữ vàvà cậpcập nhậtnhật concon

trỏtrỏ đđếnến vịvị trítrí truytruy cậpcập kếkế tiêptiêp trong

 TruyTruy cậpcập trực offset củacủa khôi offset

sequential access trong filefile access):: truytruy cậpcập dữdữ liệuliệu theotheo

trực tiếptiếp ((random khôi dữdữ liệuliệu trong random access) trong filefile..

7

TỔ CHỨC THƯƯ MỤCMỤC TỔ CHỨC TH

directory))  ThThưư mụcmục ((directory

CấuCấu trúctrúc dữdữ liệuliệu củacủa HĐHHĐH đđểể ánhánh xạxạ têntên sangsang sốsố

nhậnnhận dạngdạng filefile củacủa HĐHHĐH

 TácTác vụvụ thực TìmTìm file,

liệt kêkê nộinội dungdung ththưư mục,mục,

file, xoáxoá file, duyệt hệhệ thống

thực hiệnhiện trêntrên ththưư mụcmục file, liệt file, tạotạo file, thống filefile file, duyệt đđổiổi têntên file, thống ththưư mụcmục  YêuYêu cầucầu khikhi tổtổ chức

chức hệhệ thống

HiệuHiệu quảquả TiệnTiện lợilợi chocho ngngưườiời sửsử dụng dụng CóCó khảkhả nnăăngng nhómnhóm cáccác filefile theotheo thuộc

thuộc tínhtính

8

CÁCH TỔ CHỨC THƯƯ MỤCMỤC CÁCH TỔ CHỨC TH

 TổTổ chức

Directory) Level Directory)

 SửSử dụng useruser

 ViệcViệc đđặtặt têntên dễdễ đđụngụng đđộộ  Không

 TổTổ chức

chức 11 cấpcấp (Single dụng 11 không (Single--Level không giangian têntên (th(thưư mục)mục) duyduy nhấtnhất chocho mọimọi

dụng đưđườngờng dẫndẫn đđểể xácxác đđịnhịnh nnơơii llưưuu filefile

Không cócó khảkhả nnăăngng nhómnhóm cáccác filefile Level Directory) Directory) (Two--Level chức 22 cấpcấp (Two riêng  11 useruser cócó mộtmột ththưư mụcmục riêng  SửSử dụng nhanh  TìmTìm kiếmkiếm nhanh  VẫnVẫn cócó khảkhả nnăăngng đđụngụng đđộộ khikhi đđặtặt têntên Không cócó khảkhả nnăăngng nhómnhóm cáccác filefile  Không

9

MỤC ĐA CẤP TỔ CHỨC THƯƯ MỤC ĐA CẤP TỔ CHỨC TH Multilevel Directory)) ((Multilevel Directory

 NhậnNhận xétxét

10

MỤC DẠNG TỔ CHỨC THƯƯ MỤC DẠNG TỔ CHỨC TH

General ĐỒ THỊ TỔNG QUÁT (General ĐỒ THỊ TỔNG QUÁT (

GraphGraph))

 K/niệmK/niệm linklink  HardHard linklink  SoftSoft linklink

 VấnVấn đđề?ề? quyết?  GiảiGiải quyết?

11

MOUNT HỆ THỐNG FILE MOUNT HỆ THỐNG FILE

 MountMount

hệthống thiết bịbị llưưuu trữtrữ vàovào hệthống

thống filefile trêntrên 11 thiết chính đđểể truytruy cậpcập

 GắnGắn hệhệ thống ththưư mụcmục chính point  MountMount point

thống filefile ởở ngoài ngoài vàovào

 ThThưư mụcmục nnơơii gắngắn hệhệ thống Unmount  Unmount  TáchTách hệhệ thống

thống filefile củacủa thiết thiết bịbị llưưuu trữtrữ rara khỏi khỏi mountmount

thống filefile đưđượcợc mountmount::

point point  LoạiLoại hệhệ thống  tùytùy thuộc thuộc sựsự hỗhỗ trợtrợ củacủa hệhệ đđiềuiều hànhhành

12

BẢO VỆ HỆ THỐNG FILE BẢO VỆ HỆ THỐNG FILE

 NgNgưườiời tạo/

khiển đưđượcợc

 CácCác thaothao táctác cócó thểthể thực quyền thực  AiAi cócó quyền

tạo/ sởsở hữuhữu filefile phảiphải đđiềuiều khiển thực hiệnhiện trêntrên filefile

thực hiệnhiện cáccác thaothao táctác trêntrên

 CácCác quyền  Read,

quyền thao thao táctác trêntrên filefile

 PhPhươươngng pháppháp bảobảo vệvệ list && group Access list (Windows NT)NT) group (Windows (UNIX) control bitsbits (UNIX) Access control

 Access  Access  ĐiềuĐiều khiển

Read, Write,Write, Execute, Execute, Append, Append, Delete, Delete, ListList

 KhóaKhóa toàntoàn bộbộ filefile  KhóaKhóa từng

thời khiển truytruy cậpcập đđồngồng thời

từng phầnphần filefile

13

execute write, execute others group, others dùng:: owner,

BẢO VỆ FILE TRÊN UNIX BẢO VỆ FILE TRÊN UNIX read, write,  ChếChế đđộộ truytruy cậpcập :: read,  33 loại owner, group, loại ngngưườiời dùng  BiểuBiểu diếndiến quyền

quyền truytruy cậpcập filefile bằngbằng tổtổ hợphợp bitbit

Others

Group

Owner

 Kiểm tra quyền sử dụng lần lượt theo owner, group rồi

rwx r-x r-x

user

14

MụcMục tiêutiêu

 GiớiGiới thiệu

thiệu vaivai tròtrò củacủa việcviệc tổtổ chức chức dữdữ liệuliệu trong trong mộtmột

đềđề ánán tintin họchọc..

thuật vàvà cấucấu trúctrúc dữdữ liệuliệu..

 MốiMối quanquan hệhệ giữagiữa giảigiải thuật  CácCác yêuyêu cầucầu tổtổ chức  KháiKhái niệmniệm kiểukiểu dữdữ liệuliệu__cấucấu trúctrúc dữdữ liệuliệu  TổngTổng quanquan vềvề đánhđánh giágiá độđộ phức

chức cấucấu trúctrúc dữdữ liệuliệu

thuật phức tạptạp giảigiải thuật

15