Bộ 3 - Trắc nghiệm Nguyên lý hệ điều hành có đáp án
Thời gian còn lại: --:--
Kết quả của bạn:
Bạn đã đúng:
Bạn đã sai:
Tổng số câu:
Câu 1:Trong các trạng thái của tiến trình, trạng thái nào mô tả tiến trình đang đợi một sự kiện xảy ra (như kết thúc thao tác vào/ra)?
💡 Lời giải chi tiết:
Theo mô hình trạng thái tiến trình phổ biến, trạng thái Waiting hoặc Blocked là nơi tiến trình tạm dừng thực thi để đợi một sự kiện bên ngoài hoặc tài nguyên I/O hoàn tất. Kết luận Lý giải Waiting/Blocked (Chờ đợi/Bị chặn).
Câu 2:Thuật toán lập lịch CPU nào có thể gây ra hiện tượng 'đói dữ liệu' (starvation) đối với các tiến trình có thời gian thực thi dài?
💡 Lời giải chi tiết:
Thuật toán SRTF ưu tiên các tiến trình có thời gian còn lại ngắn nhất, dẫn đến các tiến trình dài có thể bị hoãn vô thời hạn nếu liên tục có tiến trình ngắn mới đến. Kết luận Lý giải Shortest Remaining Time First (SRTF).
Câu 3:Điều kiện nào sau đây KHÔNG phải là một trong bốn điều kiện cần để xảy ra tắc nghẽn (Deadlock) theo lý thuyết của Coffman?
💡 Lời giải chi tiết:
Bốn điều kiện Coffman bao gồm loại trừ tương hỗ, giữ và đợi, không có quyền trưng dụng (No Preemption) và chờ đợi vòng lặp. Kết luận Lý giải Có quyền trưng dụng (Preemption).
Câu 4:Kỹ thuật nào cho phép thực thi một tiến trình có kích thước lớn hơn bộ nhớ vật lý hiện có của hệ thống?
💡 Lời giải chi tiết:
Bộ nhớ ảo sử dụng không gian đĩa cứng để mô phỏng bộ nhớ RAM bổ sung, cho phép chạy các chương trình lớn vượt quá dung lượng vật lý thực tế. Kết luận Lý giải Bộ nhớ ảo (Virtual Memory).
Câu 5:Trong hệ thống quản lý bộ nhớ phân trang, lỗi trang (Page Fault) xảy ra khi nào?
💡 Lời giải chi tiết:
Lỗi trang là một ngắt do phần cứng quản lý bộ nhớ tạo ra khi chương trình truy cập vào một trang được ánh xạ trong không gian địa chỉ ảo nhưng chưa được nạp vào RAM. Kết luận Lý giải Khi tiến trình truy cập vào một trang không có trong RAM.
Câu 6:Thuật toán thay thế trang nào gặp phải hiện tượng nghịch lý Belady (Belady's Anomaly)?
💡 Lời giải chi tiết:
Nghịch lý Belady là hiện tượng số lỗi trang tăng lên khi số khung trang được cấp phát tăng lên, và nó đặc biệt xảy ra với thuật toán FIFO. Kết luận Lý giải FIFO (First-In, First-Out).
Câu 7:Mục đích chính của việc sử dụng 'Dirty bit' (biến đổi) trong quản lý bộ nhớ phân trang là gì?
💡 Lời giải chi tiết:
Dirty bit giúp hệ điều hành biết trang nào đã bị sửa đổi trong RAM để chỉ ghi lại những trang đó ra đĩa khi cần thay thế, giúp tối ưu hiệu suất I/O. Kết luận Lý giải Để giảm số lần ghi lại trang ra đĩa khi thay thế trang.
Câu 8:Thuật toán điều phối đĩa nào phục vụ các yêu cầu theo thứ tự vị trí của chúng trên bề mặt đĩa, di chuyển từ đầu này sang đầu kia của đĩa?
💡 Lời giải chi tiết:
Thuật toán SCAN di chuyển đầu đọc từ một phía của đĩa sang phía kia, phục vụ các yêu cầu trên đường đi giống như cơ chế hoạt động của thang máy. Kết luận Lý giải SCAN (Thuật toán thang máy).
Câu 9:Hệ điều hành sử dụng cấu trúc dữ liệu nào để quản lý thông tin về một tiến trình cụ thể?
💡 Lời giải chi tiết:
PCB chứa tất cả các thông tin cần thiết về trạng thái, bộ đếm chương trình, thanh ghi và tài nguyên của một tiến trình để hệ điều hành quản lý. Kết luận Lý giải Process Control Block (PCB).
Câu 10:Trong cơ chế Semaphore, thao tác 'P' (hay wait) thực hiện chức năng gì?
💡 Lời giải chi tiết:
Thao tác P (proberen) kiểm tra giá trị semaphore: nếu lớn hơn 0 thì giảm đi 1, nếu bằng 0 thì tiến trình thực hiện phải đợi cho đến khi tài nguyên sẵn sàng. Kết luận Lý giải Kiểm tra và giảm giá trị semaphore, có thể gây chặn tiến trình.
Câu 11:Hiện tượng 'Trì trệ hệ thống' (Thrashing) xảy ra khi nào?
💡 Lời giải chi tiết:
Thrashing xảy ra khi một tiến trình không có đủ khung trang cần thiết, dẫn đến việc liên tục xảy ra lỗi trang và tráo đổi giữa RAM và đĩa, làm hiệu suất CPU giảm mạnh. Kết luận Lý giải Khi hệ thống dành nhiều thời gian cho việc tráo đổi trang hơn là thực thi lệnh.
Câu 12:Thành phần nào của hệ điều hành chịu trách nhiệm chọn tiến trình từ hàng đợi sẵn sàng để cấp phát CPU?
💡 Lời giải chi tiết:
Short-term scheduler hay bộ lập lịch ngắn hạn có nhiệm vụ chọn tiến trình tiếp theo trong bộ nhớ (hàng đợi Ready) để thực thi trên CPU. Kết luận Lý giải Short-term scheduler (Dispatcher).
Câu 13:Trong hệ thống Unix/Linux, lời gọi hệ thống (system call) nào được dùng để tạo ra một tiến trình con mới?
💡 Lời giải chi tiết:
Lời gọi fork() tạo ra một bản sao của tiến trình hiện tại, hình thành mối quan hệ cha-con giữa hai tiến trình. Kết luận Lý giải fork().
Câu 14:Cấu trúc thư mục nào cho phép một tệp tin hoặc thư mục có thể có nhiều tên đường dẫn khác nhau (aliasing)?
💡 Lời giải chi tiết:
Cấu trúc đồ thị không chu trình cho phép các thư mục dùng chung tệp tin hoặc thư mục con thông qua các liên kết (links), tạo ra nhiều đường dẫn truy cập. Kết luận Lý giải Acyclic-Graph directory.
Câu 15:Đâu là ưu điểm chính của phương pháp cấp phát tệp tin theo kiểu chỉ mục (Indexed Allocation)?
💡 Lời giải chi tiết:
Cấp phát chỉ mục sử dụng một khối chỉ mục để chứa các con trỏ đến các khối dữ liệu, cho phép truy cập ngẫu nhiên nhanh chóng mà không cần các khối phải nằm liên tục. Kết luận Lý giải Hỗ trợ truy cập trực tiếp (random access) hiệu quả mà không bị phân mảnh.
Câu 16:Trong mô hình Client-Server, kỹ thuật 'RPC' là viết tắt của cụm từ nào?
💡 Lời giải chi tiết:
Remote Procedure Call là một giao thức cho phép một chương trình máy tính gọi một thủ tục ở một không gian địa chỉ khác (thường là máy tính khác) mà không cần lập trình chi tiết cho tương tác mạng. Kết luận Lý giải Remote Procedure Call.
Câu 17:Mục tiêu quan trọng nhất của thuật toán lập lịch trong hệ thống thời gian thực (Real-time system) là gì?
💡 Lời giải chi tiết:
Hệ thống thời gian thực yêu cầu các tác vụ phải được hoàn thành trong một khoảng thời gian xác định, do đó việc tuân thủ deadline là ưu tiên hàng đầu. Kết luận Lý giải Đảm bảo đáp ứng các ràng buộc về thời hạn (deadlines).
Câu 18:Nguyên lý 'Locality of Reference' (Tính cục bộ của tham chiếu) là cơ sở cho hoạt động hiệu quả của thành phần nào?
💡 Lời giải chi tiết:
Tính cục bộ chỉ ra rằng các tiến trình có xu hướng truy cập vào các địa chỉ bộ nhớ gần nhau trong một khoảng thời gian ngắn, giúp Cache và bộ nhớ ảo hoạt động tối ưu. Kết luận Lý giải Cơ chế quản lý bộ nhớ đệm (Cache) và bộ nhớ ảo.
Câu 19:Trong quản lý bộ nhớ, 'Phân mảnh ngoại vi' (External Fragmentation) xảy ra khi nào?
💡 Lời giải chi tiết:
Phân mảnh ngoại vi là tình trạng các vùng nhớ trống nhỏ nằm rải rác trong hệ thống khiến hệ điều hành không thể cấp phát cho một tiến trình mới dù tổng dung lượng trống vẫn đủ. Kết luận Lý giải Khi tổng bộ nhớ trống đủ cho một yêu cầu nhưng không nằm liên tục.
Câu 20:Giải pháp nào sau đây được dùng để giải quyết bài toán 'Miền giáp giới' (Critical Section) mà không cần sự hỗ trợ của phần cứng?
💡 Lời giải chi tiết:
Thuật toán Peterson là một giải pháp phần mềm cổ điển dựa trên hai biến dùng chung để đảm bảo loại trừ tương hỗ cho hai tiến trình mà không cần lệnh phần cứng đặc biệt. Kết luận Lý giải Thuật toán Peterson.
Câu 21:Trong RAID, kỹ thuật 'Mirroring' (soi gương) tương ứng với cấp độ nào?
💡 Lời giải chi tiết:
RAID 1 hoạt động bằng cách sao chép dữ liệu giống hệt nhau lên hai hoặc nhiều đĩa để đảm bảo an toàn dữ liệu khi một đĩa bị hỏng. Kết luận Lý giải RAID 1.
Câu 22:Thuật toán Banker được sử dụng trong hệ điều hành nhằm mục đích gì?
💡 Lời giải chi tiết:
Thuật toán Banker kiểm tra xem việc cấp phát tài nguyên có đưa hệ thống vào trạng thái không an toàn hay không để quyết định cấp phát, nhằm tránh xảy ra tắc nghẽn. Kết luận Lý giải Tránh tắc nghẽn (Deadlock Avoidance).
Câu 23:Một địa chỉ logic trong hệ thống phân trang được chia thành hai phần chính là gì?
💡 Lời giải chi tiết:
Địa chỉ logic gồm số trang (p) để tra cứu trong bảng trang và độ lệch trang (d) để xác định vị trí chính xác trong trang đó. Kết luận Lý giải Page number và Page offset.
Câu 24:Kỹ thuật 'Spooling' (Simultaneous Peripheral Operations On-Line) thường được ứng dụng rõ nhất trong thiết bị nào?
💡 Lời giải chi tiết:
Spooling giúp lưu trữ tạm thời các lệnh in vào bộ đệm (thường trên đĩa) để máy in có thể xử lý dần dần, cho phép CPU thực hiện các việc khác. Kết luận Lý giải Máy in.
Câu 25:Lợi ích lớn nhất của việc sử dụng 'Luồng' (Thread) so với 'Tiến trình' (Process) là gì?
💡 Lời giải chi tiết:
Các luồng trong cùng một tiến trình chia sẻ chung không gian địa chỉ, dẫn đến chi phí tạo mới và chuyển đổi ngữ cảnh thấp hơn nhiều so với tiến trình. Kết luận Lý giải Chuyển đổi ngữ cảnh nhanh hơn và dùng chung tài nguyên dễ dàng hơn.