1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tổng Hợp Bài Tập Hệ Điều Hành.pdf

24 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

PowerPoint Presentation Tổ chức quản lý tiến trình 1 Tiến trình (process) là một chương trình đang trong quá trình thực thi (đang nằm trên bộ nhớ chính) Các tiến trình độc lập với nhau → không có sự t[.]

Tổ chức quản lý tiến trình Tiến trình (process) chương trình trình thực thi (đang nằm nhớ chính) Các tiến trình độc lập với → khơng có trao đổi thơng tin Mỗi tiến trình sở hữu: Một CPU (ảo) riêng, Một không gian nhớ riêng, Chiếm giữ số tài nguyên hệ thống Tiểu trình: Tiểu trình luồng xử lý bên tiến trình Mỗi tiểu trình sở hữu: Một CPU (ảo) riêng, Dùng chung khơng gian địa với tiến trình Ready: tiến trình có nhu cầu sử dụng CPU Running: Tiến trình sử dụng CPU Blocked (Waiting): Tiến trình chờ IO (nhận, xuất liệu) Mỗi tài nguyên có hàng đợi riêng - Mỗi tài nguyên (trừ CPU) sở hữu hàng đợi riêng gọi waiting list chờ đến lượt - Hai thành phần đảm nhiệm vai trị điều phối: • Scheduler: chọn tiến trình • Dispatcher: chuyển CPU cho tiến trình chọn Nhận tài nguyên Chờ tài nguyên - Turn-around Time (TT): T quit – T arrive - Waiting Time (WT): thời gian chờ Ready list (only) - Xét trường hợp trung bình: + N tiến trình + Avg Turn-around Time = Tổng / N + Avg Waiting Time = Tổng / N Bài tập Điều phối tiến trình – FIFO/FCFS • • • Theo nguyên tắc độc quyền (độc chiếm CPU) Tiến trình vào RL lâu chọn trước độc chiếm CPU kết thúc tiến trình Lần lượt theo thứ tự vào RL Bài tập Điều phối tiến trình - Round-Robin - Mỗi tiến trình sử dụng lượng q (quantum) cho lần sử dụng CPU, chưa xong đứng vào Ready List chờ tiếp Lần lượt theo thứ tự vào Ready List Nếu có tranh chấp ưu tiên tiến trình cũ/mới tuỳ quy ước Bài tập Điều phối tiến trình - Round-Robin - Mỗi tiến trình sử dụng lượng q (quantum) cho lần sử dụng CPU, chưa xong đứng vào Ready List chờ tiếp Lần lượt theo thứ tự vào Ready List Nếu có tranh chấp ưu tiên tiến trình cũ/mới tuỳ quy ước Bài tập Điều phối tiến trình - Round-Robin Đề 2020-2021 Bài tập Điều phối tiến trình – SJF Độc quyền - Ưu tiên thời gian lại cần sử dụng CPU ngắn Nếu có tranh chấp ưu tiên tiến trình cũ/mới tuỳ quy ước - Độc quyền: tiến trình nắm giữ CPU chạy xong trả lại CPU cho tiến trình Bài tập Điều phối tiến trình – SJF Khơng độc quyền - Khơng độc quyền: có tiến trình vào, xét tiến trình chạy tiến trình xem thời gian dùng CPU cịn lại ngắn trao CPU cho tiến trình Đĩa từ - thuật tốn đọc đĩa • Cấu trúc vật lý đĩa từ: • Hình trịn, gồm nhiều mặt gọi head Mỗi mặt có nhiều đường trịn đồng tâm gọi track • Trên track chia thành cung tròn gọi sector Mỗi cung tròn chứa 4096 điểm từ (~ 4096 bit = 512 bytes) • Mỗi mặt có đầu đọc để đọc ghi liệu Mỗi lần đọc/ghi sector • Thuật tốn đọc đĩa: • FCFS: đọc khối cần đọc theo thứ tự • SCAN: di chuyển đầu đọc phía đĩa đến vị trí xa đĩa, sau quay ngược lại bên • CSCAN: di chuyển đầu đọc phía đĩa đến vị trí xa đĩa, sau trở vị trí đĩa • SSTF: đọc khối gần vị trí mắt đọc • LOOK / CLOOK: giống SCAN / CSCAN, không di chuyển đến vị trí xa đĩa, mà di chuyển đến khối xa cần đọc Quản lý tập tin Vị trí bắt đầu kết thúc Partition Thông tin mô tả vùng phía sau vùng y chang nhau, lưu trữ chuỗi vị trí gói tập tin Lưu thơng tin thuộc tính tập tin Lưu nội dung thực tập tin Master Boot Record - dòng ổ đĩa gồm 16 byte - Offset địa tương đối byte bên vùng xem xét (tương ứng với số hàng ngang) - Đọc vị trí 01BE (dịng thứ 01B, offset E) vị trí bắt đầu Partition thứ - Partition dài 16 bytes, tương tự tìm Partition 2, 3, Bảng mơ tả Partition: bytes offset 01 = vị trí bắt đầu bytes offset 05 = vị trí kết thúc Không cần chuyển sang nhị phân, nên chuyển qua thập phân Đổi thành số nhị phân bits: bit 5-0 sector, bit lại gắn lên phía đầu cylinder Đổi thành số nhị phân bits: ghép bit phía vào đầu thành 10 bits => track (cylinder) 10 Master Boot Record 0x01: 00 -> Head = 0x02: C1 -> Bin 11 000001 -> Sector = 0x03: FF -> Bin 1111 1111 -> Track/Cylinder = 11 1111 1111 = 1023 11 Boot Sector - Khi đọc từ bytes trở lên ráp byte theo thứ tự ngược lại VD đọc offset B với bytes 00, 02 -> ghép lại số hexa = 0x0200 = 512 - Số byte cho sector: đọc dòng – cột B – byte Số sector cho cluster STT Nội dung Số byte cho sector Số sector cho cluster Số sector dành riêng (số sector trước FAT) Số bảng FAT - Số sector cho bảng RDET Tổng số sector đĩa (volume) 10 Số sector cho bảng FAT Sector bảng FAT1 Sector bảng RDET Sector vùng data Cách đọc Dòng 00 – cột B Dòng 00 – cột D Số byte Dòng 00 – cột E Dòng 10 – cột Dòng 10 – cột = Đọc số entry x bảng RDET entry RDET = 32 bytes Đổi số entry byte = X*32 (byte) Đổi byte sector = X*32 / số btye cho sector (sector - 0d) Dòng 10 – cột (2 byte) Nếu vị trí đọc lên giá trị = đọc vị trí dịng 20 – cột (4 byte) Dịng 10 – cột Đếm số sector cho vùng, sau xác định sector vùng Sector sector thứ 12 2/4 Bài tập Boot Sector STT Nội dung Số byte cho sector Số sector cho cluster Số sector dành riêng (số sector trước FAT) Số bảng FAT Hex 0200 80 Dex 512 128 0004 02 32 Số sector cho bảng RDET 0x0200 entry = 0d512 entry = 512*32 byte = 512*32 / 512 = 32 sector Tổng số sector đĩa (volume) 0064FE5D 10 Số sector cho bảng FAT Sector bảng FAT1 Sector bảng RDET Sector vùng data 00CA 04 198 1B8 Số sector Vị trí sector -> 202 202 -> 205 206 -> 407 6618717 202 408 440 32 408 -> 439 440 -> … 13 RDET (THƯ MỤC GỐC) - entry = 32 byte = dòng bảng RDET - Để biết entry hay phụ xem xét offset 0B: 0x0F entry phụ, cịn lại entry -> đọc thuộc tính - Entry lưu trữ thơng tin quan trọng tập tin / thư mục Entry phụ dùng để lưu trữ tên file dài - Nhãn ổ đĩa cần đọc tên - Cluster dãy sector nhau, đơn vị vùng data Cluster vùng data số - Tên / tên mở rộng, đọc từ trái qua phải chuyển mã ASCII - Tên chính: đọc đủ ký tự (trừ phía sau khoảng trắng) - Nếu byte entry 0xE5 nghĩa bị xố - Thơng tin ngày giờ,… (cịn lại) đọc ráp byte theo thứ tự ngược lại - Giờ tạo tập tin: đổi byte hexa sang nhị phân, cắt bit phần theo thứ tự từ trái sang phải, sau chuyển thành số thập phân tương ứng Tập tin Thư Nhãn mục ổ đĩa Tập tin ht Bị ẩn Read only - Ngày tạo tập tin: tương tự Năm = Năm + 1980 14 RDET Bài tập RDET - Trong bảng RDET, entry phụ nằm phía entry Tên dài file đọc từ lên - Dùng byte để lưu ký tự, nên ví dụ đọc 10 byte = ký tự - ASCII 2E = dấu chấm (.) -> có đưa vào tên file - ASCII FF -> đánh dấu tên file kết thúc không cần đọc tiếp Phần RDET mô tả thông tin cho: 20 = 00100000 => Tập tin Tên ngắn: WINHEX~ Phần mở rộng: ZIP Ngày tạo: 3A 92 = 0011101 0100 10010 = 29 – – 18 = 18/04/2009 Giờ tạo: 43 6F 72 = 01000 011011 011110 1110010 = - 27 - 30 - 114 = 08:27:30:114 Vị trí cluster bắt đầu: 01CB = 459 Kích thước: 0012B99E = 1227166 15 RDET Đề 2019-2020 thư mục tập tin Tập tin / thư mục 1: • Thuộc tính: 10 -> thư mục • Cịn tồn hay xố: tồn • Tên ngắn: AUTORUN • Phần mở rộng (nếu có): khơng có • Tên dài (nếu có): khơng có tên dài • Cluster bắt đầu: 0002 = • Kích thước: 00000000 Tập tin / thư mục 4: • Thuộc tính: 20 -> tập tin • Cịn tồn hay xố: tồn • Tên ngắn: CHEATE~1 • Phần mở rộng (nếu có): PO • Tên dài (nếu có): cheatengine-x86_64.po • Cluster bắt đầu: 0434 = 1076 • Kích thước: 00043AAE = 277166 Tập tin / thư mục 2: • Thuộc tính: 10 -> thư mục • Cịn tồn hay xố: tồn • Tên ngắn: LANGUA~1 • Phần mở rộng (nếu có): khơng có • Tên dài (nếu có): languages • Cluster bắt đầu: 0003 = • Kích thước: 00000000 Tập tin / thư mục 5: • Thuộc tính: 20 -> tập tin • Cịn tồn hay xố: tồn • Tên ngắn: HOWTOA~1 • Phần mở rộng (nếu có): TXT • Tên dài (nếu có): Hov to add languages.txt • Cluster bắt đầu: 0652 = 1618 • Kích thước: 0000056A = 2661 Tập tin / thư mục 3: • Thuộc tính: 10 -> thư mục • Cịn tồn hay xố: tồn • Tên ngắn: PLUGINS • Phần mở rộng (nếu có): khơng có • Tên dài (nếu có): khơng có tên dài • Cluster bắt đầu: 029A = 666 • Kích thước: 00000000 Tập tin / thư mục 6: • Thuộc tính: 20 -> tập tin • Cịn tồn hay xố: tồn • Tên ngắn: LANGUAGE • Phần mở rộng (nếu có): INI • Tên dài (nếu có): khơng có tên dài • Cluster bắt đầu: 0655 = 1621 • Kích thước: 0000011A = 282 16 RDET Đề 2021-2022 B L U E L A ~ B M P a A N T A F ~ Blue Lace 1.bmp F A T I ~ B MP Santa Fe Stucco.bmp GZ Fat16.img.gz 17 SDET (THƯ MỤC CON) - Tương tự RDET, SDET chứa tên thuộc tính thư mục/tập tin bên thư mục - Bảng SDET ln có thư mục “.” “ ” đầu bảng, với entry lưu tên thư mục hành, entry lưu tên thư mục cha - Các bước đọc: • Đọc RDET thư mục, tìm vị trí cluster bắt đầu (X) -> vị trí bắt đầu lưu SDET gồm thông tin thư mục/tập tin bên thư mục • Từ Boot Sector ta tìm Sector bắt đầu vùng data số sector cho cluster • Tính tốn xem Cluster X bắt đầu sector thứ • VD: Sector bắt đầu vùng data 440, số sector cho cluster 128, cluster bắt đầu RDET • => cluster bắt đầu sector thứ: 440 + (7-2) * 128 = 1080 => xem nội dung RDET sector 1080 - Công thức tổng quát: Cluster C bắt đầu sector: SS + (C - 2) * SC Trong đó, • SS sector bắt đầu vùng DATA • SC số sector cluster • FC số cluster 18 BÀI TẬP SDET Muốn biết sector vùng data, phải biết: - Số byte cho sector: 0200 = 512 - Số sector cho cluster: 01 = - Số sector trước bảng FAT: 0001 = - Số bảng FAT: 02 = - Số sector cho bảng FAT: 0009 = - Số sector vùng RDET: 00E0 = 224 entry = 7168 byte = 7168/512 = 14 sector Sector vùng data = 33 Root Directory Entry Table Tập tin MASTER~1.TPL nằm thư mục nào? - Tập tin lưu trữ vùng sector 76 => cluster bắt đầu thư mục cha là: 33 + (Cluster-2)*1 = 76 => Cluster bắt đầu = 45 - Xét bảng RDET với Cluster bắt đầu thư mục, tìm thư mục cha tập tin xét là: + Tên ngắn: ROASTY~1 + Tên dài: Roasty Bird Game 19 Bảng FAT • Được tổ chức theo dạng mảng chiều, phần tử số nguyên biểu diễn trạng thái TRỐNG, HƯ, RỖNG, hay chứa nội dung tập tin • Nếu dùng 12 bits để lưu phần tử => FAT12, tương tự cho FAT16 • Mỗi phần tử bảng FAT tương ứng với cluster bên vùng data • BAD: khơng lưu • EOF: kết thúc tập tin • FREE: trống Cluster Vị trí cluster 20 Quản lý Bộ nhớ - Cấp phát không liên tục Lưu trữ Page table: - Hệ thống sử dụng m bit địa chỉ: Kích thước Khơng gian địa = 2𝑚 - Page zize thường chọn 2𝑛 - Số trang KGĐC = 2𝑚 / 2𝑛 = 2𝑚−𝑛 - Mỗi tiến trình lưu page table #page = #entry page table - Địa logic: p | d 21 Bộ nhớ ảo – Xử lý lỗi trang Mỗi tiến trình có bảng trang riêng 22 Bộ nhớ ảo – Xử lý lỗi trang Ai xa trang nạn nhân Least recently used Ai xa 23 Bộ nhớ ảo – Xử lý lỗi trang 24

Ngày đăng: 19/04/2023, 14:16

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w