Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Nguyên Lý Hệ Điều Hành - Đề 09 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Trong kiến trúc hệ điều hành phân lớp (layered architecture), mỗi lớp chỉ có thể trực tiếp sử dụng dịch vụ của lớp nào?
- A. Bất kỳ lớp nào khác trong hệ thống.
- B. Lớp nằm ngay dưới nó.
- C. Lớp hạt nhân (kernel) trực tiếp.
- D. Lớp ứng dụng người dùng.
Câu 2: Điều gì KHÔNG phải là mục tiêu chính của hệ điều hành?
- A. Điều khiển và quản lý tài nguyên phần cứng.
- B. Cung cấp môi trường để người dùng thực thi chương trình.
- C. Đảm bảo hệ thống hoạt động hiệu quả và ổn định.
- D. Tối đa hóa lợi nhuận cho nhà sản xuất phần cứng.
Câu 3: Xét một hệ thống đa chương trình (multiprogramming) với mức độ đa chương trình là 4. CPU utilization đo được là 80%. Nếu mức độ đa chương trình tăng lên 8, CPU utilization có xu hướng như thế nào (giả sử các yếu tố khác không đổi)?
- A. Tăng lên, nhưng có thể không gấp đôi.
- B. Giảm xuống do cạnh tranh tài nguyên tăng.
- C. Không thay đổi, vì CPU utilization đã đạt mức cao.
- D. Dao động ngẫu nhiên, không dự đoán được.
Câu 4: Cơ chế nào sau đây được hệ điều hành sử dụng để bảo vệ bộ nhớ của tiến trình này khỏi bị tiến trình khác truy cập trái phép?
- A. Cơ chế semaphore.
- B. Cơ chế ngắt phần cứng.
- C. Cơ chế phân trang và phân đoạn bộ nhớ.
- D. Cơ chế hàng đợi Ready.
Câu 5: Trong ngữ cảnh quản lý tiến trình, "context switch" (chuyển ngữ cảnh) là gì?
- A. Việc chuyển đổi giữa chế độ người dùng và chế độ kernel.
- B. Việc lưu và khôi phục trạng thái của CPU khi chuyển đổi giữa các tiến trình.
- C. Việc cấp phát bộ nhớ cho một tiến trình mới.
- D. Việc xử lý một ngắt phần cứng.
Câu 6: Thuật toán lập lịch CPU nào sau đây có thể dẫn đến tình trạng "starvation" (chết đói)?
- A. Lập lịch theo độ ưu tiên (Priority Scheduling).
- B. Lập lịch vòng tròn (Round Robin).
- C. Lập lịch FIFO (First-In, First-Out).
- D. Lập lịch SJF (Shortest Job First).
Câu 7: Điều kiện "mutual exclusion" (loại trừ lẫn nhau) trong vấn đề critical section (vùng găng) đảm bảo điều gì?
- A. Các tiến trình phải truy cập vùng găng theo thứ tự FIFO.
- B. Tất cả các tiến trình đều có cơ hội công bằng truy cập vùng găng.
- C. Nếu một tiến trình đang ở trong vùng găng, không tiến trình nào khác được vào vùng găng.
- D. Tiến trình nào yêu cầu vào vùng găng trước sẽ được vào trước.
Câu 8: Semaphore là một công cụ đồng bộ hóa. Thao tác "wait" (hoặc P) trên semaphore thực hiện điều gì?
- A. Tăng giá trị của semaphore.
- B. Giảm giá trị của semaphore và có thể chặn tiến trình nếu cần.
- C. Kiểm tra giá trị của semaphore mà không thay đổi nó.
- D. Giải phóng tất cả các tiến trình đang chờ trên semaphore.
Câu 9: Giả sử có hai tiến trình P1 và P2 cùng chia sẻ một biến đếm "count". P1 tăng "count" lên 1, P2 giảm "count" đi 1. Nếu không có cơ chế đồng bộ hóa, điều gì có thể xảy ra?
- A. Giá trị của "count" sẽ luôn đúng.
- B. Chương trình sẽ bị lỗi biên dịch.
- C. Chương trình sẽ chạy chậm hơn nhưng kết quả vẫn đúng.
- D. Có thể xảy ra "race condition" và giá trị của "count" có thể không đúng.
Câu 10: Trong ngữ cảnh deadlock (bế tắc), điều kiện "hold and wait" (giữ và chờ) nghĩa là gì?
- A. Tiến trình giữ một tài nguyên và không bao giờ giải phóng nó.
- B. Tiến trình phải chờ đợi một khoảng thời gian cố định trước khi yêu cầu tài nguyên.
- C. Tiến trình đang giữ ít nhất một tài nguyên và chờ đợi để chiếm thêm tài nguyên khác.
- D. Tiến trình phải giữ tất cả các tài nguyên cần thiết trước khi bắt đầu thực hiện.
Câu 11: Kỹ thuật nào sau đây thường được sử dụng để ngăn chặn deadlock bằng cách phá vỡ điều kiện "circular wait" (chờ đợi vòng tròn)?
- A. Thuật toán Banker"s Algorithm.
- B. Gán thứ tự tuyến tính cho các loại tài nguyên.
- C. Phát hiện và phục hồi deadlock.
- D. Cấp phát tài nguyên theo yêu cầu.
Câu 12: Sự khác biệt chính giữa "preemptive" (ưu tiên) và "non-preemptive" (không ưu tiên) trong lập lịch CPU là gì?
- A. Trong preemptive, tiến trình đang chạy có thể bị ngắt, còn non-preemptive thì không.
- B. Preemptive hiệu quả hơn non-preemptive trong mọi trường hợp.
- C. Non-preemptive dễ cài đặt hơn preemptive.
- D. Preemptive chỉ áp dụng cho hệ thống đơn nhiệm, non-preemptive cho đa nhiệm.
Câu 13: Trong hệ thống bộ nhớ ảo, "page fault" (lỗi trang) xảy ra khi nào?
- A. Khi bộ nhớ vật lý đầy.
- B. Khi tiến trình truy cập một trang không có trong bộ nhớ vật lý.
- C. Khi xảy ra lỗi phần cứng bộ nhớ.
- D. Khi tiến trình cố gắng truy cập bộ nhớ ngoài phạm vi được cấp phát.
Câu 14: Mục đích của "Translation Lookaside Buffer" (TLB) trong hệ thống bộ nhớ ảo là gì?
- A. Tăng dung lượng bộ nhớ vật lý.
- B. Giảm số lượng page fault.
- C. Tăng tốc độ dịch địa chỉ ảo sang địa chỉ vật lý.
- D. Bảo vệ bộ nhớ khỏi truy cập trái phép.
Câu 15: Phương pháp quản lý bộ nhớ "segmentation" (phân đoạn) chia bộ nhớ thành các đơn vị logic có kích thước thay đổi gọi là gì?
- A. Trang (Pages).
- B. Đoạn (Segments).
- C. Khối (Blocks).
- D. Cluster.
Câu 16: Trong hệ thống tệp tin, "inode" (index node) chứa thông tin gì quan trọng về tệp tin?
- A. Tên tệp tin và đường dẫn.
- B. Nội dung của tệp tin.
- C. Kiểu tệp tin (văn bản, thực thi, ...).
- D. Metadata và con trỏ đến các khối dữ liệu của tệp tin.
Câu 17: Cơ chế "buffering" (đệm) trong quản lý I/O giúp cải thiện hiệu suất bằng cách nào?
- A. Giảm sự khác biệt tốc độ giữa CPU và thiết bị I/O.
- B. Loại bỏ hoàn toàn việc chờ đợi I/O.
- C. Tăng độ tin cậy của dữ liệu I/O.
- D. Đơn giản hóa việc lập trình I/O.
Câu 18: Trong hệ thống phân tán, giao thức "consensus" (đồng thuận) được sử dụng để làm gì?
- A. Chia sẻ tài nguyên giữa các máy tính.
- B. Đảm bảo bảo mật dữ liệu truyền trên mạng.
- C. Đạt được sự đồng thuận giữa các máy chủ về một giá trị.
- D. Cân bằng tải công việc giữa các máy chủ.
Câu 19: "Virtual machine" (máy ảo) cung cấp lợi ích chính nào sau đây?
- A. Tăng tốc độ xử lý của CPU vật lý.
- B. Giảm tiêu thụ điện năng của hệ thống.
- C. Cải thiện khả năng bảo mật của hệ điều hành gốc.
- D. Cho phép chạy nhiều hệ điều hành trên cùng một phần cứng.
Câu 20: Điều gì KHÔNG phải là một loại hệ điều hành phổ biến?
- A. Hệ điều hành thời gian thực (Real-time OS).
- B. Hệ điều hành nhúng (Embedded OS).
- C. Hệ điều hành đơn chip (Single-chip OS).
- D. Hệ điều hành mạng (Network OS).
Câu 21: Trong mô hình client-server, server thường cung cấp dịch vụ gì cho client?
- A. Yêu cầu dịch vụ và tài nguyên.
- B. Cung cấp tài nguyên và dịch vụ.
- C. Điều phối hoạt động của mạng.
- D. Bảo vệ hệ thống khỏi tấn công mạng.
Câu 22: "Kernel" (hạt nhân) của hệ điều hành chịu trách nhiệm chính cho chức năng nào?
- A. Giao tiếp với người dùng.
- B. Chạy các ứng dụng người dùng.
- C. Quản lý tài nguyên hệ thống và cung cấp dịch vụ hệ thống.
- D. Biên dịch mã nguồn chương trình.
Câu 23: "Monolithic kernel" (hạt nhân đơn khối) và "microkernel" (vi hạt nhân) khác nhau chủ yếu ở điểm nào?
- A. Monolithic kernel nhanh hơn microkernel.
- B. Microkernel an toàn hơn monolithic kernel.
- C. Monolithic kernel dễ mở rộng hơn microkernel.
- D. Số lượng và loại dịch vụ được tích hợp trong kernel.
Câu 24: "System call" (lời gọi hệ thống) là cơ chế để?
- A. Ứng dụng người dùng yêu cầu dịch vụ từ kernel.
- B. Kernel thông báo sự kiện cho ứng dụng người dùng.
- C. Các tiến trình giao tiếp với nhau.
- D. Hệ điều hành quản lý bộ nhớ.
Câu 25: "Shell" (vỏ lệnh) trong hệ điều hành Unix-like có vai trò gì?
- A. Quản lý tài nguyên hệ thống.
- B. Giao diện dòng lệnh để người dùng tương tác với hệ điều hành.
- C. Biên dịch mã nguồn chương trình.
- D. Quản lý tiến trình và bộ nhớ.
Câu 26: "Device driver" (trình điều khiển thiết bị) có chức năng gì?
- A. Tăng tốc độ hoạt động của thiết bị.
- B. Bảo vệ thiết bị khỏi virus.
- C. Cho phép hệ điều hành giao tiếp và điều khiển thiết bị phần cứng.
- D. Quản lý nguồn điện cho thiết bị.
Câu 27: Thuật toán lập lịch "Shortest Remaining Time Next" (SRTN) là phiên bản preemptive của thuật toán nào?
- A. FIFO (First-In, First-Out).
- B. Round Robin (RR).
- C. Priority Scheduling.
- D. SJF (Shortest Job First).
Câu 28: "Thrashing" (xáo trộn trang) trong hệ thống bộ nhớ ảo xảy ra khi nào?
- A. Khi bộ nhớ vật lý còn trống nhiều.
- B. Khi hệ thống dành quá nhiều thời gian cho việc chuyển trang.
- C. Khi CPU utilization đạt 100%.
- D. Khi xảy ra deadlock.
Câu 29: Cơ chế "copy-on-write" (COW) trong quản lý tiến trình và bộ nhớ giúp tối ưu hóa điều gì?
- A. Tốc độ truy cập bộ nhớ.
- B. Bảo mật dữ liệu.
- C. Hiệu quả sử dụng bộ nhớ và tốc độ tạo tiến trình.
- D. Độ tin cậy của hệ thống.
Câu 30: Trong ngữ cảnh bảo mật hệ thống, "principle of least privilege" (nguyên tắc đặc quyền tối thiểu) có nghĩa là gì?
- A. Mỗi tiến trình/người dùng chỉ nên có quyền truy cập tối thiểu cần thiết.
- B. Tất cả người dùng nên có quyền truy cập như nhau để đảm bảo công bằng.
- C. Quyền truy cập nên được cấp phát dựa trên thời gian làm việc của người dùng.
- D. Quyền truy cập cao nhất nên được cấp cho quản trị viên hệ thống.