intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Hệ điều hành Unix: Chương 7 - Ngô Duy Hòa

Chia sẻ: Năm Tháng Tĩnh Lặng | Ngày: | Loại File: PDF | Số trang:8

94
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Hệ điều hành Unix chương 7 trình bày về Linux file system. Các nội dung cần học trong chương này gồm có: Các khái niệm cơ bản, các loại filesystem cơ bản, virtual filesystem, file I/O, file standard library,... Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Hệ điều hành Unix: Chương 7 - Ngô Duy Hòa

  1. Nội dung cần học • Các khái niệm cơ bản. • Các loại filesystem cơ bản. Bài 7. Linux file system • Virtual Filesystem. • File I/O. Ngô Duy Hòa – KHMT - CNTT • File standard library. • … File & Inode • Trong Unix/Linux: 1 file ↔ 1 Inode. • Cấu trúc Inode tương tự nhau,nhưng phụ 1. Các khái niệm cơ bản thuộc vào phiên bản OS. • Dữ liệu file được xác định thông qua địa chỉ các block. Trong 1 Inode: – 10 (ufs) hoặc 12 (ext2) địa chỉ trực tiếp. – 3 địa chỉ kế tiếp tương ứng với 3 cấp địa chỉ gián tiếp. Tổ chức dữ liệu theo chỉ mục Inode – Index Node 1
  2. Dùng danh sách liên kết & bảng chỉ mục Quản lý bộ nhớ trống • Dữ liệu trong HDD được chia thành các khối (block data), địa chỉ các block này là 1 số 4 byte. • File cũng được chia thành các khối dữ liệu và được sắp đặt không liên tục trong HDD. • Có 3 cách quản lý bộ nhớ trống (các địa chỉ block chưa sử dụng): – Dùng danh sách liên kết. – Dùng bảng chỉ mục. – Dùng vector bitmap. Kết hợp 2 phương pháp trên Dùng vector Bitmap Disk partitions 2. Các loại filesystem cơ bản 2
  3. Cấu trúc phân vùng Super blocks • Boot block: chứa thông tin khởi động. • Kích thướng phân vùng. • Super block: chứa thông tin về phân vùng. • Số blocks dữ liệu chưa sử dụng. • Inode List: danh sách Inodes trong filesystem. • Danh sách các blocks dữ liệu chưa sử dụng. • Data List: danh sách các khối blocks dữ liệu. • Kích thước danh sách Inodes. • Số Inodes chưa sử dụng. • Danh sách các Inodes chưa sử dụng. List free inodes & free blocks s5fs directory • Directory la 1 bảng các thành phần (entry table). • Mỗi entry table đặc trưng cho 1 file: – File inode (2 bytes). – File name (14 bytes). 3
  4. Data layout on hard disk Kiến trúc FFS track2 Sector 0 Sector 1 track1 track0 • Đĩa được chia thành các phân vùng head 0 (partition) là tập các cylinder liên tiếp. • FFS chia phân vùng thành các nhóm Cylinder 0 (group) các cylinder liên tiếp. platters • Trong mỗi nhóm đều có: head 1 – Super block. – Free data block & Free inode Bitmap. Cylinder 1 – Fixed inodes table. head 2 – Data blocks table. Cấu trúc thư mục trong FFS Group cylinder Các chức năng mở rộng Ext2 file system • Hỗ trợ file name với 255 ký tự. • Hỗ trợ làm việc với symbolic link. • Hỗ trợ file locking • Hỗ trợ file rename. 4
  5. Virtual File System Nguyên tắc làm việc • Khi 1 file được yêu cầu dữ liệu Æ giá trị inode của file được lưu trữ trong bộ nhớ chính trong 1 in-core inode (vnode). • Cấu trúc vnode có các thành phần cơ bản sau: – v_data: trỏ đến dữ liệu trong filesystem thực (chính là inode của file). – v_op : thao tác thực hiện với dữ liệu – v_vfsp: con trỏ đến filesystem thực mà chứa file đang được yêu cầu dữ liệu. –… Một số đặc điểm • Unbuffered I/O functions. • Các hàm system call làm việc với file 3. File I/O thông qua file descriptor: – Standard input: STDIN_FILENO. – Standard output: STDOUT_FILENO. – Standard error: STDERR_FILENO. • Sử dụng header: – – 5
  6. Các hàm làm việc với file 6
  7. Các hàm làm việc với file (tiếp) Các hàm làm việc với Inode 7
  8. Đặc điểm • Sử dụng con trỏ FILE* 4. Standard Library Các hàm cơ bản Thank you! 8
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2