1. Nguyên lý nào sau đây KHÔNG phải là mục tiêu chính của hệ điều hành?
A. Thuận tiện cho người dùng
B. Quản lý tài nguyên hệ thống hiệu quả
C. Tăng độ phức tạp của phần cứng
D. Cho phép thực thi chương trình người dùng
2. Thành phần nào của hệ điều hành chịu trách nhiệm cấp phát và thu hồi bộ nhớ cho các tiến trình?
A. Bộ quản lý tiến trình
B. Bộ quản lý bộ nhớ
C. Bộ quản lý tệp tin
D. Bộ quản lý thiết bị
3. Trong các thuật toán lập lịch CPU, thuật toán nào có thể dẫn đến tình trạng "đói tài nguyên" (starvation) cho các tiến trình có độ ưu tiên thấp?
A. First-Come, First-Served (FCFS)
B. Shortest Job First (SJF)
C. Priority Scheduling (Lập lịch ưu tiên)
D. Round Robin
4. Khi một tiến trình chuyển từ trạng thái "Đang chạy" sang trạng thái "Chờ", điều gì có khả năng KHÔNG xảy ra?
A. Tiến trình đang chờ một sự kiện I/O hoàn thành.
B. Tiến trình đã sử dụng hết lượng thời gian CPU được cấp.
C. Tiến trình bị lỗi và hệ điều hành chấm dứt nó.
D. Tiến trình tự nguyện nhường CPU để chờ một tài nguyên.
5. Trong ngữ cảnh quản lý bộ nhớ ảo, kỹ thuật "phân trang" (paging) giúp giải quyết vấn đề gì?
A. Giảm thiểu phân mảnh ngoại vi
B. Tăng tốc độ truy cập bộ nhớ
C. Cho phép tiến trình vượt quá kích thước bộ nhớ vật lý
D. Đơn giản hóa việc quản lý bộ nhớ liên tục
6. Bộ nhớ cache (cache memory) hoạt động dựa trên nguyên lý nào để tăng tốc độ truy cập dữ liệu?
A. Nguyên lý bộ nhớ chính
B. Nguyên lý bộ nhớ tuần tự
C. Nguyên lý cục bộ (locality of reference)
D. Nguyên lý bộ nhớ ngẫu nhiên
7. Trong hệ thống tệp tin, cơ chế "quyền truy cập" (access control) được sử dụng để làm gì?
A. Tăng tốc độ truy cập tệp tin
B. Bảo vệ dữ liệu khỏi truy cập trái phép
C. Tổ chức tệp tin theo cấu trúc cây thư mục
D. Quản lý không gian lưu trữ tệp tin trên đĩa
8. Phương pháp nào sau đây KHÔNG phải là một kỹ thuật xử lý ngắt (interrupt handling) phổ biến?
A. Ngắt đơn (Single interrupt)
B. Ngắt lồng nhau (Nested interrupts)
C. Ngắt vectơ (Vectored interrupts)
D. Ngắt đa luồng (Multi-threaded interrupts)
9. So sánh giữa tiến trình (process) và luồng (thread), phát biểu nào sau đây KHÔNG đúng?
A. Tiến trình là đơn vị cấp phát tài nguyên, luồng là đơn vị thực thi.
B. Các luồng trong cùng một tiến trình chia sẻ không gian địa chỉ.
C. Việc chuyển đổi ngữ cảnh giữa các luồng tốn kém hơn so với giữa các tiến trình.
D. Một tiến trình có thể chứa nhiều luồng.
10. Trong hệ điều hành thời gian thực (real-time operating system - RTOS), yếu tố nào là quan trọng nhất?
A. Giao diện người dùng thân thiện
B. Thời gian đáp ứng và tính quyết định
C. Khả năng chạy đa nhiệm
D. Hiệu suất xử lý cao
11. Kiểu hệ điều hành nào phù hợp nhất cho các hệ thống nhúng (embedded systems) có tài nguyên hạn chế như bộ nhớ và năng lượng?
A. Hệ điều hành đa người dùng (Multi-user OS)
B. Hệ điều hành phân tán (Distributed OS)
C. Hệ điều hành thời gian thực (Real-time OS)
D. Hệ điều hành batch (Batch OS)
12. Cơ chế đồng bộ hóa (synchronization) nào thường được sử dụng để bảo vệ vùng dữ liệu dùng chung khỏi việc truy cập đồng thời của nhiều luồng, đảm bảo tính toàn vẹn dữ liệu?
A. Lập lịch ưu tiên (Priority scheduling)
B. Bộ nhớ ảo (Virtual memory)
C. Mutex (Loại trừ lẫn nhau)
D. DMA (Truy cập bộ nhớ trực tiếp)
13. Công nghệ ảo hóa (virtualization) trong hệ điều hành cho phép thực hiện điều gì?
A. Tăng tốc độ xử lý của CPU vật lý
B. Chạy nhiều hệ điều hành trên cùng một phần cứng vật lý
C. Giảm mức tiêu thụ năng lượng của máy tính
D. Đơn giản hóa việc quản lý tệp tin
14. Trong mô hình bảo mật của hệ điều hành, "nguyên tắc đặc quyền tối thiểu" (principle of least privilege) có nghĩa là gì?
A. Người dùng nên có quyền truy cập vào tất cả tài nguyên hệ thống.
B. Mỗi tiến trình chỉ nên được cấp quyền truy cập tối thiểu cần thiết để thực hiện nhiệm vụ của mình.
C. Hệ điều hành nên có quyền tối cao so với người dùng.
D. Quyền truy cập nên được cấp phát dựa trên độ ưu tiên của tiến trình.
15. Ứng dụng nào sau đây KHÔNG phải là một ví dụ điển hình của hệ điều hành thời gian thực (RTOS)?
A. Hệ thống điều khiển máy bay
B. Hệ thống quản lý cơ sở dữ liệu lớn
C. Hệ thống điều khiển robot công nghiệp
D. Hệ thống phanh chống bó cứng (ABS) trên ô tô
16. Đâu là chức năng chính của Hệ điều hành (Operating System)?
A. Quản lý phần cứng và tài nguyên hệ thống
B. Chạy các ứng dụng phần mềm
C. Cung cấp giao diện người dùng
D. Tất cả các đáp án trên
17. Thành phần nào của Hệ điều hành được xem là "trái tim" và chịu trách nhiệm quản lý trực tiếp phần cứng?
A. Shell
B. Kernel (Nhân)
C. System Libraries (Thư viện hệ thống)
D. Device Drivers (Trình điều khiển thiết bị)
18. Lời gọi hệ thống (System call) được sử dụng cho mục đích gì?
A. Để ứng dụng người dùng trực tiếp truy cập phần cứng
B. Để ứng dụng người dùng yêu cầu dịch vụ từ Hệ điều hành
C. Để các tiến trình giao tiếp với nhau
D. Để Hệ điều hành thực hiện các tác vụ nội bộ
19. Thuật toán lập lịch CPU nào sau đây có thể dẫn đến tình trạng "đói tài nguyên" (starvation) cho các tiến trình dài?
A. First-Come, First-Served (FCFS)
B. Shortest Job First (SJF)
C. Round Robin (RR)
D. Priority Scheduling (Lập lịch ưu tiên)
20. Bộ nhớ ảo (Virtual memory) giải quyết vấn đề chính nào trong quản lý bộ nhớ?
A. Tăng tốc độ truy cập bộ nhớ
B. Cho phép chạy các chương trình lớn hơn dung lượng bộ nhớ vật lý
C. Giảm thiểu phân mảnh bộ nhớ
D. Cải thiện hiệu suất ổ cứng
21. Trong hệ thống tệp tin Unix-like, inode được sử dụng để làm gì?
A. Lưu trữ dữ liệu của tệp tin
B. Lưu trữ metadata (thông tin mô tả) của tệp tin (quyền, thời gian, kích thước...)
C. Quản lý việc cấp phát không gian đĩa
D. Cung cấp giao diện người dùng để quản lý tệp tin
22. Loại hệ điều hành nào phù hợp nhất cho các hệ thống nhúng (embedded systems) có tài nguyên hạn chế?
A. Hệ điều hành máy tính để bàn (ví dụ: Windows, macOS)
B. Hệ điều hành máy chủ (ví dụ: Linux Server)
C. Hệ điều hành thời gian thực (RTOS)
D. Hệ điều hành di động (ví dụ: Android, iOS)
23. Công nghệ máy ảo (Virtual Machine) mang lại lợi ích chính nào?
A. Tăng tốc độ xử lý của phần cứng
B. Cho phép chạy nhiều hệ điều hành trên một máy tính vật lý duy nhất
C. Cải thiện tuổi thọ pin của thiết bị
D. Nâng cao chất lượng đồ họa
24. Sự khác biệt chính giữa lập lịch ưu tiên "tiền chiếm" (preemptive) và "không tiền chiếm" (non-preemptive) là gì?
A. Lập lịch "tiền chiếm" nhanh hơn
B. Lập lịch "không tiền chiếm" dễ cài đặt hơn
C. Lập lịch "tiền chiếm" cho phép hệ điều hành tạm dừng một tiến trình đang chạy để ưu tiên tiến trình khác
D. Lập lịch "không tiền chiếm" hiệu quả hơn trong việc sử dụng tài nguyên
25. Kỹ thuật quản lý bộ nhớ nào dễ bị phân mảnh ngoài (external fragmentation) nhất?
A. Phân trang (Paging)
B. Phân đoạn (Segmentation)
C. Hoán đổi (Swapping)
D. Phân trang theo yêu cầu (Demand Paging)
26. Điều kiện cần thiết nào sau đây là *bắt buộc* để xảy ra tình trạng bế tắc (deadlock)?
A. Loại trừ lẫn nhau (Mutual exclusion)
B. Giữ và chờ (Hold and wait)
C. Không tiền chiếm (No preemption)
D. Chờ đợi vòng tròn (Circular wait)
27. Mục đích chính của cơ chế kiểm soát truy cập (access control) trong Hệ điều hành là gì?
A. Ngăn chặn virus xâm nhập
B. Quản lý việc truy cập bộ nhớ
C. Kiểm soát ai được phép truy cập vào các tài nguyên hệ thống (tệp tin, thiết bị...)
D. Cải thiện hiệu suất hệ thống
28. DMA (Direct Memory Access - Truy cập bộ nhớ trực tiếp) được sử dụng để làm gì trong các hoạt động I/O?
A. Tăng tốc độ xử lý của CPU
B. Cho phép truyền dữ liệu trực tiếp giữa thiết bị ngoại vi và bộ nhớ mà không cần sự can thiệp của CPU
C. Cải thiện việc sử dụng không gian đĩa
D. Nâng cao hiệu suất giao tiếp mạng
29. Một tiến trình đang ở trạng thái "chờ" (waiting/blocked) khi nào?
A. Khi đang thực thi các lệnh của chương trình
B. Khi sẵn sàng để được cấp CPU
C. Khi đang chờ một sự kiện xảy ra (ví dụ: hoàn thành I/O)
D. Khi đã hoàn thành việc thực thi
30. Tại sao việc ghi nhật ký (journaling) hệ thống tệp tin lại quan trọng trong các hệ điều hành hiện đại?
A. Cải thiện tốc độ truy cập tệp tin
B. Nâng cao khả năng bảo mật dữ liệu
C. Đảm bảo tính nhất quán của hệ thống tệp tin sau sự cố hệ thống (crash)
D. Giảm phân mảnh đĩa
31. Chức năng cốt lõi nào của hệ điều hành chịu trách nhiệm phân bổ và quản lý bộ nhớ chính (RAM) cho các tiến trình?
A. Quản lý tiến trình
B. Quản lý bộ nhớ
C. Quản lý tập tin
D. Quản lý thiết bị I/O
32. Trong ngữ cảnh hệ điều hành, "tiến trình" (process) được hiểu chính xác nhất là gì?
A. Một đoạn mã chương trình tĩnh được lưu trữ trên ổ cứng.
B. Một chương trình đang được thực thi, bao gồm mã lệnh, dữ liệu và trạng thái hiện tại.
C. Một đơn vị lưu trữ dữ liệu cơ bản trên hệ thống tập tin.
D. Một thiết bị phần cứng ngoại vi kết nối với máy tính.
33. Loại hệ điều hành nào cho phép nhiều người dùng chia sẻ tài nguyên máy tính đồng thời, tạo ra ảo giác rằng mỗi người dùng có một máy tính riêng?
A. Hệ điều hành theo lô (Batch Operating System)
B. Hệ điều hành thời gian thực (Real-time Operating System)
C. Hệ điều hành chia sẻ thời gian (Time-sharing Operating System)
D. Hệ điều hành nhúng (Embedded Operating System)
34. Cơ chế "đánh trang" (paging) trong quản lý bộ nhớ ảo giúp giải quyết vấn đề chính nào?
A. Giảm thiểu tình trạng phân mảnh ngoại vi của bộ nhớ.
B. Tăng tốc độ truy cập bộ nhớ chính.
C. Đơn giản hóa việc quản lý các tiến trình đa luồng.
D. Cải thiện độ tin cậy của hệ thống tập tin.
35. Trong hệ điều hành, "độc quyền tương hỗ" (mutual exclusion) là một yêu cầu quan trọng trong việc quản lý tài nguyên dùng chung. Mục đích chính của độc quyền tương hỗ là gì?
A. Đảm bảo rằng nhiều tiến trình có thể truy cập tài nguyên cùng một lúc để tăng hiệu suất.
B. Ngăn chặn tình trạng bế tắc (deadlock) trong hệ thống.
C. Đảm bảo rằng chỉ có một tiến trình có thể truy cập vào tài nguyên quan trọng tại một thời điểm nhất định.
D. Tối ưu hóa việc sử dụng CPU bằng cách phân chia thời gian đều cho các tiến trình.
36. Thuật toán lập lịch CPU nào ưu tiên các tiến trình có thời gian thực thi ngắn nhất, nhằm mục đích giảm thời gian chờ trung bình?
A. FCFS (First-Come, First-Served)
B. SJF (Shortest Job First)
C. Round Robin
D. Priority Scheduling
37. Kiến trúc hệ điều hành "microkernel" có ưu điểm chính nào so với kiến trúc "monolithic kernel"?
A. Hiệu suất cao hơn và tốc độ thực thi nhanh hơn.
B. Dễ dàng mở rộng, bảo trì và có độ tin cậy cao hơn.
C. Ít tốn tài nguyên hệ thống hơn và khởi động nhanh hơn.
D. Hỗ trợ tốt hơn cho các ứng dụng thời gian thực.
38. Trong quản lý tập tin, "inode" (index node) được sử dụng để làm gì?
A. Lưu trữ nội dung thực tế của tập tin.
B. Lưu trữ siêu dữ liệu (metadata) của tập tin, như quyền truy cập, kích thước, thời gian sửa đổi, và địa chỉ khối dữ liệu.
C. Quản lý danh sách các tập tin và thư mục trong hệ thống.
D. Cung cấp giao diện người dùng để thao tác với tập tin.
39. Cơ chế "ngắt" (interrupt) trong hệ điều hành đóng vai trò quan trọng trong việc quản lý tương tác giữa CPU và thiết bị ngoại vi. Vai trò chính của ngắt là gì?
A. Cho phép CPU liên tục kiểm tra trạng thái của thiết bị ngoại vi để xem có dữ liệu sẵn sàng hay không.
B. Cho phép thiết bị ngoại vi thông báo cho CPU khi cần sự chú ý hoặc khi hoàn thành một thao tác.
C. Tăng tốc độ truyền dữ liệu giữa CPU và bộ nhớ chính.
D. Đảm bảo an toàn và bảo mật dữ liệu trong quá trình truyền thông.
40. Trong ngữ cảnh bảo mật hệ điều hành, "quyền truy cập" (access right) được sử dụng để xác định điều gì?
A. Danh tính của người dùng hoặc tiến trình đang cố gắng truy cập tài nguyên.
B. Các thao tác mà người dùng hoặc tiến trình được phép thực hiện trên một tài nguyên cụ thể (ví dụ: đọc, ghi, thực thi).
C. Mức độ ưu tiên của tiến trình trong hệ thống.
D. Địa chỉ bộ nhớ mà tài nguyên được lưu trữ.
41. Hãy so sánh hệ điều hành Windows và Linux về tính "mã nguồn mở". Phát biểu nào sau đây là đúng?
A. Cả Windows và Linux đều là hệ điều hành mã nguồn mở hoàn toàn.
B. Windows là hệ điều hành mã nguồn mở, trong khi Linux là hệ điều hành độc quyền.
C. Windows là hệ điều hành độc quyền, trong khi Linux là hệ điều hành mã nguồn mở.
D. Cả Windows và Linux đều là hệ điều hành độc quyền, nhưng có các phiên bản mã nguồn mở hạn chế.
42. Ứng dụng thực tế nào sau đây thể hiện rõ nhất vai trò của hệ điều hành thời gian thực (Real-time Operating System - RTOS)?
A. Chạy một trình duyệt web trên máy tính cá nhân.
B. Điều khiển hệ thống phanh ABS trên ô tô.
C. Soạn thảo văn bản bằng phần mềm Microsoft Word.
D. Xem phim trực tuyến trên Netflix.
43. Trong ngữ cảnh quản lý tiến trình, "context switching" (chuyển đổi ngữ cảnh) là quá trình nào?
A. Quá trình tạo ra một tiến trình con từ một tiến trình cha.
B. Quá trình hệ điều hành lưu trạng thái của tiến trình đang chạy và khôi phục trạng thái của tiến trình khác để CPU có thể chuyển sang thực thi tiến trình mới.
C. Quá trình cấp phát bộ nhớ cho một tiến trình mới.
D. Quá trình giải phóng bộ nhớ khi một tiến trình kết thúc.
44. Phương pháp nào sau đây thường được sử dụng để giải quyết vấn đề "bế tắc" (deadlock) trong hệ điều hành?
A. Tăng tốc độ CPU để các tiến trình hoàn thành nhanh hơn.
B. Sử dụng nhiều bộ nhớ RAM hơn để giảm cạnh tranh tài nguyên.
C. Phòng tránh bế tắc (deadlock prevention), phát hiện bế tắc (deadlock detection) và phục hồi bế tắc (deadlock recovery).
D. Sử dụng thuật toán lập lịch CPU Round Robin để đảm bảo công bằng.
45. Trong hệ thống tập tin, "mount point" (điểm gắn kết) có vai trò gì?
A. Vị trí lưu trữ tạm thời các tập tin đang được chỉnh sửa.
B. Thư mục trong hệ thống tập tin hiện tại, nơi một hệ thống tập tin khác được gắn vào để có thể truy cập nội dung của nó.
C. Địa chỉ vật lý trên ổ cứng nơi hệ thống tập tin được lưu trữ.
D. Tên duy nhất được gán cho mỗi tập tin trong hệ thống.
46. Đâu là vai trò **chính** của hệ điều hành trong một hệ thống máy tính?
A. Cung cấp giao diện đồ họa người dùng (GUI) trực quan.
B. Quản lý và phân phối tài nguyên phần cứng và phần mềm.
C. Biên dịch mã nguồn chương trình thành mã máy.
D. Kết nối máy tính với mạng Internet.
47. Xét tình huống có nhiều tiến trình cùng tranh giành quyền sử dụng CPU. Thuật toán lập lịch nào sau đây **có xu hướng** giảm thiểu thời gian chờ đợi trung bình của các tiến trình, đặc biệt là các tiến trình ngắn?
A. First-Come, First-Served (FCFS)
B. Round Robin (RR)
C. Shortest Job First (SJF)
D. Priority Scheduling (Ưu tiên)
48. Khi bạn mở một tập tin văn bản trên máy tính, hệ điều hành sẽ sử dụng cơ chế nào để truy cập dữ liệu từ ổ cứng và hiển thị nội dung trên màn hình?
A. Phân trang bộ nhớ ảo (Virtual memory paging).
B. Ngắt phần cứng (Hardware interrupts).
C. Lời gọi hệ thống (System calls).
D. Đoạn mã kernel (Kernel code segment).
49. Điểm khác biệt **chính** giữa cơ chế phân trang (paging) và phân đoạn (segmentation) trong quản lý bộ nhớ là gì?
A. Phân trang chia bộ nhớ thành các khối có kích thước thay đổi, còn phân đoạn chia thành các khối có kích thước cố định.
B. Phân trang được thiết kế để hỗ trợ bộ nhớ ảo, còn phân đoạn chỉ dùng cho bộ nhớ vật lý.
C. Phân trang chia bộ nhớ thành các khối có kích thước cố định (trang), còn phân đoạn chia thành các khối logic có kích thước thay đổi (đoạn).
D. Phân trang tập trung vào việc bảo vệ bộ nhớ, còn phân đoạn tập trung vào việc chia sẻ bộ nhớ.
50. Thành phần nào của hệ điều hành đóng vai trò là **trung tâm điều khiển**, trực tiếp quản lý tài nguyên hệ thống và cung cấp các dịch vụ cơ bản cho các chương trình ứng dụng?
A. Shell (Vỏ)
B. Kernel (Nhân)
C. System Libraries (Thư viện hệ thống)
D. Device Drivers (Trình điều khiển thiết bị)