5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
ĐỀ CƯƠNG ÔN TẬP MÔN HỆ ĐIỀU HÀNH
Bài 1: Tổng quan về hệ điều hành.
Câu 1: Khái niệm, chức năng của HĐH. - Là hệ chương trình hoạt động giữa người sử dụng với phần cứng máy tính. -Chức năng: + Tạo 1 máy ảo tương đối độc lập với phần cứng, giúp người sử dụng má tính dễ dàng hơn. + Quản lí - sử dụng tài nguyên hi ệu quả, an toàn hơn. Câu 2:
Người sử dụng Các chương trình ứng dụng Các tiện ích(compilers, editors…) Hệ điều hành Ngôn ngữ máy tính Kiến trúc vi mô Các thiết bị vật lí Câu 3: HĐH Windows XP thuộc loại nào Hệ điều hành đa nhiệm (Multitasking)
Câu 4: Ví dụ về 2 máy ảo được cài đặt trên một PC vật lí (ý kiến cá nhân) - Ví dụ: PC cài đặt 2 HĐH Windows XP và Ubuntu 11.10. Bài 2: Tiến trình và tiểu trình.
Câu 1: Khái niệm - Tiến trình(process): + Là một chương trình đang được thực thi, sở hữu một ngữ cảnh gồm: không gian địa chỉ, một con trỏ lệnh, tập các thanh ghi và stack. + Tiến trình có thể cần đến một số tài nguyên như CPU, bộ nhớ, các tập ti và thiết bị nhập xuất. - Tiểu trình: nếu chương trình được viết theo một giải thuật tuần tự thì tiến trìn ứng với nó chỉ chứa một luồng thi hành lệnh gọi là tiểu trình – thread, tuần tự thực hiện từ điểm bắt đầu điểm kết thúc chương trình. Câu 2: Các nhu cầu dẫn đến việc xử lí đồng hành các tiến trình. - Tăng hiệu suất sử dụng CPU. - Tăng tốc độ xử lí. - Người sử dụng muốn thực hiện cùng lúc nhiều việc. Câu 3: Ví dụ chứng tỏ lợi ích của việc xử lí đồng hành (ý kiến cá nhân). - Ví dụ: người dùng sử dụng hđh Windows XP có thể cùng một lúc: nghe nhạc, lướt web, soạn thảo văn bản, lập trình …
http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
1/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Câu 4: Xem danh sách các tiền trình đang hoạt động trên Windows XP + Trên màn hình Desktop b ấm tổ hợp phím Ctrl+Alt+Del -> Windows Task Manager -> chọn thẻ Processes. + Chuột phải thanh tác vụ (TaskBar) chọn Start Task Manager -> ch ọn thẻ Proccesses.
Bài 3: Quản lí tiến trình.
Câu 1: Các trạng thái của tiến trình. - New: tiến trình mới được tạo ra. - Running: tiến trình đang được thực thi. - Waiting (block): tiến trình chờ một sự kiện nào đó xả y ra (I/O, cấp phát tài nguy nhận tín hiệu …). - Ready: tiến trình sẵn sang thực thi nếu được cấp phát CPU. - Terminated: ti ến trình đã kết thúc, bộ nhớ cấp phát cho tiến trình được giải phó Câu 2 : Các thao tác qu ản lí tiến trình. - Tạo lập tiến trình (create process). - Kết thúc tiến trình (terminate process). - Thay đổi trạng thái ti ến trình (change process state). - Thay đổi độ ưu tiên tiến trình.
Câu 3: Sơ đồ trạng thái và các thao tác chuyển sang trạng thái tiến trình. new
terminated exit
admited interru ted ready
running
Scheduler dispatch I O or event com letion
I O or event wait waiting
Câu 4: Mục tiêu của việc điều phối tiến trình. - Đảm bảo sự công bằng giữa các tiến trình. - Tăng hiệu quả sử dụng CPU. - Giảm thiểu thời gian lưu lại hệ thống. - Tăng tối đa thông lượng. http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
2/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Câu 5: Sơ đồ tổ chức điều phối tiến trình trong trường hợp các tiến trình tham chiếu tớ tài nguyên . Cấ resource
Cấp CPU
Ready List
Kết thúc
CPU
Time-out or ininterru t
Cấ resource
Waiting list for resources
blocked
1 Cấ resource
Waiting list for resources
blocked
2 Cấ resource
Waiting list for resources
blocked
3
Câu 6: Chiến lược điều phối tiến trình (không vẽ sơ đồ) - Đến trước phục vụ trước (FCFS, FIFO). - Xoay vòng (round robin). - Căn cứ vào độ ưu tiên (priority-scheduling). - Ưu tiên công việc ít thời gian (shortest-job-first). - Chia thành nhiều cấp ưu tiên. - Chọn ngẫu nhiên (lottery).
Câu 7: Bí!!! Bài 4: Liên lạc và đồng bộ hóa. http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
3/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Câu 1: Các cơ chế lien lạc giữa các tiến trình. - Signal. - Pipe.
- Message. - Socket.
- Shared Memory.
Câu 2: Giao thức TCP/IP thuộc cơ chế Socket (khớp nối) nhưng được thể hiện bằng port.
Máy A
Máy B socket
Port
socket
Mối nối
Hệ thống mạng
huống xung đột. Câu 3:- VíVíddụụvềvềtính hệ thống bán vé máy bay online:
Đại lí bán vé P1
Ngân hàng B
Đại lí bán vé P2
Hãng hàng không A
+ Quy trình bán vé tại đại lí: B1: hỏi A số chỗ còn trống SCA: N:=SCA B2: if N=0 then dừng else đi tiếp B3: chuyển tiền mua vé T vào tài khoản TKA của A tại B: TKA:=TKA+T B4: in hóa đơn cho khách hàng B5: trừ N đi 1 và yêu cầu A ghi vào SCA: SCA:=N-1 + Hai đại lí cùng bán vé: Time 0 1 2 3 4 5 6
P1 B1: N:=SCA B2: (N=1) B3: B4: B5: SCA:=N-1
P2
B1: N:=SCA B2: (N=1) B3: B4: B5: SCA:=N-1
A: SCA SCA=1
+ Nguyên nhân sai: P1 và P2 cùng t xuất vào SCA.
SCA=0 SCA=0
SAI http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
4/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Câu 4: Khái niệm miền găng (critical section), các yêu cầu để giái quyết tốt vấn đề đồ bộ hóa. - KN: là đoạn chương trình trong đó có khả năng xảy ra các sai sót khi truy xuất trên tài nguyên chung. - Các yêu cầu: + ”Loại trừ lẫn nhau”:
không thể có 2 tiến trình cùng lúc trong mi ển găng. + ”Tiến độ”: chỉ những tiến trình đang không thực thi mới có thể tham gia v việc quyết định tiến trình tiếp theo đi vào miền găng. + ”Chờ đợi có giới hạn”: giới hạn số lần các ti ến trình khác được phép đi v miền găng sau khi một tiến trình thực hi ện yêu cầu để đi vào miền găng củ nó và trước khi yêu cầu đó được thỏa mãn.
Bài 5: Các giải pháp đồng bộ hóa.
Câu 1: Giải pháp biến khóa trong trường hợp có 2 tiến trình P0 và P1 có yêu cầu vào miền găng. Giải thích vì sao giải pháp này không đáp ứng được yêu cầu “Loại trừ lẫn nhau”? - Giải pháp: dùng 1 biến chung (lock) cho các ti ến trình để xác định tình trạng được vào đoạn găng hay không (0:được ; 1:không được ). Lock=k: có k ti ến trìn đang trong đoạn găng. Do{ While(Lock ==1); Lock=1;
Lock=0; }while(TRUE); - Giải thích: vì vẫn có thể có nhiều tiến trình cùng vào đoạn găng.
Câu 2: Giải pháp Peterson trong trường hợp chỉ có 2 tiến trinh P0 và P1 có yêu cầu v miền găng. -Giải pháp: dùng 2 bi ến int turn; boolean flag[2]; Trong đó: turn=1 : đến lượ t Pi có quyền vào miền găng. flag[i]=true : Pi có yêu c ầu vào miền găng.
http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
5/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Do{ flag[i]=TRUE; turn =1-i; while (flag[1-i] && (turn ==1-i); flag[i]=FALSE; }while(TRUE);
Câu 3: Giải pháp Semaphore. + Dijkstra đề xuất năm 1965. + Ứng với mỗi tài nguyên găng CR, tạ o 1 bi ến nguyên S với giá trị khởi đầ là 1 và 1 waiting list F lưu các tiến trình chờ được cấp quyền truy xuất CR +Trong hđh, thiết lập 2 thủ tục nguyên tử Down(P,S,F) và Up(S,F), P là tiế trình muốn truy xuất CR. Procedure Up(S,F); Begin S:=S+1; If S<=0 then Begin <Đưa P vào ReadyList> End; End; Procedure Down(P,S,F); Begin S:=S-1; If S<0 then Begin <Đưa P vào F> End; End; -Mô phỏng sử dụng Semaphore trong ti ến trình P: Down(P,S,F); Up(S,F); http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
6/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Câu 4: Bài tập =)) Bài 6: Quản lí bộ nhớ.
Câu 1: Địa chỉ vật lí và địa chỉ logic. - Địa chỉ vật lí là địa chỉ do thiết kế phần cứng tạo ra. - Địa chỉ logic (được ảo) là địa chỉ do CPU tạo ra khi khởi tạo và thực thi các tiến trình. - Việc chuyển đổi từ địa chỉ vật lí sang logic do thiết bị phần cứng là MMU (memory-management-unit) thực hiện.
Câu 2: Sự khác nhau của phương pháp cấp phát liên tục và không liên tục. Ưu và nhược điểm của cấp phát không liên tục so với cấp phát liên tục (bó chiếu).
Câu 3: Phương Pháp cấp phát theo kĩ thuật phân trang. Vẽ sơ đồ mô hình cơ chế chuyển đổi địa chỉ logic -> vật lí.
- Phân trang (Paging): + Chia bộ nhớ vật lí thành các khối có kích thước ngang nhau gọi là khun trang. + Chia bộ nhớ logic (của một tiến trình) thành các khối có cùng kích thướ c với khung trang, gọi là trang. + Khi nạp 1 tiến trình, các trang của tiến trình sẽ được nạp vào những khu - Sơtrang đồ: còn trống. Địa chỉ logic
CPU
d
Địa chỉ vật lí f
d
Bộ nhớ vật lí
p
Bảng trang
Câu 4: Trình bày mục đích ý tưởng và sơ đồ pp TLB. -Mô hình TLB (translation look-aside buffer): dùng trong b ộ nhớ cache chứa địa một số trang hay dùng. Tra cứu trong cache trước rồi mới đến bảng trang.
http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
7/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Địa chỉ
Địa chỉ vật lí
logic
CPU
d
f trang
Bộ nhớ vật lí
d
khung
TL3
p
Câu 5: Trình bày ý tưởng và sơ đồ bảng trang nghịch đảo(inverted page table). -Bảng trang nghịch đảo: chỉ có một bảng trang trong hệ thống, mỗi phần tử của bảng trang ứng với một khung trang của bộ nhớ vật lí. Mỗi địa chỉ ảo trong hệ thống chứa bộ ba: .
Logical address
CPU
pid
p
Physical d
i
d
Physical
i pid
http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
p
Page table
8/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
Câu 6: phương pháp cấp phát kết hợp kĩ thuật phân trang và phân đoạ n. - Không gian đị a chỉ gồm nhiều đoạn , mỗi đoạn được chia thành nhi ều trang . - Khi nạp tiến trình vào hệ thống, HĐH sẽ cấp phát các trang để đủ chứa các đo của tiến trình. Bài 7: Bộ nhớ ảo.
Câu 1: Khái niệm, ý tưởng và lợi ích của k ĩ thuật bộ nhớ ảo(virtual memory). - KN: là một kĩ thuật giúp giải quyết vấn đề thiếu bộ nhớ vật lí khi chạy đồng thờ nhiều tiến trình hoặc tiến trình có kích thước lớn hơn bộ nhớ vật lí. - Ý tưởng: khi thực hiện tiến trình, chỉ nạp 1 phần tiến trình vào bộ nhớ vật lí, ph còn lại khi nào cần thì nạp vào. - Lợi ích: + Viết và chạy các chương trình lớn, đơn giản hóa tác vụ lập trình. + Chạy đồng thời nhiều chương trình, tăng hiệu suất CPU và thông lượng
giảm thời gian đáp ứng. + Yêu cầu nạp, hoán vị chương trình ít hơn -> chương trình chạy nhanh h
Câu 2: Khái Niệm lỗi trang(page fault), các bước xử lí, vẽ sơ đồ xử lí. - KN: là việc truy xuất đến 1 trang đang ở bộ nhớ phụ (được đánh dấu invalid). C chế phần cứng sẽ phát sinh một ngắt để báo cho HĐH. - Các bước xử lí: + Kiểm tra tham chiếu xem việc truy cập bộ nhớ là hợp lệ hay không. + Nếu tham chiếu không hợp lệ thì kết thúc tiến trình. Nếu hợp lệ nhưng trang chưa nạp vào bộ nhớ thì chuyển bước tiếp theo. + Tim khung trống (từ danh sách khung trống). + Nếu có khung trống thì đọc trang vào khung trống. Không có khung tr ống thì thay thế trang. + Cập nhật bảng bên trong tiến trình và bảng trang để hiển thị trang bây g ở trong bộ nhớ. + Khởi động lại chỉ thị bị ngắt bởi lỗi trang. -Sơ đồ xử lí:
http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
9/10
5/17/2018
Đê ̀ c ương ôn tâ ̣p môn hê ̣ điê ̀u hà nh - slide pdf.c om
3
Page is on backing stone
Operation 2
System
trap
reference
Load M
i 6
Restart instruction
Free frame 5
4
Reset a e table
Bring in missing page Ph sical memor
Câu 3: Công thức tính thời gian trung bình truy xu ất cho 1 truy xu ất trang. Vì sao phải giảm thiểu xác suất xảy ra lỗi trang? Trong đó : p: xác suất lỗi trang. (1-p)*m + p*t m : thời gian truy xuất nếu không t : thời gian xử lí lỗi. - Lí do phải giảm p : m nhỏ hơn rất nhiều so với t. Câu 4 : trình bày giải thuật tối ưu cho việc thay thế trang. Vì sao giải thuật này không được áp dụng trong thực tế ? -Ý tưởng : Thay thế trang sẽ lâu được sử dụng nhất trong tương lai. -Nhận xét : +Là giải thuật có tỉ lệ lỗi trang thấp nhất. +Không thực tế, vì khó bi ết trang nào sẽ lâu sử dụng nhất. +Không gặp nghịch lí Belady.
Câu 5 :Giải thuật LRU cho việc thay thế trang. -Ý tưởng : thay thế trang đã không được sử dụng lâu nhất trong quá khứ. - Nhận xét : + Dùng quá khứ dự đoán tương lai : lâu được sử dụng nhất trong tương lai. + Không gặp nghịch lí Belady. - Cài đặt : sử dụng cơ chế bộ đếm hoặc cơ chế stack. Câu 6 : bí !!! http://slide pdf.c om/re a de r/full/de -c uong-on-ta p-mon-he -die u-ha nh
10/10