Truyen2U.Net quay lại rồi đây! Các bạn truy cập Truyen2U.Com. Mong các bạn tiếp tục ủng hộ truy cập tên miền mới này nhé! Mãi yêu... ♥

phan 2 chuong 4 quan ly tap tin xuat nhap

4.3. Quản lý tập tin

4.3.1. Tập tin và hệ thống tập tin

4.3.2. Truy xuất và thao tác với tập tin

4.3.3. Cài đặt tập tin trên đĩa cứng

 Máy tính phải sử dụng thiết bị có khả

năng lưu trữ trong thời gian dài vì :

 Phải chứa những lượng thông tin rất lớn

 Thông tin phải được lưu giữ một thời gian dài trước khi xử lý

 Nhiều tiến trình có thể truy cập thông tin cùng lúc.

Giải pháp là sử dụng các thiết bị lưu

trữ ngoài.

Tập tin và hệ thống quản lý tập tin

a. Khái niệm

 Tập tin là đơn vị lưu trữ thông tin của bộ nhớ ngoài.

 Các tiến trình có thể đọc hay tạo mới tập tin nếu cần thiết.

 Thông tin trên tập tin là bền vững

 Tập tin được quản lý bởi hệ điều hành.

a. Khái niệm

 Thư mục

 Để lưu trữ dãy các tập tin

 Trong nhiều hệ thống, thư mục có thể

coi như là tập tin.

 Hệ thống quản lý tập tin

 Một cơ chế của hệ điều hành cung cấp:

 Cách hiển thị, các yếu tố cấu thành tập tin

 Cách đặt tên

 Cách truy xuất, cách sử dụng

 Cách bảo vệ tập tin

b. Tập tin

 Mỗi tập tin được quản lý bởi một tên

 Khi tiến trình tạo một tập tin, nó sẽ đặt một tên

 Khi tiến trình kết thúc tập tin vẫn tồn tại và có thể được truy xuất bởi các tiến trình khác với tên tập tin đó.

 Cách đặt tên tập tin của mỗi hệ điều hành khác nhau.

 Sử dụng chữ cái

 Phân biệt chữ thường/hoa

 Gồm: tên chính, (.), phần mở rộng

Tập tin (t)

 Cấu trúc tập tin

 Dãy tuần tự các byte không cấu trúc

 Dãy các bản ghi (record) có chiều dài cố định.

 Cấu trúc cây : gồm cây của những record, không cần thiết có cùng độ dài, mỗi record có một trường khóa giúp cho việc tìm kiếm nhanh hơn.

Tập tin (t)

 Xét một tập tin gồm các bản ghi account đối với CSDL ngân hàng xác định như sau:

type

depositor = record branch_name: char(20); account_number: char(10); balance:real;

end

Tập tin(t)

 Kiểu tập tin:

 Tập tin thường : là tập tin text hay tập tin nhị

phân chứa thông tin của người sử dụng.

 Thư mục : là những tập tin hệ thống dùng để lưu giữ cấu trúc của hệ thống tập tin.

 Tập tin có ký tự đặc biệt : liên quan đến nhập xuất thông qua các thiết bị nhập xuất tuần tự như màn hình, máy in, mạng.

 Tập tin khối : dùng để truy xuất trên thiết bị đĩa.

Tập tin(t)

 Tập tin thường:

 Tập tin văn bản chứa các dòng văn bản cuối dòng có ký hiệu enter. Mỗi dòng có độ dài có thể khác nhau.

 Tập tin nhị phân gồm dãy các byte , nhưng hệ điều hành chỉ thực thi tập tin đó nếu nó có cấu trúc đúng.

Tập tin(t)

 Thuộc tính:

Tập tin(t)

 Thuộc tính:

Tập tin(t)

 Thuộc tính:

c.Thư mục

 Chứa một số mục (entry) dành cho một tập tin.

 Tên tập tin, thuộc tính và địa chỉ trên đĩa lưu dữ

liệu

 hoặc chứa tên tập tin và một con trỏ, trỏ tới một cấu trúc có thuộc tính và vị trí lưu trữ của tập

tin.

 Hệ thống thư mục theo cấp bậc (còn gọi là cây thư mục) được hình thành với mô hình một thư mục có thể chứa tập tin hoặc một thư mục con và cứ tiếp tục như vậy hình thành cây thư mục.

Thư mục

Tập tin

4.3.2. Truy xuất và thao tác với tập

tin

a. Truy xuất và thao tác với tập tin

thường

b. Truy xuất và thao tác với thư mục

a. Truy xuất và thao tác với tập tin

thường

 Khi tập tin được sử dụng, các thông tin này được đưa vào bộ nhớ của máy tính.

 Truy xuất tuần tự .

 Tiến trình đọc tất cả các byte trong tập tin theo thứ tự từ đầu (trình biên dịch).

 Tập tin có thể tự khởi động lại từ vị trí đầu tiên (đầu tập tin, vị trí bất kỳ)

 Một số hệ thống tập tin cho phép di chuyển con trỏ tập tin đi tới hoặc đi lui n mẫu tin.

Truy xuất và thao tác với tập tin

thường (t)

 Truy xuất trực tiếp

 Dựa trên bản ghi logic bằng nhau của tập tin

 Dựa trên mô hình của đĩa, đĩa cho phép truy xuất ngẫu nhiên tới bất kỳ khối thông tin nào của tập tin

 Được sử dụng trong trường hợp phải truy xuất một khối lượng thông tin lớn(cơ sở dữ liệu).

Truy xuất và thao tác với tập tin

thường(t)

 Thao tác với tập tin:Các chức năng

 Tạo: một tập tin được tạo chưa có dữ liệu, được gán một số thuộc tính.

 Xóa

 Mở

 Đóng

 Đọc

 Ghi

 Thêm

 Tìm

 Lấy thuộc tính

 Đổi tên

b.Truy xuất và thao tác với thư

mục

 Đường dẫn tuyệt đối: Đường dẫn từ thư mục gốc đến tập tin.

 Ví dụ : /usr/ast/mailbox.

 Đường dẫn tương đối: Người sử dụng có thể quy định một thư mục là thư mục hiện hành. Đường dẫn bắt đầu từ thư mục hiện hành.

 Ví dụ: Thư mục hiện hành /usr/ast  đường dẫn mailbox

 Hầu hết các hệ điều hành đều hỗ trợ hệ thống thư mục theo cấp bậc với hai mục đặc biệt cho mỗi thư mục là "." và "..". "." chỉ thư mục hiện hành, ".." chỉ thư mục cha.

b.Truy xuất và thao tác với thư

mục

 Tạo : một thư mục được tạo, nó rỗng, ngoại trừ "." và

".." được đặt tự động bởi hệ thống.

 Xóa :xoá một thư mục, chỉ có thư mục rỗng mới bị

xóa, tư mục chứa "." và ".." coi như là thư mục rỗng.

 Mở thư mục :thư mục có thể được đọc. Ví dụ để liệt kê tất cả tập tin trong một thư mục, chương trình liệt kê mở thư mục và đọc ra tên của tất cả tập tin chứa

trong đó. Trước khi thư mục được đọc, nó phải được mở ra trước.

 Đóng thư mục :khi một thư mục đã được đọc xong, phải đóng thư mục để giải phóng vùng nhớ.

b.Truy xuất và thao tác với thư

mục

 Đọc thư mục :Lệnh này trả về entry tiếp theo trong thư mục đã mở. Thông thường có thể đọc thư mục bằng lời gọi hệ thống READ, lệnh đọc thư mục luôn luôn trả về một entry dưới dạng chuẩn .

 Đổi tên :cũng như tập tin, thư mục cũng có thể được

đổi tên.

 Liên kết :kỹ thuật này cho phép một tập tin có thể xuất hiện trong nhiều thư mục khác nhau. Khi có yêu cầu, một liên kết sẽ được tạo giữa tập tin và một đường dẫn được cung cấp.

 Bỏ liên kết :Nếu tập tin chỉ còn liên kết với một thư mục, nó sẽ bị loại bỏ hoàn toàn khỏi hệ thống, nếu nhiều thì nó bị giảm chỉ số liên kết.

4.3.3. Cài đặt hệ thống tập tin trên

đĩa

 Hệ thống tập tin được cài đặt trên

đĩa.

 Mỗi đơn vị dữ liệu được truy xuất gọi là một khối. Một khối dữ liệu bao gồm một hoặc nhiều sector.

 Bộ phận tổ chức tập tin quản lý việc lưu trữ tập tin trên những khối vật lý bằng cách sử dụng các bảng có cấu trúc.

4.3.3. Cài đặt hệ thống tập tin trên

đĩa

 Trước khi tập tin được đọc, tập tin phải

được mở:

 Cần có đường dẫn do người sử dụng cung cấp và được định vị trong cấu trúc đầu vào thư mục (directory entry).

 Directory entry cung cấp các thông tin cần thiết

để tìm kiếm các khối.

 Tuỳ thuộc vào mỗi hệ thống, thông tin là địa chỉ trên đĩa của toàn bộ tập tin, số hiệu của khối đầu tiên, hoặc là số I-node.

Bảng quản lý thư mục,tập tin

 Bảng này thường được cài đặt ở phần

đầu của đĩa.

 Bảng là dãy các phần tử (entry) có kích

thước xác định.

 Mỗi phần tử sẽ lưu thông tin về tên , thuộc tính, vị trí lưu trữ .... của một tập tin hay thư mục.

Bảng phân phối vùng nhớ

 Bảng này thường được sử dụng phối hợp với bảng quản lý thư mục tập tin

 Cho biết vị trí khối vật lý của một tập tin hay thư mục nào đó ( lưu giữ dãy các khối trên đĩa cấp phát cho tập tin lưu dữ liệu hay thư mục).

 Có một số phương pháp được cài đặt.

Phương pháp định vị tập tin trên

đĩa

 Định vị liên tiếp :

 Lưu trữ tập tin trên dãy các khối liên tiếp.

 Ưu điểm:

 Dể dàng cài đặt.

 Dể dàng thao tác vì toàn bộ tập tin được đọc từ đĩa bằng thao tác đơn giản không cần định vị lại.

 Khuyết điểm

 Không linh động trừ khi biết trước kích thước tối

đa của tập tin.

 Sự phân mảnh trên đĩa, gây lãng phí lớn.

Phương pháp định vị tập tin trên

đĩa

 Định vị bằng danh sách liên kết :

 Mọi khối đều được cấp phát, không bị

lãng phí

 Directory entry chỉ cần chứa địa chỉ của khối đầu tiên.

 Tuy nhiên, khối dữ liệu bị thu hẹp lại và truy xuất ngẫu nhiên sẽ chậm.

Phương pháp định vị tập tin trên

đĩa

 Danh sách liên kết sử dụng index:

 Tương tự như cách trên nhưng thay vì dùng con trỏ thì dùng một bảng chỉ số.

 Toàn bộ khối chỉ chứa dữ liệu.

 Truy xuất ngẫu nhiên sẽ dễ dàng hơn.

 Kích thước tập tin được mở rộng hơn.

Phương pháp định vị tập tin trên

đĩa

 I-nodes :Gồm hai phần.

 Phần 1: chứa thuộc tính của tập tin (kiểu, người sở hữu, kích thước, v.v...)

 Phần 2: chứa địa chỉ của khối dữ liệu. Phần này chia làm hai phần nhỏ:

 10 phần tử đầu, mỗi phần tử chứa địa chỉ khối dữ liệu của tập tin.

 Phần tử thứ 11 chứa địa chỉ gián tiếp cấp 1 (single indirect), chứa địa chỉ của một khối, trong khối đó chứa một bảng có thể từ 210 đến 232 phần tử mà mỗi phần tử mới chứa địa chỉ của khối dữ liệu.

 Phần tử thứ 12 chứa địa chỉ gián tiếp cấp 2 (double indirect), chứa địa chỉ của bảng các khối single indirect.

 Phần tử thứ 13 chứa địa chỉ gián tiếp cấp 3 (double indirect), chứa địa chỉ của bảng các khối double indirect.

 Cách tổ chức này tương đối linh động, phù hợp với hệ

thống tập tin lớn.

4.4.Quản lý thiết bị nhập

xuất

4.4.1.Phần mềm nhập/xuất

4.4.2.Lập lịch vào ra cho đĩa cứng

Mục đích

 Hệ điều hành phải ra các chỉ thị điều khiển thiết bị, kiểm soát các ngắt và lỗi.

 Hệ điều hành phải cung cấp một cách giao tiếp đơn giản và tiện dụng giữa các thiết bị và phần còn lại của hệ thống và giao tiếp này phải độc lập với thiết bị.

 Nhắc lại: Tổ chức thiết bị nhập xuất

4.4.1.Phần mềm nhập/xuất

 Phân lớp Phần mềm nhập/xuất nhằm tạo giao diện thống nhất giữa hệ điều hành và các thiết bị phần cứng riêng biệt

Phần mềm nhập/xuất

 Chương trình độc lập với thiết bị và không gian người dùng

 Không gian người dùng:

 Hàm thư viện cho phép người lập trình sử dụng thiết bị

 Tiện ích mức người dùng

 V..v

 Chương trình độc lập thiết bị:

 Giao diện thống nhất giữa không gian người dùng với mọi loại thiết bị

 Bảo vệ thiết bị/đặt tên thiết bị/phòng đệm vào ra/phân phối/ giải phóng và báo cáo lỗi thiết bị

Phần mềm nhập/xuất

 Trình điều khiển thiết bị:

 Tất cả các đoạn mã độc lập thiết bị đều được chuyển đến device drivers. Mỗi device drivers kiểm soát mỗi loại thiết bị, nhưng cũng có khi là một tập hợp các thiết bị liên quan mật thiết với nhau.

 Device drivers phải xác định được những thao tác nào của bộ điều khiển phải thi hành và theo trình tự nào. Một khi đã xác định được chỉ thị cho bộ điều khiển, nó bắt đầu thực hiện bằng cách chuyển lệnh vào thanh ghi của bộ điều khiển thiết bị. Bộ điều khiển có thể nhận một hay nhiều chỉ thị liên tiếp và sau đó tự nó thực hiện không cần sự trợ giúp của hệ điều hành.

 Kiểm soát ngắt:

 Khi một ngắt xảy ra, hàm xử lý ngắt khởi

tạo một tiến trình mới để xử lý ngắt.

4.4.2.Lập lịch vào ra cho đĩa cứng

 Trình điều khiển thiết bị tập hợp các yêu cầu truy nhập đĩa cứng và áp dụng các thuật toán lập lịch sao cho tối thiểu hóa các thao tác di chuyển đầu đọc đĩa.

 Thuật toán

 FCFS (First Come First Server)

 SSF (Shortest Seek Time First )

 SCAN

 C-SCAN (Circular SCAN )

 Ví dụ : cần phải đọc các khối theo thứ tự như sau :

 98, 183, 37, 122, 14, 124, 65, và 67

 Giả sử hiện tại đầu đọc đang ở vị trí 53. Như vậy đầu

đọc lần lượt đi qua các khối 53, 98, 183, 37, 122, 14,

124, 65, và 67 như hình sau :

 Đầu đọc lần lượt đi qua các khối 53,

65, 67, 37, 14, 98, 122, 124 và 183

 Đầu đọc lần lượt đi qua các khối 53,

37, 14, 0 , 65, 67, 98, 122, 124 và

183

 Thứ tự truy xuất các khối sẽ là : 53,

65, 67, 98, 122, 124, 183, 199, 0,

14, 37

4.5.Các dịch vụ của hệ điều

hành

4.5.1.Xác thực người dùng

4.5.2. Bảo vệ dữ liệu

Các vấn đề bảo mật

 Xác thực người dùng:

 Xác thực người sử dụng tài khoản là chủ của tài khỏan (account)

 Bảo vệ

 Gán việc điều khiển tài nguyên với các mức đặc quyền khác nhau cho người dùng hoặc nhóm người dùng và bảo vệ tài nguyên khỏi việc sử dụng không hợp lệ.

 Các mối đe dọa an toàn bảo mật

 Sử dụng các biện pháp để tránh sự tấn công do

 Lỗ hổng kỹ thuật

 Ý thức người dùng

 Sai sót quản lý

4.5.1.Xác thực người dùng

 Định danh người dùng (UID): Số hiệu

để định danh cho chủ tài nguyên

 Xác thực:

 Hệ thống thực hiện việc xác thực thông qua có chế đăng nhập sử dụng mật khẩu

 Mã hóa mật khẩu: Tăng độ bảo mật

 Lựa chọn và thay đổi mật khẩu

4.5.2. Bảo vệ

 Chính sách và cơ chế

 Chính sách được quyết định bởi người quản trị hệ thống:

dữ liệu được bảo vệ khỏi ai

 Cơ chế được hỗ trợ bởi hệ điều hành: cách thức để thực hiện chính sách bảo vệ

 Phân lớp người dùng và gán các đặc quyền cho lớp người dùng bằng cấu trúc thông tin bao gồm hai thành tố

 Đối tượng được tác động (tập tin, bộ nhớ ...)

 Quyền thực thi các thao tác trên đối tượng đó (đọc, ghi, xóa...)

 Hệ thống gán một định danh người dùng/nhóm với lớp xác định

Bảo vệ

 Ma trận

 Hệ điều hành lưu một ma trận liệt kê các cặp thông tin (đối tượng, quyền) cho mỗi một lớp  Tốn không gian lưu trữ

Bảo vệ

 Danh sách điều khiển truy nhập (ACL): Lưu trữ ma trận bảo vệ theo cột

 Mỗi một đối tượng có một danh sách truy nhập tương ứng

 Phần tử của danh sách là cặp (lớp người dùng, quyền)

 Sửa đổi quyền đối với mỗi một lớp người dùng rất phức tạp

Bảo vệ

 Danh sách các khả năng (C-List): Lưu

trữ ma trận bảo vệ theo hàng

 Mỗi một lớp người dùng có một danh sách khả năng tương ứng

 Phần tử của danh sách là cặp (đối tượng, quyền)

 Sửa đổi quyền truy nhập trên từng đối

tượng rất phức tạp

Các mối đe dọa an toàn bảo

mật

 Bị động

 Chặn để nghe trộm

 Chủ động

 Ngắt giữa chừng

 Sửa đổi, giả mạo

Các mối đe dọa an toàn bảo

mật

 Mã độc:

 Cần chương trình chủ

 Mã độc được gắn chương trình chủ như là một phần của chương trình

 Ví dụ Trapdoors, Logic bomb, Trojan horses, Viruses

 Độc lập

 Các đoạn mã độc lập:

 Ví dụ Bacteria, Worms

 Tạo bản sao

 Các đoạn mã có khả năng tự tạo các bản sao của chính mình để nhân rộng sự lây nhiễm

 Ví dụ Bacteria, Worms, Viruses

Bạn đang đọc truyện trên: Truyen2U.Com

Tags: