De cuong OS (Mai Hoai Nam)

Màu nền
Font chữ
Font size
Chiều cao dòng

1.Vì sao chỉ đến win ME mới có hệ điều hành đầu tiên tách rời MS_DOS?

Trả lời:

Những thế hệ hệ điều hành của MS trước win ME phần boot vào hệ điều hành đều do MS_DOS quản lí,còn sau win ME thì phần đó do win quản lí

2.Phát biểu về độ tin cậy cao của hđh.Giải thích vì sao hđh phải có độ tin cậy cao ; muốn đạt được phải làm thế nào?Ví dụ?

Tương tự với: tính an toàn,tính tổng quát theo thời gian,tính hiệu quả

Trả lời :

*Độ tin cậy cao : Mọi hoạt động , mọi thông báo của hđh phải chuẩn xác tuyệt đối.Chỉ khi nào chắc chắn đúng thì hđh mới cung cấp thông tin cho người sử dụng.

-Muốn đạt được độ tin cậy cao thì hđh phải cố gắng lặp lại các thao tác thực hiện nhiều lần.Nếu không được thì mới đưa ra các thông báo

-VD: khi truy nhập đĩa, nếu gặp lỗi truy nhập thì hđh phải cố gắng lặp lại thao tác nhiều lần.Nếu không được mới đưa ra các thông báo lỗi.

*Tính an toàn: hđh phải đảm bảo sao cho dữ liệu và các chương trình không bị thay đổi ngoài ý muốn trong mọi trường hợp và mọi chế độ hoạt động.

-Để đảm bảo yếu tố an toàn , các hệ điều hành cần cung cấp các cơ chế bảo vệ dữ liệu và bảo vệ các tài nguyên sử dụng chung, tránh được sự vi phạm do vô tình hoặc cố ý của người sử dụng và các chương trình

* Tính tổng quát theo thời gian : hđh phải kế thừa các ưu điểm, khắc phục các nhược điểm của phiên bản trước và khả năng thích nghi với những thay đổi trong tương lai.

- Để đạt được: Khi nâng cấp hệ điều hành thì các thao tác , thông báo không được thay đổi ; hoặc nếu có thay đổi thì cần hạn chế và phải được hướng dẫn cụ thể khi chuyển đổi từ phiên bản này sang phiên bản khác.

* Tính hiệu quả: Các tài nguyên của hệ thống phải được khai thác 1 cách triệt để sao cho ngay cả khi tài nguyên hạn chế vẫn có thể giải quyết được những yêu cầu phức tạp

- Để đạt được phải duy trì hoạt động đồng bộ hóa trong toàn hệ thống,không được để những thiệt bị chận trì hoãn hoạt động của hệ thống.

3.Vì sao hđh phải là hệ thống mở.Các nguyên lí nào trong xây dựng hđh đáp ứng được nhu cầu trên.

Trả lời :

HĐH phải có tính mở để có thể dễ dàng nâng cấp cải thiện hệ thống hay HĐH phải là hệ thống mở.

-Độ tin cậy cao,ổn định.(mọi thông báo của HĐH phải chính xác )

-Độ an toàn cao.(dữ liệu không bị xóa hoặc bị thay đổi ngoài ý muốn)

-Hiệu quả sử dụng cao (khai thác triệt để tiếm năng của máy tính).

-Tổng quát theo thời gian.(có tính thừa kế, có khả năng thích nghi với những thay đổi có thể xảy trong tương lai)

-Thuận tiện, dễ sử dụng.

*Nguyên lí xây dựng 1 hệ thống mở: dựa vào 2 nguyên tắc cơ bản:

-Nguyên tắc Môđun:

+ Hệ thống được xây dựng từ những môđun độc lập và tồn tại bộ quy tắc liên kết chúng thành hệ thống có tổ chức.

+Các môđun quan hệ với nhau thông qua các dữ liệu vào ra,các đối số.

+Quan hệ phân cấp của mô đun được xác lập khi chúng liên kết với nhau để giải quyết những vẫn đề phức tạp.

-Nguyên tắc sinh: Mô đun khởi sinh HĐH

4.Vì sao HĐH phải tích hợp nhiều hình thái giao tiếp. Trong WINDOWS, LUNUX, UNIX muốn có giao tiếp dòng lệnh phải thực hiện ntn?

Trả lời :

HĐH phải tích hợp nhiều hình thái giao tiếp vì :

+Do yêu cầu của người dùng cũng như trình độ của người dùng.(VD: end user: dùng ICON, người quản trị hệ thống: dùng command line, ...)

+Mỗi hình thái giao tiếp đều có ưu và nhược điểm riêng.

-Muốn có giao tiếp dòng lệnh

+ Trong WINDOWS : 98 + ME :Start -> run -> nhập command

2000+ XP : Start -> run -> nhập cmd

+Trong UNIX và LINUX chọn termial

5.Vì sao phải điều độ tiến trình,các yêu cầu cho điều độ? .Phân tích tính tự chủ của tiến trình qua các giải pháp điều độ

Trả lời :

Đầu tiên ta hiểu thế nào là đoạn găng:

- Một tài nguyên hữu hạn về khả năng phục vụ nhưng trong 1 khoảng thời gian nào đó được nhiều tiến trình yêu cầu đến thì trong khoảng thời gian này tài nguyên đó được gọi là tài nguyên găng.

-Một tiến trình không mất tổng quát có thể chia làm 2 đoạn: Đoạn găng và đoạn còn lại.

Đoạn găng là đoạn sử dụng tài nguyên găng.

Vậy phải điều độ tiến trình vì cần :

-Đảm bảo các tiến trình qua đoạn găng 1 cách hợp lí nhất.

-Không để xảy ra đụng độ.

-Đảm bảo thông lượng giao thông là lớn nhất.

Các yêu cầu cho đồng bộ:

-Tại 1 thời điểm không có quá 1 tiến trình ở trong đoạn găng.

-Không có tiến trình nào ở trong đoạn găng 1 khoảng thời gian lâu vô hạn

-Các kĩ thuật điều độ được chia làm 2 mức :

+Mức sơ cấp: Do người dùng điều độ(Người dùng viết ra )

+Mức cao cấp: Hệ thống tự động điều độ không cần người dùng quan tâm.

*Tính điều độ của tiến trình qua các giải pháp điều độ

-Kĩ thuật khóa trong ( Đèn hiệu)

+Kĩ thuật điều độ đơn giản nhưng độ phức tạp giải thuật sẽ tăng cao khi có nhiều tiến trình cùng vào đoạn găng.

+Dễ xảy ra xung đột.(Do sự đồng thời là không đồng bộ. Vd khi quan sát không thấy dấu hiệu vào đoạn găng của tiến trình khác, các tiến trình đồng thời bật dấu hiệu của mình lênxung đột)

Để khắc phục: Người ta đề nghị là tăng thời gian chờ đợi chủ động của cá tiến trình ở đầu đoạn găng.

+Trong trường hợp tiến trình quên "mở khóa" (quên xóa dấu hiệu của mình) thì tài nguyên găng sẽ bị khóa.

+Kĩ thuật này không phù hợp trong trường hợp các tiến trình có tốc độ thực hiện chênh lệch nhau quá lớn.

-Kĩ thuật "Test and Set" (TS)

+Độ phức tạp không tăng nhiều trong trường hợp có nhiều tiến trình cùng tham gia vào đoạn "găng".

+Hiệu quả của điều độ chỉ phụ thuộc vào thủ tục TS.

+Không phù hợp đối với các tiến trình có thời gian thực hiện ngắn.

-Kĩ thuật "Semaphore"

+Độ phức tạp giải thuật không tăng đáng kể cả trong trường hợp có nhiều tiến trình tham gia vào đoạn "găng".

+Hiệu quả điều độ phụ thuộc 2 thủ tục P,V

+Các lệnh do người lập trình viết trong chương trình. Do đó,nếu sai thứ tự thì hệ thống có thể rơi vào bế tắc.(thiết lập sai : V trước P sau, toàn V)

-Kĩ thuật điều độ cao cấp

+Trong thành phần của monitor(điều phối chính) hệ thống có các môđun điều độ.

+Sử dụng 2 thủ tục P,V: với khối điều khiển thiết bị UCB(Unit control block) được xem là thông tin đầu vào của môđun này.

+Bên cạnh đó nó còn có cơ chế tương tác với người điều hành trong quá trình điều phối.

6.Khi khả năng bế tắc nhỏ nhưng thiệt hại lớn dùng loại nào khi kn bế tắc lớn thiệt hại đáng kể dùng loại nào ?

Trả lời :

* Khi khả năng bế tắc nhỏ nhưng thiệt hại lớn dùng kĩ thuật dự báo phòng tránh

a.Nguyên tắc: Khi có 1 tiến trình xin tài nguyên găng thì HĐH phải xem xét n thời điểm ở phía trước (của tài nguyên găng). Nếu suốt n thời điểm này bế tắc không có khả năng xảy ra thì HĐH mới cấp phát tài nguyên găng đó cho tiến trình. Nếu đến 1 thời điểm nào đó khả năng bế tắc xuất hiệnthì HĐH phải đưa ra giảp pháp hợp lí.

b.Biện pháp: Áp dụng giải thuật có tên: "Người quản đốc ngân hàng Tây"

Bước1: Thu thập thông tin về tài nguyên găng ở thời điểm này

+Tổng số khả năng phục vụ đang có

+Tổng số khả năng phục vụ tiến trình yêu cầu

+ Tổng số khả năng phục vụ đã đáp ứng

+Tổng số khả năng phục vụ còn lại để đáp ứng tiếp

Bước2 : Lặp lại bước này khi i=1 cho đến n

- Xem xét khả năng kết thúc của tiến trình.

- Xét khả năng thu hồi, cân đối với mức cung cầu tài nguyên "găng". Nếu không bị vi phạm thì chuyển sang thời điểm kế tiếp. Ngược lại xảy ra mất cân bằng thì phải đưa ra giải pháp an toàn cho hệ thống.

*Khả năng bế tắc lớn thiệt hại không đáng kể dùng kĩ thuật phòng ngừa

a.Nguyên tắc:

Tìm nguyên nhân phát sinh bế tắc và tác động đến nguyên nhân đó.

b.Biện pháp cụ thể:

-Làm giảm mức găng của tài nguyên găng:

Có 2 cách:

+Bổ xung thiết bị vào trong hệ thống: tốn kém về kinh tế.

+Phân luồng: Sử dụng kĩ thuật SPOOLIN : Mô phỏng các chế độ vào ra ảo trực tuyến.(Simulate Prepheral Out/Input Online)

-Tổ chức dòng xếp hàng cho các tiến trình đồng thời phải có môđun quản lí dòng xếp hàng đó.

-Trong hệ thống phải có thành phần làm nhiệm vụ thu hồi cấp phát lại tài nguyên găng.

-Nguyên nhân chờ đợi vòng tròn là do sự phân phối bình quân về tài nguyên.

+Cách1(Cực đoan) Chỉ cấp tài nguyên găng cho 1 tiến trình duy nhất khi đã có đủ nguồn tài nguyên yêu cầu của nó.

Làm giảm hệ số song song của toàn hệ thống

+Cách 2: Phân mức tài nguyên găng.Tiến trình muốn xin tài nguyên mức cao thì phải trả lại tài nguyên mức thấp.

7.Trình bày chiến lược kết hợp quản lí bộ nhớ lược đồ khảo sát bộ nhớ trong PC

Trả lời :

1.1 trang hay đơn vị cấp phát bộ nhớ(paragraph(16bytes)).

2.Ở 1 thời điểm xác định thì ô nhớ 413(0,413)lưu số lượng bộ nhớ chưa sử dụng.

3.Để quản lí các đoạn bộ nhớ người ta sử dụng thành phần có tên là MMU(Memory manager Unit). Thành phần này quản lí bộ nhớ dựa trêncơ sở sử dụng các khối MCB(Memory Control Block). Mỗi khối có kích thước bằng 1 phân đoạn được sử dụng để quản lí 1 đoạn bộ nhớ.

4.Byte đầu tiên nhận biết đoạn bộ nhớ cuối cùng được sử dụng.

+ Nếu là cuối cùng chứa kí tự Z.

+ Nếu không phải chứ kí tự nhớ M.

5.2 bytes kế tiếp trỏ đến địa chỉ vùng bộ nhớ đoạn mã

6.2 bytes xác định kích thước đoạn mã.

7.Như vậy nếu biết MCB1 thì có thể khảo sát toàn bộ bộ nhớ.

-Khi nạp 1 chương trình vào bộ nhớ HDDH luôn tạo 1 khối tiền tố PSP ( Program Status Prefix) gồm 266 bytes xác định các thông tin về môi trường cho đoạn mã. Trong byte 2C và 2D của khối này sẽ trỏ đến 1 vùng nhớ vùng nhớ này chứa xâu kí tự kết thức là kí tự '\0' . Xâu này là tên chương trình nạp vào đoạn bộ nhớ trên.

8.Yêu cầu với bài toán lập lịch các kĩ thuật giải quyết

Trả lời :

-Nguyên tắc chung của việc lập lịch: Tổ chức dòng xếp hàng cho các tiến trình , sau đó xác lập 1 chính sách phục vụ cho dòng xếp hàng đó.

a.Chiến lược đến trước phục vụ trước(First Come,First Service)

-Ưu tiên ngoài: Mỗi tiến trình trong hệ thống được gắn một mức độ ưu tiên ngoài bởi người quản trị hệ thống.

-Khi đến xếp hàng :

+Cùng ưu tiên ngoài đến trước thì xếp trước.

+Khác ưu tiên ngoài thì ưu tiên ngoài cao hơn xếp trước.

-Phục vụ theo thự tự xếp hàng.

-Ưu điểm:

+Đơn giản,dễ viết chương trình quản lí.

+Có chú ý đến thứ tự ưu tiên phục vụ tiến trình.

-Nhược điểm:

+Trọng tải hệ thống phân bố không đều  suy giảm hệ số song song của hệ thống.

b.SJN/SJF(Shortest Job Next/ Shortest Job First)

-Ưư tiên các tiến trình có thời gian phục vụ ngắn hơn.

-Mục đích :Sớm giải tỏa dòng xếp hàng.

-Nhược điểm: Người lập trình phải khai báo thời gian dự kiến của chương trình mình thực hiệnđiều này khó với chương trình chạy lần đầu.

c.SRT(Shortest Remain Time)

-Ưu tiên các tiến trình sắp kết thúc.

-Mục đích: Sớm thu hồi lại tài nguyên.

d.Round Robin(RR)

-Phục vụ vòng tròn.

-CPU luân phiên phục vụ các tiến trình trong 1 khoảng thời gian như nhau và khá nhỏ(10 đến 100 micro giây)

9.Trình bày cơ chế quản lí dịch vụ trong HDH(ngắt)

-Công cụ để quản lí tiến trình là Ngắt(Interrupt).

-Quản lí ngắt:

Dựa vào các dấu hiệu ngắt ,số hiệu ngắt và bảng ngắt.

Khi có dấu hiệu ngắt phát sinh:Hệ điều hành phát hiện đặc trưng của dấu hiệu đó, tìm ra số hiệu ngắttra bảng tìm ra địa chỉ của chương trình con ngắt.->Chuyển điều khiển đến chương trình con ngắt.

Ta có quy trình 5 bước:

B1 :Lưu đặc trưng của ngắt(Xác định chương trình con ngắt)

B2 :Lưu trạng thái của tiến trình bị ngắt.

B3 :Gọi CTC ngắt

B4 :Thực hiện CTC ngắt này.

B5 : Phục hồi lại tiến trình bị ngắt và thực hiện tiếp.

HĐH ko trực tiếp xử lí ngắt mà thông qua CTC ngắt

10.Nguyên lí cơ bản trong quản lí vào ra của HDH .CƠ chế tổ chức thực hiện

-Phân cấp quản lí giữa CPU và ngoại vi (trung ương với địa phương)

+CPU chỉ thực hiện vào ra ở mức logic

+Ngoại vi thực hiện vào ra ở mức vật lí

+Khi cần thực hiện vào ra CPU tạo ra ngắt yêu cầu bằng cách đưa ra lời gọi ngắt (ngắt mềm)

+Thực hiện vào ra xong ngoại vi phát sinh ngắt báo cáo(ngắt cứng)

-Để thực hiện vào ra , HĐH xây dựng 2 hệ thống con:

+Hệ thống quản lí tệp

+Hệ thống quản lí thiết bị.

11.Các giải pháp tối ưu trong vào ra

a.Mục tiêu: Giảm thời gian trao đổi giữa thiết bị ngoại vi với hệ thống.

b.Biện pháp:

*Kết khối dữ liệu:

-Gom kết nhiều bản ghi logic thành 1 bản ghi vật lí sao cho phù hợp với kiến trúc vật lí của thiết bị.

-Phương thức chung: việc kết khối có thể tiến hành ở mức người dùng hoặc HĐH, ai kết khối thì người đó phải phân rã khối.

-Có 5 phương pháp kết khối:

(1)Dạng F(Fixed): mỗi bản ghi vật lí có 1 bản ghi logic,độ dài bản ghi ko thay đổi.

(2)Dạng FB(Fixed Block) một khối nhiều bản ghi độ dài giống nhau.

(3)Dạng V(Variant) bản ghi có độ dài thay đổi đầu vào mỗi bản ghi có 1 trường ghi lại độ dài.

(4)Dạng VB(Variant Block) ở đầu mỗi khối có 1 trường ghi độ dài khối.

(5)Dạng U(Undefined) Bản ghi có độ dài không xác định->cuối bản ghi luôn có kí hiệu kết thúc.

*Kĩ thuật vùng đệm: (Buffer)

-Khái niệm:Vùng đệm là vùng bộ nhớ liên tục ở bộ nhớ trong hoặc trên đĩa từ, được dùng làm nơi trung chuyển thông tin giữa CPU với ngoại vi.

Sơ đồ

-Vai trò của vùng đệm:

+Hỗ trợ phân cấp quản lý giữa CPU với ngoại vi

+Tăng hệ số hoạt động song song của các thiết bị

+Đồng bộ hóa giữa truyền và xử lý thông tin: có 2 tình huống cần đồng bộ hóa có thể xảy ra:

Tốc độ truyền tin chậm,CPU phải đợi chờcần buffer

Tốc độ truyền tin nhanh,phức tạp,CPU ko đáp ứng kịpcần buffer

+Trong vùng đệm có các loại phòng đệm: Vào ,Ra, Xử lý. Ngoài ra còn có Spool(1 loại phòng đệm đặc biệt)

Chi tiết:

-Quản lý vòng đệm vào:

Nguyên tắc: Khi gặp lệnh nhập tin,HĐH quan sát bộ đệm, nếu còn thông tin thì đưa vào xử lý ngay(thiết bị ko phải làm việc), ngược lại phát sinh ngắt yêu cầu(ngắt mềm),thiết bị thực hiện vào ra xong -> phát sinh ngắt báo cáo(ngắt cứng)

-Quản lý vòng đệm ra:

Nguyên tắc: khi đưa thông tin ra ngoài, HĐH quan sát bộ đệm, nếu còn chỗ, đặt tiếp thông tin vào bộ đệm, nếu hết chỗ thì phát sinh ngắt yêu cầu để thiết bị giải phóng bộ đệm, sau đó mới đặt tiếp thông tin vào bộ đệm

-Spool:

Có 3 dòng xếp hàng:

+Dòng xếp hàng vào.

+Dòng xếp hàng chờ

+Dòng xếp hàng ra.

Mỗi dòng xếp hàng có 2 thành phần:

+Dòng xếp hàng các khối điều khiển

+Dòng xếp hàng nơi lưu trữ dữ liệu

+Spool cũng là một loại vòng đệm đặc biệt để dùng tổ chức các dòng xếp hàng trong hệ thống.Về bản chất thì nó là những vùng bộ nhớ liên tục, thường ở trên đĩa từ. Nó được phục vụ bởi chương trình điều phối công việc và theo nguyên tắc lập lịch.

*Các phương pháp truy nhập:

-Tùy thuộc vào đặc trưng vật lí của thiết bị,HĐH lưạ chọn phương pháp điều khiển truy nhạp thích hợp nhằm tối ưu hóa thời gian vào ra.

-Từ mục đích đó ta có 5 phương pháp:

+QSAM(Queue Sequential Access Method) :Áp dụng cho mọi thiết bị

Ghi tuần tự,đọc tuần tự

Bổ xung vào cuối tệp(phải chép sang tệp mới và bổ sung ở tệp mới)

Sửa 1 phần tử (phải chép sang tệp mới và sửa ở tệp mới)

+QISAM(Queue Index Sequential Access Method) : Dùng cho thiết bị từ tính như băng từ đĩa từ....

Nguyên tắc truy nhập: Mọi phân tử của 1 bộ dữ liệu có nhiều thuộc tính. Khi truy nhập sẽ theo 1 khóa nào đó(khóa có thể là 1 hay nhiều thuộc tính). Để truy cập nhanh với 1 khóa người ta thường xây dựng 1 tệp(tệp Index hay tệp chỉ dẫn) gồm 2 trường (khóa,vị trí lưu trữ). Tìm kiếm trên khóa theo phương pháp nhị phânbiết vị trí lưu trữ. Truy nhập đến vị trí lưu trữ đó.

+BSAM(Basic Sequential Access Method) :Áp dụng cho thiết bị từ tính có sử dụng phòng đệm khi truy nhập

Đối với các tệp mở ra để đọc. Ngay từ khi gặp lệnh mở tệp thì dữ liệu trên tệp đã được làm đầy ở cùng đệm.

+BDAM(Basic Direct Access Method) :Chỉ áp dụng cho đĩa từ và trống từ

Ghi ngẫu nhiên

Đọc ngẫu nhiên

Không phải sai chép sang tệp thứ 2.Tất cả các phép toán chỉ thực hiện trên 1 tệp

+BPAM(Basic Partition Access Method) : Truy nhập song song, chỉ áp dụng cho đĩa từ và trống từ.

Ứng dụng :cơ chế RAID: tác dụng sao lưu nhanh, phục hồi thông tin an toàn.

Chia dữ liệu phân hoạch

Tiến hành truy nhập song song

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

#tuan