Tài liệu nguyên lý hệ điều hành

35 1.4K 4
Tài liệu nguyên lý hệ điều hành

Đ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

Bài Giải thích khác biệt địa logic địa physic? Trả lời: -Địa logic:là địa không đến địa tồn thực nhớ,nó vị trí nhớ diễn tả chương trình Địa logic phát sinh CPU, chuyển sang địa vật lí(physic) trình quản lí nhớ- Memory Management Unit(MMU) -Địa vật lí địa phát sinh MMU(Memory Management Unit), đến vị nhớ có thực nằm nhớ vật lí Bài Giải thích khác biệt tượng phân mảnh nội vi ngoại vi? Trả lời: -Phân mảnh nội xảy trường hợp nhớ thực(vật lí) chia thành khối có kích thước cố định(fixed- sized block) process cấp phát theo đơn vị khối Các vùng nhớ cấp phát cho tiến trình lớn vùng nhớ mà tiến trình yêu cầu Vùng nhớ phân mảnh nằm khối nhớ cấp phát cho tiến trình,nó không sử dụng tiến trình đó, đồng thời không gian phân mảnh không sẵn sàng cho mục đích sử dụng hệ thống tiến trình rời khỏi khối nhớ cấp phát cho -Phân mảnh ngoại tổng kích thước không gian nhớ trống đủ để cấp phát cho tiến trình vùng nhớ không liên tục Bộ nhớ xuất khe hở vùng nhớ trống tiến trình tiến trình vào hệ thống,tiến trình nạp vào có kích thước nhỏ vùng nhớ giải phóng tiến trình trước kết thúc rời khỏi hệ thống Bài Giả sử nhớ phân thành phân vùng có kích thước 600K, 500K, 200K, 300K ( theo thứ tự ), cho biết tiến trình có kích thước 212K, 417K, 112K 426K ( theo thứ tự ) cấp phát nhớ nào, sử dụng : a) Thuật toán First fit b) Thuật toán Best fit c) Thuật toán Worst fit Thuật toán cho phép sử dụng nhớ hiệu qủa trường hợp ? Trả lời: a First fit: -Tiến trình 212k cấp phát vùng nhớ partion có kích thước 600K -Tiến trình 417K cấp phát vùng nhớ partition có kích thước 500K -Tiến trình 112K cấp phát vùng nhớ partition có kích thước 388K(vùng nhớ tạo thành sau cấp phát cho tiến trình 212K, 600K-212K=388K) -Tiến trình 426K phải chờ, không vùng nhớ trống thỏa yêu cầu b Best fit: -Tiến trình 212K cấp phát vùng nhớ partition có kích thước 300K -Tiến trình 417K cấp phát vùng nhớ nằm partition có kích thước 500K -Tiến trình 112K cấp phát vùng nhớ nằm partition có kích thước 200K -Tiến trình 426K cấp phát vùng nhớ nằm partition có kích thước 600K c Worst fit: -Tiến trình 212K cấp phát vùng nhớ có kích thước 600K -Tiến trình 417K cấp phát vùng nhớ có kích thước 500K -Tiến trình 112K cấp phát vùng nhớ có kích thước 300K -Tiến trình 426 phải đợi, không vùng nhớ trống thỏa yêu cầu èThuật toán best fit cho phép sử dụng nhớ hiệu Bài Xét hệ thống chương trình nạp vào nhớ phân biệt hoàn toàn phân đoạn code phân đoạn data Giả sử CPU xác định cần truy xuất lệnh hay liệu , phải truy xuất đâu Khi chương trình cung cấp ghi base-limit : cho phân đoạn code, cho phân đoạn data Bộ ghi base-limit phân đoạn code tự động đặt thuộc tính read-only Thảo luận ưu khuyết điểm hệ thống Trả lời: *Ưu điểm: Do ghi base limit phân đoạn code tự động đặt thuộc tính readonly,nên chương trình chia sẻ cho nhiều người dùng khác Kĩ thuật có thuận lợi trước hết chế có hiệu việc chia sẻ lệnh(code) liệu(data) Một thí dụ là, có editor(trình soạn thảo) hay compiler(trình biên dịch) cần thiết giữ nhớ,và đoạn code chia sẻ tất tiến trình cần truy xuất đến editor code hay compiler code(code trình soạn thảo hay trình biên dịch) Một ưu điểm kĩ thuật bảo vệ phần code chương trình việc sửa đổi gây lỗi cho chương trình *Khuyết điểm: Kĩ thuật gây khuyết điểm code liệu bị phân thành phần khác nhau,vì thực tế thành phần thường kết hợp với phát sinh trình biên dịch cho chương trình Bài Tại kích thước trang lũy thừa ? Trả lời: Kích thước trang nhớ lũy thừa việc chuyển địa logic thành phần riêng biệt số hiệu trang(p) độ dời trang(d) cách dễ dàng Bởi bit tượng trưng cho số lũy thừa 2,do tách địa thành phần có kết trang nhớ lũy thừa Nếu không gian địa 2^m, kích thước trang nhớ 2^n có 2^(m-n) mục bảng trang, với m-n bits cao cho số hiệu trang, n bits thấp cho độ dời trang Bài Xét không gian địa có trang, trang có kích thước 1K ánh xạ vào nhớ vật lý có 32 khung trang a) Địa logic gồm bit ? b) Địa physic gồm bit ? Trả lời: a Mỗi trang có kích thước 1Kè độ dời cần 10 bit, có trangà cần bit cho số hiệu trang Do địa logic gồm 10+3=13 bit b Độ dời 1K cần 10 bit, có 32 khung trangà cần bit cho số hiệu khung trang Do địa physic gồm 10+5=15 bit Bài Tại hệ thống sử dụng kỹ thuật phân trang, tiến trình truy xuất đến vùng nhớ không cấp cho ? Làm cách hệ điều hành cho phép truy xuất xảy ? Hệ điều hành có nên cho phép điều không ? Tại ? Trả lời: Một địa vật lí hệ thống sử dụng kỹ thuật phân trang xác định số hiệu trang offset Địa vật lý trang tìm thấy việc tìm kiếm bảng trang dựa số hiệu trang logic Bởi hệ điều hành điều khiển nội dung bảng này, giới hạn tiến trình truy cập vào trang nhớ cấp phát cho tiến trình Không có cách để tiến trình tham chiếu đến trang nhớ mà không sở hữu trang nhớ không tồn bảng phân trang Để cho phép việc truy cập xảy ra, hệ điều hành đơn giản cho phép thêm trang nhớ không thuộc tiến trình vào bảng phân trang Điều hữu ích nhiều tiến trình cần trao đổi liệu – tiến trình cần đọc viết vị trí địa nhớ Nó thường sử dụng hiệu việc phối hợp giao tiếp tiến trình Bài Xét hệ thống sử dụng kỹ thuật phân trang, với bảng trang lưu trữ nhớ a) Nếu thời gian cho lần truy xuất nhớ bình thường 200nanoseconds, thời gian cho thao tác truy xuất nhớ hệ thống ? b) Nếu sử dụng TLBs với hit-ratio ( tỉ lệ tìm thấy) 75%, thời gian để tìm TLBs xem 0, tính thời gian truy xuất nhớ hệ thống ( effective memory reference time) Trả lời: a 400nanoseconds, 200nano cho truy xuất đến bảng trang, 200nano cho truy xuất đến vùng nhớ b EAT= 200*0.75+400*0.25=250 nanoseconds Bài Nếu cho phép hai phần tử bảng trang lưu trữ số hiệu khung trang nhớ có hiệu qủa ? Giải thích làm cách hiệu qủa sử dụng để giảm thời gian cần chép khối lượng lớn vùng nhớ từ vị trí sang vị trí khác Khi sửa nội dung trang tác động đến trang lại nào? Trả lời: Nếu cho phép phần tử bảng trang lưu trữ số hiệu khung trang nhớ người dùng chia sẻ code liệu Nếu code reentrant(cho phép chương trình sử dụng đồng thời nhiều tác vụ) có nhiều không gian nhớ lưu suốt trình chia sẻ sử dụng text editor, compiler, hệ thống liệu Chúng ta cần phần tử bảng trang lưu số hiệu khung trang nhớ mà có liên quan đến liệu cần chép Khi kĩ thuật sử dụng để giảm thời gian cần chép khối lượng lớn vùng nhớ từ vị trí sang vị trí khác Tuy nhiên việc chia sẻ liệu hay code có thuộc tính nonreentrant người dùng thao tác lêncode hay liệu chỉnh sửa chúng,đôi việc chỉnh sửa gây cố không mong muốn Khi sửa đổi nội dung trang chia sẻ trang lại bị tác động Bài 10 Vì đôi lúc người ta kết hợp hai kỹ thuật phân trang phân đoạn ? Trả lời: Hai kỹ thuật kết hợp để hỗ trợ lẫn Phân đoạn trang có ích trường hợp bảng trang trở nên lớn Một vùng liên tục bàng trang mà không sử dụng chia vào mục bảng phân đoạn với địa trang Phân trang đoạn xử lí trường hợp có nhiều đoạn dài mà cần nhiều thời gian để cấp phát Bằng việc phân trang đoạn, giảm thiểu lãng phí nhớ phân mảnh ngoại đơn giản trình cấp phát Bài 11 Mô tả chế cho phép phân đoạn thuộc không gian điạ hai tiến trình Trả lời: Do bảng phân đoạn tập hợp ghi ghi giới hạn(base-limit register), phân đoạn chia sẻ mục bảng phân đoạn tiến trình khác ánh xạ vào địa vật lí nhất.Các bảng phân đoạn tiến trình cần có trỏ cho bảng phân đoạn, số hiệu đoạn cần chia sẻ cần giống tiến trình Bài 12 Giải thích chia sẻ module kỹ thuật phân đoạn lại dễ kỹ thuật phân trang? Trả lời: Chia sẻ module kĩ thuật phân đoạn dễ kĩ thuật phân trang việc phân chia đoạn dựa phân chia logic nhớ phân chia vật lí, phân đoạn với kích thước chia sẻ với mục bảng phân đoạn,mục không cần giống bảng bảng phân đoạn khác Ngược lại, kĩ thuật phân trang, để chia sẻ trang số hiệu trang trang cần chia sẻ cần phải giống nhiều bảng trang khác nhau, tức cần có mục chung cho bảng trang với trang cần chia sẻ Bài 13 Xét bảng phân đoạn sau : Segment Base Length 219 600 2300 14 90 100 1327 580 1952 96 Cho biết địa vật lý tương ứng với địa logique sau : a 0,430 b 1,10 c 2,500 d 3,400 e 4,112 I HỆ THỐNG I/O ĐĨA Hầu tất máy tính có đĩa để lưu trữ thông tin Đĩa có ba ưu điểm sử dụng nhớ để lưu trữ : Dung lượng lưu trữ lớn nhiều Giá bit rẻ Thông tin không bị không cung cấp điện I.1 Phần cứng đĩa Một đĩa bao gồm nhiều cylinder, cylinder chứa nhiều track head Mỗi track chia làm nhiều sector (từ đến 32) Mỗi sector có số byte dù vị trí gần tâm hay rìađĩa, khoảng trống thừa không dùng đến Một đặc điểm thiết bị cài đặt quan trọng cho driver đĩa khả điều khiển thực tìm kiếm hai hay nhiều driver lúc gọi tìm kiếm chồng Trong điều khiển phần mềm đợi việc tìm kiếm hoàn tất đĩa, điều khiển khởi động việc tìm kiếm đĩa khác Các điều khiển lúc đọc ghi hai driver khả làm giảm thời gian truy xuất trung bình I.2 Các thuật toán đọc đĩa Tất công việc phụ thuộc vào việc nạp chương trình nhập xuất tập tin, điều quan trọng dịch vụ đĩa phải nhanh tốt Hệ điều hành tổ chức dịch vụ truy xuất đĩa tốt cách lập lịch yêu cầu truy xuất đĩa Tốc độ đĩa bao gồm ba phần Để truy xuất khối đĩa, trước tiên phải di chuyển đầu đọc đến track hay cylinder thích hợp, thao tác gọi seek thời gian để hoàn tất gọi seek time Một đãđến track, phải chờ khối cần thiết đến đầu đọc Thời gian chờ gọi latency time Cuối vận chuyển liệu đĩa nhớ gọi transfer time Tổng thời gian cho dịch vụ đĩa tổng ba khoảng thời gian Trong seek time latency time nhiều thời gian nhất, để giảm thiểu thời gian truy xuất hệ điều hành đưa thuật toán lập lịch truy xuất Lập lịch FCFS : Phương pháp lập lịch đơn giản FCFS(first-come,first-served) Thuật toán dể lập trình không cung cấp dịch vụ tốt Ví dụ : cần phải đọc khối theo thứ tự sau : 98, 183, 37, 122, 14, 124, 65, 67 Giả sử đầu đọc vị trí 53 Như đầu đọc qua khối 53, 98, 183, 37, 122, 14, 124, 65, 67 hình sau : Lập lịch SSTF (shortest-seek-time-first) Thuật toán di chuyển đầu đọc đến khối cần thiết theo vị trí gần với vị trí hành đầu đọc Ví dụ : cần đọc khối sau : 98, 183, 37, 122, 14, 124, 65, 67 Giả sử đầu đọc vị trí 53 Như đầu đọc qua khối 53, 65, 67, 37, 14, 98, 122, 124 183 hình sau : Với ví dụ này, thuật toán SSTF làm giảm số khối mà đầu đọc phải di chuyển 208 khối Lập lịch SCAN Theo thuật toán này, đầu đọc di chuyển phía đĩa từ di chuyển qua phía Ví dụ : cần đọc khối sau : 98, 183, 37, 122, 14, 124, 65, 67 Giả sử đầu đọc vị trí 53 Như đầu đọc qua khối 53, 37, 14, , 65, 67, 98, 122, 124 183 hình sau : 10 Chức đồng hồ, quản lý thời gian ngày không khó Chỉ cần tăng đếm sau nhịp đồng hồ đề cập Vấn đề lưu ý số lượng bit cho counter Vớiđồng hồ tần số 60 MHz, đếm 32 bit bị tràn sau hai năm Do hệ thống lưu trữ thời gian thực dạng số nhịp từ 01/01/1970 Có ba cách giải Thứ nhất, dùng đếm 64 bit, giải pháp tốn Thứ hai, lưu trữ dạng giây thay nhịp 232 giây 136 năm Thứ ba, đếm theo nhịp, liên hệ với thời gian hệ thống khởi động Chức thứ hai không cho phép tiến trình thực lâu Khi tiến trình bắt đầu, lập lịch khởi gán giá trị cho đếm, ngắt đồng hồ giảm giá trị đếm, giá trị 0, điều khiển đồng hồ yêu cầu lập lịch thiết lập giá trị cho tiến trình khác Chức thứ ba kế toán việc sử dụng CPU Cách thức xác sử dụng timer thứ hai, khác với timer hệ thống Bộ timer thứ hai khởi động tiến trình bắt đầu tiến trình kết thúc, timer cho biết thời gian tiến trình thực Phần lớn hệ thống cần thiết thiết lập timer Gọi watchdog timer Ví dụ, để sử dụng đĩa mềm, hệ thống phải khởi động motor chờ khoảng 500msec đạt tốc độ Vì vậy, ý tưởng tốt phải sử dụng watchdog timer để chờ cho thao tác I/O tiếp theo, vào khoảng giây, không tắt motor 21 Câu Process gì?Process khác chương trình điểm gì?Cho biết công việc phận Process Management Tiến trình chương trình xử lí, sở hữu tập trỏ lệnh, tập ghi, biến tập tài nguyên cần cho hoạt động tiến trình Chương trình thực thể thụ động chứa thị điều khiển máy tính để tiến hành hoạt động đó, thực tác vụ chương trình chuyển thành tiến trình – thực thể hoạt động với trỏ lệnh xác định thị thi hành tập tài nguyên Bộ phận Process Management có nhiệm vụ: Tạo hủy tiến trình người dùng tiến trình hệ thống • o o o • o o o o o • o o o 1 - Hoãn khôi phục tiến trình - Cung cấp chế cho việc đồng hóa tiến trình - Cung cấp chế cho việc giao tiếp tiến trình - Cung cấp chế quản lý deadlock Câu Cho biết công việc phận Memory Management, file management, secondary storage management? Memory Management Theo dõi thành phần của nhớ sử dụng tiến trình sử dụng Quyết định tiến trình liệu di chuyển khỏi đưa vào nhớ Cấp phát hủy không gian nhớ cần File Management Tạo xóa tập tin Tạo xóa thư mục Hỗ trợ thao tác tập tin thư mục Ánh xạ tập tin vào lưu trữ thứ cấp Sao lưu thiết bị ổn định Storage Management Quản lí không gian trống Cấp phát cho việc lưu trữ liệu Định thời yêu cầu truy cập nhớ Câu Cho biết công việc phận I/O system management Hệ thống bảo vệ? I/O Management: Che dấu khác biệt thiết bị người dùng i Cung cấp giao diện chung đến trình điều khiển thiết bị (device driver) 22 ii Bộ điều khiển thiết bị phần cứng iii Các chế buffering, caching, spooling b Hệ thống bảo vệ: i Cung cấp chế kiểm soát đăng nhập đăng xuất ii Phân định truy cập tài nguyên hợp pháp, bất hợp pháp iii Phương tiện thi hành sách (cần bảo vệ liệu ai) Câu System call gì? đưa số ví dụ system call System program khác application program nào?liệt kê system program System Call chế mà chương trình ứng dụng sử dụng để yêu cầu dịch vụ có sẵn hệ điều hành Hay nói cách khác System Call cung cấp giao diện cho dịch vụ mà hệ điều hành cung cấp Ví dụ system call: Lệnh fork() Unix dùng để tạo tiến trình System Program chương trình cung cấp môi trường thuận tiện để phát triển thực thi chương trình Application chương trình viết để giúp người sử dụng giải vấn đề thao tác công việc Ví dụ Web Browser, Microsoft Office Word - • • • • • Vài ví dụ System Program là: Compiler, Linker, Loader, Debugger Câu Kernel mode ? User mode ? Cho biết khác chúng ? Các trạng thái trình? vẽ sơ đồ giải thích chuyển đổi trạng thái? Kernel mode: tác vụ thực thi thay mặt cho hệ diều hành User mode: tác vụ thực thi thay mặt cho người dùng Khác biệt: Khi CPU Kernel mode, thực thi thị tham chiếu đến địa nhớ Khi Cpu user mode, truy nhập đến phần cứng tham chiếu đến nhớ cách trực tiếp Các đoạn mã user mode phải chuyển đổi thành hàm API hệ thống để truy nhập tới nhớ phần cứng Các trạng thái trình (process states): new: trình vừa tạo ready: trình có đủ tài nguyên, cần CPU running: lệnh trình thực thi waiting: blocked, trình đợi I/O hoàn tất, tín hiệu terminated: trình kết thúc 23 Câu Tại hệ điều hành đại hỗ trợ môi trường đa nhiệm ? Phân biệt multitask, multiprogramming multiprocessing Các hệ điều hành đại hỗ trợ môi trường đa nhiệm vì: tăng hiệu suất sử dụng CPU tăng tốc độ xử lý Multitasking (đa nhiệm): thực nhiều nhiệm vụ lúc, CPU luân phiên xử lý tiến trình khoảng thời gian chuyển sang cho tiến trình khác VD: nghe nhạc duyệt web đồng thời Multiprogramming (đa chương): có nhiều chương trình nằm nhớ để lựa chọn chuyển giao cho CPU thực thi Ví dụ: mở Word, Excel, Powerpoint lúc, sử dụng Word Excel Powerpoint thường trực nhớ chúng không thực việc Multiprocessing (đa tiến trình): sử dụng nhiều CPU để xử lý song song lúc nhiều tiến trình Câu Khái niệm tiến trình xây dựng nhằm mục đích ? Sự khác biệt, mối quan hệ tiến trình tiểu trình ? Để hỗ trợ đa chương, máy tính phải có khả thực nhiều tác vụ đồng thời Nhưng việc điều khiển nhiều hoạt động song song cấp độ phần cứng khó khăn Vì nhà thiết kế hệ điều hành đề xuất mô hình song song gỉa lặp cách chuyển đổi xử lý qua lại chương trình để trì hoạt động nhiều chương trình lúc, điều tạo cảm giác có nhiều hoạt động thực đồng thời Trong mô hình này, tất phần mềm hệ thống tổ chức thành số tiến trình (process) 24 Tiến trình có không gian địa có dòng xử lý Các tiểu trình chia sẻ không gian địa chỉ, dòng xử lý hoạt động song song tương tự tiến trình phân biệt Một tiến trình có nhiều tiểu trình chạy đồng thời Câu Thông tin lưu trữ PCB TCB ? Tổ chức điều phối tiến trình ? Phân tích ưu, khuyết chiến lược điều phối PCB cấu trúc liệu quan tọng hệ điều hành gồm: • • • • • • • Trạng thái trình: new, ready, running,… Bộ đếm chương trình Các ghi Thông tin lập thời biểu CPU: độ ưu tiên, … Thông tin quản lý nhớ Thông tin tài khoản: lượng CPU, thời gian sử dụng, Thông tin trạng thái I/O Tổ chức điều phối: Long-term scheduling,Medium-term scheduling,Short term scheduling Hỗ trợ thực thi luân phiên nhiều trình + Hiệu suất sử dụng CPU + Thời gian đáp ứng - Phân phối tài nguyên hệ thống hợp lý + tránh deadlock, trì hoãn vô hạn định,… - Cung cấp chế giao tiếp đồng hoạt động trình - Cung cấp chế hỗ trợ user tạo/kết thúc trình Câu Các chế trao đổi thông tin : tình sử dụng, ưu, khuyết ?Các yêu cầu đồng hoá ? Các chế trao đổi thông tin: Signal : Không truyền liệu Pipe: Truyền liệu không cấu trúc Shared Memory: Mâu thuẫn truy xuất => nhu cầu đồng hoá Message: Liên lạc môi trường phân tán + Liên kết tiềm ẩn • • Send(message) : gởi thông điệp Receive(message) : nhận thông điệp 25 + Liên kết tường minh + Send(destination, message) : gởi thông điệp đến destination Receive(source,message) : nhận thông điệp từsource Socket: thiết bị truyền thông hai chiều tập tin Mỗi Socket thành phần mối nối máy mạng + Các thuộc tính socket:domaine, type • • • • • • • • Các yêu cầu đồng hóa: Độc quyền truy xuất (Mutual exclusion):Khi process P thực thi vùng tranh chấp (CS) process Q khác thực thi CS Q Progress:Một tiến trình tạm dừng bên miền găng không ngăn cản tiến trình khác vào miền găng việc lựa chọn P vào CS phải có hạn định Chờ đợi giới hạn (Bounded waiting): Mỗi process phải chờ để vào vùng tranh chấp khoảng thời gian có hạn định Không xảy tình trạng đói tài nguyên (starvation) Không có giả thiết đặt cho liên hệ tốc độ tiến trình, số lượng xử lý hệ thống Câu 10 Phân biệt nhóm giải pháp busy waiting Sleep&Wakeup.Phân biệt cách sử dụng semaphore, monitor Busy Wating While(Chưa có quyền) Do nothing; CS; Từ bỏ quyền; TiếptụctiêuthụCPUtrongkhichờđợivàomiềngăng KhôngđòihỏisựtrợgiúpcủaHệđiềuhành Sleep Wake up if (chưa có quyền) Sleep() ; cs; wake up (by someone); • • TừbỏCPUkhichưađượcvàomiềngăng CầnđượcHệđiềuhànhhỗtrợ Câu 11 Giải thích khác biệt địa logic địa physic?Giải thích khác biệt tượng phân mảnh nội vi ngoại vi? Địa Logic: địa không đến địa tồn thực nhớ, vị trí nhớ diễn tả chương trình Địa logic phát 26 sinh CPU, chuyển sang địa vật lí (physic) chương trình quản lí nhớ – memory Management Unit (MMU) Địa vật lí địa nhớ phát sinh MMU( Memory management Unit), đến vị trí nhớ có thực nằm nhớ vật lí Phân mảng ngoại: (External Fragmentation) Kích thước không gian nhớ trống đủ để thỏa mãn yêu cầu cấp phát, nhiên không gian nhớ không liên tục Phân mảnh nội (internal fragmentation) Kích thước vùng nhớ cấp phát lớn so với yêu cầu.Ví dụ cấp khoảng 18,464 bytes cho yêu cầu 18,462 bytes Hiện tượng phân mảng nội thường xảy nhớ thực (physical memory) chia thành khối kích thước ố định (fixed sized block) process cấp phát theo đơn vị khối ví dụ chế phân trabg (paging) Câu 12 Khi xảy lỗi trang ?Mô tả xử lý hệ điều hành có lỗi trang.Giả sử có chuỗi truy xuất nhớ có chiều dài p với n số hiệu trang khác xuất chuỗi Giả sử hệ thống sử dụng m khung trang ( khởi động trống) Với thuật toán thay trang :Cho biết số lượng tối thiểu lỗi trang xảy ?Cho biết số lượng tối đa lỗi trang xảy ? Lỗi trang xảy người dùng truy cập tới trang không hợp lệ (nghĩa trang không không gian địa trình – không nhớ chính) ta truy cập trang hợp lệ nhớ phục (swap space) Xử lí hệ điều hành: Việc truy xuất trang không hợp lệ gây trap lỗi trang (Page – fault trap) Phần cứng phần trang, dịch địa thông qua bảng trang, thông báo bit không hợp lệ đặt vào, gây trap tới hệ điều hành Trap kích khởi dịch vụ page – fault service routine (PFSR) hệ điều hành Các bước xử lí PFSR: B1: chuyển process phát tham chiếu trạng thái blocked B2:phát yêu cầu đọc đĩa để nạp trang tham chiếu vào frame trống; đợi I/O process khác cấp CPU để thực thi B3: Sau I/O hoàn tất, đĩa gây ngắt đến hệ điều hành, PFSR cập nhật page table chuyển process trạng thái ready * Tại bước PFSR, giả sử phải thay trang không tìm frame trống, PFSR bổ sung sau: + xác định vị trí đĩa trang cần + tìm frame trống 27 • • • có frame trống dùng frame trống dùng giải thuật thay trang để chọn trang hy sinh (victim page) ghi victim page lên đĩa, cập nhật page table frame table tương ứng + đọc trang cần vào frame trống, cập nhật page table frame table tường ứng 28 1.Điều phối FIFO CPU cấp phát cho tiến trình danh sách sẵn sàng có yêu cầu, tiến trình đưa vào hệ thống sớm Đây thuật toán điều phối theo nguyên tắc độc quyền Một CPU cấp phát cho tiến trình, CPU tiến trình tự nguyện giải phóng kết thúc xử lý hay có yêu cầu nhập/xuất *Thời gian xử lý : P1=24,P2=3,P3=3 * Thời gian xử lý trung bình : (24+3+3)/3=10 *Thời gian đợi : P1=0; P2=24-1 =23 ; P3 = 24+3-2 = 25 *Thời gian đợi trung bình: (0+23+25)/3 = 16 * Thời gian lưu lại hệ thống : P1=24 ; P2=3; P3=3 * Thời gian lưu lại trung bình : (24+3+3)/3 =10 29 2.Chiến lược điều phối xoay vòng : Danh sách sẵn sàng xử lý danh sách vòng, điều phối cấp phát cho tiến trình danh sách khoảng thời gian sử dụng CPU gọi quantum Đây giải thuật điều phối không độc quyền : tiến trình sử dụng CPU đến hết thời gian quantum dành cho nó, hệ điều hành thu hồi CPU cấp cho tiến trình danh sách Nếu tiến trình bị khóa hay kết thúc trước sử dụng hết thời gian quantum, hệ điều hành cấp phát CPU cho tiến trình khác Khi tiến trình tiêu thụ hết thời gian CPU dành cho mà chưa hoàn tất, tiến trình đưa trở lại vào cuối danh sách sẵn sàng để đợi cấp CPU lượt 30 *Thời gian xử lý : P1=24,P2=3,P3=3 * Thời gian xử lý trung bình : (24+3+3)/3=10 *Thời gian đợi : P1=0 P2=4-1=3 P3=4+3-2=5 P1'=4+3+3-3=6 đến lúc p1 xử lý liên tục nên tính thời gian chờ p1'' p1''' *Thời gian đợi trung bình: (0+3+5+6)/3=4.66 * Thời gian lưu lại hệ thống : P1: vòng =4 vòng 2=20 khoảng cách vòng => thời gian lưu lại P1 =4+20+6 =30 P2=3 P3=3 * Thời gian lưu lại trung bình : (30+3+3)/3=12 3.Điều phối với độ ưu tiên Mỗi tiến trình gán cho độ ưu tiên tương ứng, tiến trình có độ ưu tiên cao chọn để cấp phát CPU Độ ưu tiên định nghĩa nội hay nhờ vào yếu tố bên Độ ưu tiên nội sử dụng đại lượng đo lường để tính toán độ ưu tiên tiến trình, ví dụ giới hạn thời gian, nhu cầu nhớ…Độ ưu tiên gán từ bên dựa vào tiêu chuẩn hệ điều hành tầm quan trọng tiến trình, loại người sử dụng sỡ hữu tiến trình… Giải thuật điều phối với độ ưu tiên theo nguyên tắc độc quyền hay không độc quyền Khi tiến trình đưa vào danh sách tiến trình sẵn sàng, độ ưu tiên so sánh với độ ưu tiên tiến trình hành xử lý Giải thuật điều phốivới độ ưu tiên không độc quyền thu hồi CPU từ tiến trình hành để cấp phát cho tiến trình độ ưu tiên tiến trình cao tiến trình hành Một giải thuật độc quyền đơn giản chèn tiến trình vào danh sách sẵn sàng, tiến trình hành tiếp tục xử lý hết thời gian dành cho 31 * Trường hợp độc quyền *Thời gian xử lý : P1=24,P2=3,P3=3 * Thời gian xử lý trung bình : (24+3+3)/3=10 *Thời gian đợi : P1=0;P2=23;P3=25 *Thời gian đợi trung bình: (0+23+25)/3=16 * Thời gian lưu lại hệ thống : P1=24; P2=3;P3=3 * Thời gian lưu lại trung bình: ( 24+3+3)/3=10 *Trường hợp không độc quyền: *Thời gian xử lý : P1=24,P2=3,P3=3 * Thời gian xử lý trung bình : (24+3+3)/3=10 *Thời gian đợi : P1=0 P2=0+1-1=0 32 P3=0+1+3-2=2 P1'=0+1+3+3-3=4 *Thời gian đợi trung bình: (0+0+2+4)/3=2 * Thời gian lưu lại hệ thống : P1 Vòng = vòng 2= 23 khoảng cách vòng =6 => thời gian lưu lại p1= 1+23+6=30 p2=3 p3=3 * Thời gian lưu lại trung bình : (30+3+3)/3=12 4.Chiến lược công việc ngắn (Shortest-job-first SJF) Đây trường hợp đặc biệt giải thuật điều phối với độ ưu tiên Trong giải thuật này, độ ưu tiên p gán cho tiến trình nghịch đảo thời gian xử lý t mà tiến trình yêu cầu : p = 1/t Khi CPU tự do, cấp phát cho tiến trình yêu cầu thời gian để kết thúc- tiến trình ngắn Giải thuật độc quyền hay không độc quyền Sự chọn lựa xảy có tiến trình đưa vào danh sách sẵn sàng tiến trình khác xử lý Tiến trình sỡ hữu yêu cầu thời gian sử dụng CPU cho lần (CPU-burst) ngắn thời gian lại mà tiến trình hành cần xử lý Giải thuật SJF không độc quyền dừng hoạt động tiến trình hành, giải thuật độc quyền cho phép tiến trình hành tiếp tục xử lý 33 * Trường hợp độc quyền *Thời gian xử lý : P1=6,P2=8,P3=4;P4=2 * Thời gian xử lý trung bình : (6+8+4+2)/4=5 *Thời gian đợi : P1=0 p4=5 ; p3=6; p2=9 *Thời gian đợi trung bình: (0+5+6+9)/4=5 * Thời gian lưu lại hệ thống : P1=6; P4=2;P3=4;P2=8 * Thời gian lưu lại trung bình: ( 6+2+4+8)/4=5 *Trường hợp không độc quyền: *Thời gian xử lý : P1=6,P2=8,P3=4;P4=2 * Thời gian xử lý trung bình : (6+8+4+2)/4=5 *Thời gian đợi : 34 P1=0 P4=2 P1'=3 P3=5 P2=8 *Thời gian đợi trung bình: (0+2+3+5+8)/4=4.5 * Thời gian lưu lại hệ thống : P1 Vòng = vòng 2= khoảng cách vòng =2 => thời gian lưu lại p1= 3+3+2=8 P4=2 p3=4 P2=8 * Thời gian lưu lại trung bình : (8+2+4+8)/4=5 35 [...]... chức điều phối tiến trình ? Phân tích ưu, khuyết của các chiến lược điều phối PCB là một trong các cấu trúc dữ liệu quan tọng nhất của hệ điều hành và gồm: • • • • • • • Trạng thái quá trình: new, ready, running,… Bộ đếm chương trình Các thanh ghi Thông tin lập thời biểu CPU: độ ưu tiên, … Thông tin quản lý bộ nhớ Thông tin tài khoản: lượng CPU, thời gian sử dụng, Thông tin trạng thái I/O Tổ chức điều. .. nhưng đang ở bộ nhớ phục (swap space) Xử lí của hệ điều hành: Việc truy xuất một trang không hợp lệ gây ra một trap lỗi trang (Page – fault trap) Phần cứng phần trang, dịch địa chỉ thông qua bảng trang, sẽ thông báo rằng bit không hợp lệ đã được đặt vào, gây ra một trap tới hệ điều hành Trap này kích khởi dịch vụ page – fault service routine (PFSR) của hệ điều hành Các bước xử lí của PFSR: B1: chuyển process... trình vừa được tạo ready: quá trình đã có đủ tài nguyên, chỉ còn cần CPU running: các lệnh của quá trình đang được thực thi waiting: hay là blocked, quá trình đợi I/O hoàn tất, tín hiệu terminated: quá trình đã kết thúc 23 Câu 6 Tại sao các hệ điều hành hiện đại hỗ trợ môi trường đa nhiệm ? Phân biệt multitask, multiprogramming và multiprocessing Các hệ điều hành hiện đại hỗ trợ môi trường đa nhiệm vì:... được vẫn là từ 1 đến 17 II HỆ THỐNG I/O CHUẨN (TERMINALS) Mọi máy tính đều liên lạc với một hay nhiều terminals Terminals có rất nhiều dạng khác nhau Bộ điều khiển terminals ẩn dấu mọi sự khác biệt, vì vậy phần độc lập thiết bị của hệ điều hành và chương trình người sử dụng không cần thiết phải viết lại cho mỗi loại terminal II.1 Phần cứng terminal Dưới quan điểm của hệ điều hành, terminal được chia... trạng đói tài nguyên (starvation) Không có giả thiết nào đặt ra cho sự liên hệ về tốc độ của các tiến trình, cũng như về số lượng bộ xử lý trong hệ thống Câu 10 Phân biệt nhóm giải pháp busy waiting và Sleep&Wakeup.Phân biệt cách sử dụng semaphore, monitor Busy Wating While(Chưa có quyền) Do nothing; CS; Từ bỏ quyền; TiếptụctiêuthụCPUtrongkhichờđợivàomiềngăng KhôngđòihỏisựtrợgiúpcủaHệđiềuhành Sleep... lệnh, tập các thanh ghi, các biến và một tập các tài nguyên cần cho hoạt động của tiến trình Chương trình là một thực thể thụ động chứa các chỉ thị điều khiển máy tính để tiến hành một hoạt động nào đó, khi thực hiện tác vụ này thì chương trình chuyển thành tiến trình – một thực thể hoạt động với con trỏ lệnh xác định chỉ thị tiếp theo sẽ thi hành và tập tài nguyên Bộ phận Process Management có nhiệm vụ:... bên ngoài dựa vào các tiêu chuẩn do hệ điều hành như tầm quan trọng của tiến trình, loại người sử dụng sỡ hữu tiến trình… Giải thuật điều phối với độ ưu tiên có thể theo nguyên tắc độc quyền hay không độc quyền Khi một tiến trình được đưa vào danh sách các tiến trình sẵn sàng, độ ưu tiên của nó được so sánh với độ ưu tiên của tiến trình hiện hành đang xử lý Giải thuật điều phốivới độ ưu tiên và không... đang xử lý Tiến trình mới có thể sỡ hữu một yêu cầu thời gian sử dụng CPU cho lần tiếp theo (CPU-burst) ngắn hơn thời gian còn lại mà tiến trình hiện hành cần xử lý Giải thuật SJF không độc quyền sẽ dừng hoạt động của tiến trình hiện hành, trong khi giải thuật độc quyền sẽ cho phép tiến trình hiện hành tiếp tục xử lý 33 * Trường hợp độc quyền *Thời gian xử lý : P1=6,P2=8,P3=4;P4=2 * Thời gian xử lý trung... ứng 28 1 .Điều phối FIFO CPU được cấp phát cho tiến trình đầu tiên trong danh sách sẵn sàng có yêu cầu, là tiến trình được đưa vào hệ thống sớm nhất Đây là thuật toán điều phối theo nguyên tắc độc quyền Một khi CPU được cấp phát cho tiến trình, CPU chỉ được tiến trình tự nguyện giải phóng khi kết thúc xử lý hay khi có một yêu cầu nhập/xuất *Thời gian xử lý : P1=24,P2=3,P3=3 * Thời gian xử lý trung bình... cho nó, hệ điều hành thu hồi CPU và cấp cho tiến trình kế tiếp trong danh sách Nếu tiến trình bị khóa hay kết thúc trước khi sử dụng hết thời gian quantum, hệ điều hành cũng lập tức cấp phát CPU cho tiến trình khác Khi tiến trình tiêu thụ hết thời gian CPU dành cho nó mà chưa hoàn tất, tiến trình được đưa trở lại vào cuối danh sách sẵn sàng để đợi được cấp CPU trong lượt kế tiếp 30 *Thời gian xử lý : ... 10+5=15 bit Bài Tại hệ thống sử dụng kỹ thuật phân trang, tiến trình truy xuất đến vùng nhớ không cấp cho ? Làm cách hệ điều hành cho phép truy xuất xảy ? Hệ điều hành có nên cho phép điều không ? Tại... lời: Một địa vật lí hệ thống sử dụng kỹ thuật phân trang xác định số hiệu trang offset Địa vật lý trang tìm thấy việc tìm kiếm bảng trang dựa số hiệu trang logic Bởi hệ điều hành điều khiển nội dung... cho loại terminal II.1 Phần cứng terminal Dưới quan điểm hệ điều hành, terminal chia làm hai loại lớn dựa vào cách liên lạc với hệ điều hành Loại thứ bao gồm loại terminal giao chuẩn RS-232 Loại

Ngày đăng: 24/12/2015, 14:25

Tài liệu cùng người dùng

Tài liệu liên quan