Hướng dẫn làm đề thi học kì hệ điều hành


Bài viết này, Blog Thao Phạm gửi đến bạn đọc dạng đề thi kết thúc môn hệ điều hành. Dưới đây là đề số 03. Chúc các bạn có một kì thi đạt được kết quả cao.
Đề 03: hệ điều hành


Giải đề thi học kì hệ điều hành

Câu 1: hệ điều hành chia sẻ thời gian:

· Chia sẻ thời gian có thể coi như đa chương trình cải tiến

· Máy tính thế hệ 4 là các PC cho phép tương tác trực tiếp và đòi hỏi đáp ứng nó cực nhỏ

· Để đáp ứng nhu cầu này, người ta sẻ kỹ thuật chia sẻ thời gian 

· CPU thực hiện các chương trình khác nhau trong những khoảng thời gian ngắn. Do tốc độ chuyển đổi giữa các công việc diễn ra với tần số cao và tốc độ CPU lớn nên thời gian đáp ứng nhỏ và người dùng có cảm giác máy tính chỉ thực hiện chương trình của mình.

Câu 2: Trình bày thao tác cơ bản với file, phân tích rõ một hệ thống file có nhất thiết phải có thao tác mở file hay không


  • Thao tác cơ bản với file

· Tạo file: Tạo file trống chưa có data, được dành 1 chỗ trong thư mục

· Xóa file: giải phóng không gian mà dữ liệu của file chiếm; giải phóng chỗ của file trong thư mục.

· Mở file: Thực hiện trước khi ghi và đọc file; đọc các thuộc tính của file vào MEM để tăng tốc độ

· Đóng file: xóa các thông tin về file ra khỏi bảng trong MEM

· Ghi vào file

· Đọc file
  • Một hệ thống file thì thao tác mở file là một thao tác quan trọng vì công việc này giúp cho hệ điều hành lấy được thông tin file và vị trí file trên đĩa để đọc vào bộ nhớ nhằm tăng tốc độ cho các thao tác đọc ghi tiếp theo. Lệnh mở file thường trả về con trỏ tới mục chứa thông tin vè file trong bảng các file đang mở, con trỏ này sẽ được sử dụng làm thông số cho các thao tác tiếp theo với file.
Câu 3: 
  • Khái niệm dòng: Mỗi đơn vị thực hiện lệnh của tiến trình, tức là 1 chuỗi lệnh được cấp phát CPU để thực hiện độc lập được gọi là một luồng thực hiện.
  • Mô hình đa dòng: Mỗi luồng cần có khả năng quản lý con trỏ lệnh, nội dung thanh ghi. Cho phép nhiều chuỗi lệnh được thực hiện cùng lúc trong phạm vi một tiến trình.
  • Ưu điểm của mô hình đa dòng
· Tăng hiệu năng và tiết kiệm thời gian: khi tạo hay xóa một tiến trình nó đòi hỏi cấp phát bộ nhớ và tài nguyên của tiến trình -> tốn thời gian. Tuy nhiên sử dụng luồng dùng chung tài nguyên với tiến trình nên tạo và xóa luồng không đòi hỏi những công đoạn này, nhờ đó tốn ít thời gian hơn. Ngoài ra việc chuyển đổi luồng cũng nhanh hơn chuyển đổi tiến trình, do ngữ cảnh luồn ít thông tin hơn, việc tạo mới luồng nhanh hơn vài chục lần với việc tạo mới tiến trình.

· Dễ dàng chia sẻ tài nguyên và thông tin: tài nguyên dùng chung cho phép luồng dễ dàng liên lạc với nhau

· Tăng tính đáp ứng: Nhờ mô hình đa luồng, tiến trình có thể sửu dụng một luồn để thực hiện những tao thác đòi hỏi nhiều thời gian như đọc file dài, sẻ dụng một luồn khác để tiếp nhận và xử lý yêu cầu của người dùng

· Tận dụng được kiến trúc xử lý với nhiều CPU: trong máy tính nhiều CPU, các luồng có thể chạy song song với nhau trên những CPU khác nhau

· Thuận lợi cho việc tổ chức chương trình: một chương trình có thể tổ chức dễ dàng dưới dạnh nhiều luồng thực hiện đồng thời. Điển hình là những chương trình bao gồm nhiều thao tác thực hiện đồng thời, hay chương trình đòi hỏi nhiều thao tác cần từ nhiều nguồn và đích khác nhau.

Câu 4:
  • Phân trang bộ nhớ
· Bộ nhớ vật lý được chia thành các khối nhỏ, kích thước cố định và bằng nhau được gọi là khung trang

· Không gian địa chỉ logic của tiến trình được chia thành những khối gọi là trang, có kích thước bằng khung

· Tiến trình được cấp các khung để chứa các trang của mình

· Các trang có thể chứa trong các khung nằm rải rác trong bộ nhớ

· Hđh cấp quản lý cấp phát khung cho mỗi tiến tình bằng bảng trang (bảng phân trang) mỗi ô tương ứng với 1 trang và chứa số khung cung cấp cho trang đó. Mỗi tiến trình có một bảng trang riêng, duy trì danh sách các khung trống trong mem
  • Ánh xạ địa chỉ khi phân trang bộ nhớ
· Kích thước khung được chọn là lũy thừa của 2. Địa chỉ logic gồm 2 phần: STT trang (p), độ dịch (địa chỉ lệch) cả địa chỉ so với đầu trang (o). nếu kích thước trang là 2n, biểu diễn địa chỉ có độ dài (m+n) bit trong đó STT trang (độ dài m bit), độ dịch trang (dài n bit)

· Quá trình chuyển địa chỉ logic sang đc logic: lấy m bit cao của địa chỉ => được STT trang. Dựa vào bảng trang, tìm được số thứ tự khung vật lý (k). Địa chỉ vật lý bắt đầu của khung là k*2n. Địa chỉ vật lý của byte được tham chiếu là địa chỉ bắt đầu của khung cộng với địa chỉ lệch (độ dịch).

· Quá trình biến đổi từ địa chỉ logic sang địa chỉ vật lý được thực hiện bằng phần cứng. Việc tách phần p và o trong địa chỉ logic được thực hiện dễ dàng bằng phép dịch bit.

· Phân mảnh trong khi phân trang có giá trị trung bình bằng nửa trang. Kích thước trang nhỏ => số lượng trang tăng => bảng trang to, khó quản lý. Không tiện cho việc trao đổi với đĩa.

· Cơ chế ánh xạ giữa 2 loại địa chỉ hoàn toàn trong suốt đối với chương trình.

  • Bài tập
Kích thước trang ktt = 2048 = 211 => độ dịch o là 11 bit, bộ nhớ gồm 32 ( = 25) khung
+ Không gian nhớ logic = 4 x 2048 = 22 x 211 = 213 -> cần 13 bit để biểu diễn địa chỉ vật lý

a) Địa chỉ logic 1000
p = 1000/2048 = 0 => số thứ tự trang là 0 => số thứ tự khung là sttk= 3
o = 1000 mod 2048 = 1000

Khi đó địa chỉ vật lý = sttk*ktt + o = 3x2048 +1000 = 7144
b) Địa chỉ logic 2500

p = 2500/2048 = 1 => số thứ tự trang là 1 => sttk = 0
o = 2500 mod 2048 = 452

khi đó địa chỉ vật lý = sttk*ktt + o = 0x2048 + 452 = 452

c) Địa chỉ logic 5000

p = 5000/2048 = 2 => stt trang là 2 => không có số thứ tự khung
không tìm được địa chỉ vật lý

Link file bài giải chi tiết: https://1drv.ms/b/s!AuylDw0l1eP2hncuonytW5yOsRrp

 Hãy ghé thăm Blog Thao Phạm để cùng nhau trao đổi kiến thức.  Mọi ý kiến đóng góp xin comment ở dưới. Thân chào!

Post a Comment

0 Comments