Bài giảng Hệ điều hành UNIX-Linux: Chương 3 - Nguyễn Trí Thành
lượt xem 8
download
Chương 3 của bài giảng hệ điều hành giới thiệu về hệ thống File trong hệ điều hành. Các nội dung chính được trình bày trong chương này gồm có: Khái niệm cơ bản, file trong Linux - UNIX, cách tổ chức file, siêu khối, cấu trúc thư mục,... Mời các bạn cùng tham khảo để nắm bắt các nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Hệ điều hành UNIX-Linux: Chương 3 - Nguyễn Trí Thành
- Hệ ñiều hành UNIX-Linux Chương 3. Hệ thống File Linux operating system - Nguyen Tri Thanh 1
- Khái niệm cơ bản Một ñối tượng ñiển hình trong các hệ ñiều hành ñó là file File là một tập hợp dữ liệu có tổ chức ñược hệ ñiều hành quản lý Cách tổ chức dữ liệu trong file thuộc về người ñã tạo ra file File có thể là: một văn bản (trường hợp ñặc biệt là chương trình nguồn trên C, PASCAL, shell script ...) một chương trình ngôn ngữ máy, Hệ ñiều hành tổ chức việc lưu trữ nội dung file trên các thiết bị nhớ lâu dài và ñảm bảo các thao tác lên file. Linux operating system - Nguyen Tri Thanh 2
- Khái niệm cơ bản Hệ ñiều hành ñảm bảo các chức năng liên quan ñến file nên người dùng không cần biết file của mình lưu ở vùng nào trên ñĩa từ, bằng từ cách nào ñọc/ghi lên các vùng của ñĩa từ mà vẫn thực hiện ñược yêu cầu tìm kiếm, xử lý lên các file Hệ ñiều hành quản lý file theo tên gọi của file (tên file) và một số thuộc tính liên quan ñến file Hệ ñiều hành không chỉ quản lý nội dung file mà còn phải quản lý các thông tin liên quan ñến các file. Thư mục (directory) là ñối tượng ñược dùng ñể chứa thông tin về các file Các thư mục cũng ñược hệ ñiều hành quản lý trên vật dẫn ngoài và vì vậy thư mục cũng ñược coi là file Linux operating system - Nguyen Tri Thanh 3
- File trong Linux - UNIX Tên file trong Linux có thể dài > 256 ký tự Nên chỉ gồm các chữ cái, chữ số, dấu gạch nối, gạch chân, dấu chấm Tên thư mục/file trong Linux có thể có nhiều hơn một dấu chấm: This_is.a.VERY_long.filename Xâu con của tên file từ dấu chấm cuối cùng ñược gọi là phần mở rộng của tên file Phần mở rộng ở ñây không mang ý nghĩa như một số hệ ñiều hành khác (chẳng hạn như MS-DOS) Phân biệt chữ hoa và chữ thường ñối với tên thư mục/file Nếu trong tên thư mục/file có chứa khoảng trống, ñặt tên vào trong cặp dấu nháy kép: # mkdir “My document” Một số ký tự không ñược sử dụng trong tên thư mục/file: !, *, $, &, # ... Linux operating system - Nguyen Tri Thanh 4
- Cách tổ chức file Trên ñĩa hệ thống file là dãy tuần tự các khối lôgic mỗi khối chứa hoặc 512B hoặc 1024B hoặc bội của 512B Các khối dữ liệu ñược ñịa chỉ hóa bằng cách ñánh chỉ số liên tiếp, mỗi ñịa chỉ ñược chứa trong 4 byte (32 bit) Cấu trúc nội tại gồm 4 thành phần kế tiếp nhau: Boot block (dùng ñể khởi ñộng hệ thống), Siêu khối (Super block), Danh sách inode và Vùng dữ liệu. Linux operating system - Nguyen Tri Thanh 5
- Siêu khối Chứa thông tin liên quan ñến trạng thái của hệ thống file Kích thước của danh sách inode Kích thước của hệ thống file. Danh sách chỉ số các khối rỗi Chỉ số các khối rỗi thường trực trên siêu khối Chỉ số của khối rỗi tiếp theo trong danh sách các khối rỗi Một danh sách các inode rỗi Danh sách này chứa chỉ số các inode rỗi ñược dùng ñể phân phối ngay ñược cho một file mới ñược khởi tạo Cờ chỉ dẫn rằng hệ thống file chỉ có thể ñọc (cấm ghi) Số lượng tổng cộng các khối rỗi trong hệ thống file Số lượng tổng cộng các inode rỗi trong hệ thống file Thông tin về thiết bị Kích thước khối của hệ thống file Linux operating system - Nguyen Tri Thanh 6
- Linux operating system - Nguyen Tri Thanh Cấu trúc thư mục 7
- Kiến trúc hệ thống file Linux operating system - Nguyen Tri Thanh 8
- Hình ảnh các khối bộ nhớ Linux operating system - Nguyen Tri Thanh 9
- Cấu trúc thư mục Nội dung của một thư mục là một danh sách các file entry Mỗi một file entry gồm Số hiệu inode quản lý file này Tên file ðộ dài của tên file ðộ dài của entry Inode No File name File name length Entry length 320 a.txt 5 7 Thông tin một file entry Linux operating system - Nguyen Tri Thanh 10
- Cấu trúc thư mục Khi một file bị xóa thì trường entry length của file ñứng trước sẽ ñược tăng ñộ dài Khi chèn thêm một file entry, nó sẽ tính toán ñộ dài của entry ñể quyết ñịnh là chèn vào một entry bị xóa nào ñó hay cuối danh sách Trạng thái Linux operating của system thư mục - Nguyen Tri Thanh 11
- Inode Khi tạo một file mới, hệ thống sẽ cấp một inode chưa sử dụng inode cho ta biết các khối dữ liệu của file và các thông tin về file Tổ hợp gồm inode + tập các khối dữ liệu = file vật lý Các inode có chỉ số: số thứ tự của inode trong danh sách inode Hệ thống dùng 2 bytes ñể lưu trữ chỉ số của inode Một file chỉ có một inode + một hoặc một số tên file Người dùng tác ñộng thông qua tên file và tên file lại tham chiếu ñến inode Linux dùng một vùng bộ nhớ chứa danh sách các inode: in-core inode Linux operating system - Nguyen Tri Thanh 12
- Cấu trúc Inode Kiểu file (file thông thường, thư mục, ñặc tả kí tự, ñặc tả khối, ống dẫn) Kiểu file có giá trị 0 tương ứng ñó là inode chưa ñược sử dụng Quyền truy nhập file: có 3 mức quyền truy nhập chủ của file nhóm người dùng của chủ nhân của file người dùng khác Quyền truy nhập là ñọc (r), ghi (w), thực hiện (x) hoặc một tổ hợp nào ñó từ nhóm gồm 3 quyền trên Quyền thực hiện ñối với một thư mục tương ứng với việc cho phép tìm một tên file có trong thư mục ñó Linux operating system - Nguyen Tri Thanh 13
- Cấu trúc Inode (tiếp) Số lượng liên kết ñối với inode (số lượng các tên file) ðịnh danh chủ nhân của inode ðịnh danh nhóm chủ nhân ðộ dài của file tính theo byte Thời gian truy nhập file thời gian file ñược sửa ñổi muộn nhất thời gian file ñược truy nhập muộn nhất thời gian file ñược khởi tạo 13 phần tử ñịa chỉ 10 phần tử trực tiếp 1 phần tử gián tiếp bậc 1 1 phần tử gián tiếp bậc 2 1 phần tử gián tiếp bậc 3 Linux operating system - Nguyen Tri Thanh 14
- Cácsystem Linux operating con trỏ dữ liệu - Nguyen Tri Thanh 15
- Nội dung của một Inode type regular perms rwxr-xr-x links 2 owner 41CT group 41CNTT size 5703 bytes accessed Sep 14 1999 7:30 AM modified Sep 10 1999 1:30 PM inode Aug 1 1995 10:15 AM Các phần tử ñịa chỉ dữ liệu Linux operating system - Nguyen Tri Thanh 16
- Truy cập ñến một file Linux operating system - Nguyen Tri Thanh 17
- Linux operating system - Nguyen Tri Thanh 18
- Thuật toán truy nhập tới inode (iget) Tình huống ñòi hỏi thuật toán iget: mở / tạo một file mới … iget cấp phát một bản in-core inode ñối với một số hiệu inode Nếu chưa có bản sao in-core inode thì ñể có nội dung của nó cần phải ñọc ñược nội dung của inode Nếu mỗi inode ñĩa chiếm 64 bytes, mỗi khối ñĩa chứa 8 inode ñĩa thì inode số 8 sẽ bắt ñầu từ byte thứ 448 trên khối ñĩa ñầu tiên trong vùng danh sách các inode. Linux operating system - Nguyen Tri Thanh 19
- Thuật toán iget Vào: hệ thống file, số hiệu inode Ra: inode ñược khóa hoặc mã lỗi while (not done){ if (inode trong vùng ñệm các inode){ /*có quá trình ñang làm việc với inode*/ if (inode ñã bị khóa) { sleep (cho ñến khi inode ñược mở khóa); continue; /* quay về while */ } if (inode tồn tại trong danh sách các inode rỗi) Loại bỏ nó khỏi danh sách các inode rỗi; Tăng giá trị trường số file tích cực trong in-core inode; return (inode) } if (danh sách các inode rỗi rỗng) return (mã lỗi) Loại bỏ một inode mới từ danh sách các inode rỗi; ðặt lại số lượng inode rỗi vào hệ thống file; Loại bỏ inode ñó trên hàng ñợi cũ và ñặt nó lên hàng ñợi mới; ðọc inode từ ñĩa vào in-core inode; Khởi tạo inode; return (inode) } Linux operating system - Nguyen Tri Thanh 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Hệ điều hành Unix /Linux: Bài 1 - Đặng Ngọc Cường
37 p | 255 | 26
-
Bài giảng Hệ điều hành Unix /Linux: Bài 6 - Đặng Ngọc Cường
62 p | 132 | 24
-
Bài giảng Hệ điều hành UNIX-Linux: Giới thiệu môn học - Nguyễn Trí Thành
7 p | 151 | 13
-
Bài giảng Hệ điều hành Unix: Chương 1 - Ngô Duy Hòa
60 p | 123 | 10
-
Bài giảng Hệ điều hành Unix-Linux: Chương 1 - Đặng Thu Hiền
20 p | 137 | 8
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 1 - Nguyễn Trí Thành
16 p | 143 | 8
-
Bài giảng Hệ điều hành Unix-Linux: Giới thiệu môn học - Đặng Thu Hiền
5 p | 76 | 6
-
Bài giảng Hệ điều hành Unix - Chương 1: Các khái niệm và kỹ nawng cơ bản
98 p | 77 | 6
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 4 - Nguyễn Trí Thành
16 p | 85 | 5
-
Bài giảng Hệ điều hành Unix: Chương 7 - Ngô Duy Hòa
8 p | 94 | 5
-
Bài giảng Hệ điều hành Unix-Linux: Chương 4 - Đặng Thu Hiền
13 p | 73 | 5
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 8 - Nguyễn Trí Thành
38 p | 81 | 5
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 5 - Nguyễn Trí Thành
18 p | 85 | 4
-
Bài giảng Hệ điều hành Unix-Linux: Chương 3 - Đặng Thu Hiền
58 p | 85 | 4
-
Bài giảng Hệ điều hành Unix-Linux: Chương 5 - Đặng Thu Hiền
13 p | 74 | 3
-
Bài giảng Hệ điều hành Unix-Linux: Chương 7 - Đặng Thu Hiền
41 p | 79 | 3
-
Bài giảng Hệ điều hành Unix-Linux: Chương 2 - Đặng Thu Hiền
24 p | 78 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn