1. Chức năng chính của hệ điều hành là gì?
A. Quản lý phần cứng và cung cấp giao diện cho người dùng.
B. Chạy các ứng dụng phần mềm cụ thể.
C. Thiết kế và phát triển phần mềm ứng dụng.
D. Sản xuất và lắp ráp phần cứng máy tính.
2. Trong các loại hệ điều hành sau, loại nào thường được sử dụng cho các hệ thống nhúng và thiết bị di động?
A. Hệ điều hành thời gian thực (Real-time OS).
B. Hệ điều hành phân tán (Distributed OS).
C. Hệ điều hành đa nhiệm (Multitasking OS).
D. Hệ điều hành đơn nhiệm (Single-tasking OS).
3. Thuật ngữ "đa chương trình" (multiprogramming) trong hệ điều hành đề cập đến điều gì?
A. Khả năng chạy đồng thời nhiều chương trình trên nhiều CPU.
B. Khả năng chạy đồng thời nhiều chương trình trên một CPU bằng cách chia sẻ thời gian.
C. Khả năng chạy một chương trình duy nhất rất lớn.
D. Khả năng chạy các chương trình trên nhiều máy tính khác nhau.
4. Khi một tiến trình chuyển từ trạng thái "chờ" (waiting) sang trạng thái "sẵn sàng" (ready), điều gì đã xảy ra?
A. Tiến trình đã hoàn thành việc thực thi.
B. Tiến trình đã được cấp phát CPU để thực thi.
C. Tiến trình đã hoàn thành một sự kiện I/O và sẵn sàng tiếp tục thực thi.
D. Tiến trình đã bị hệ điều hành tạm dừng.
5. Trong quản lý bộ nhớ, kỹ thuật "phân trang" (paging) giúp giải quyết vấn đề gì?
A. Tăng tốc độ truy cập bộ nhớ chính.
B. Giảm kích thước bộ nhớ vật lý cần thiết.
C. Cho phép tiến trình có kích thước lớn hơn bộ nhớ vật lý.
D. Ngăn chặn việc phân mảnh bộ nhớ ngoài.
6. Trong ngữ cảnh hệ điều hành, "deadlock" (bế tắc) xảy ra khi nào?
A. Một tiến trình chiếm giữ CPU quá lâu.
B. Hai hoặc nhiều tiến trình chờ đợi lẫn nhau để giải phóng tài nguyên mà chúng đang giữ.
C. Bộ nhớ không đủ để cấp phát cho tiến trình.
D. Lỗi phần cứng làm hệ thống ngừng hoạt động.
7. Cơ chế "ngắt" (interrupt) trong hệ điều hành được sử dụng để làm gì?
A. Tăng tốc độ xử lý của CPU.
B. Cho phép các thiết bị ngoại vi giao tiếp với CPU và hệ điều hành.
C. Bảo vệ hệ thống khỏi virus và phần mềm độc hại.
D. Quản lý năng lượng tiêu thụ của hệ thống.
8. Ví dụ nào sau đây minh họa rõ nhất cho việc sử dụng hệ điều hành thời gian thực?
A. Chơi game đồ họa 3D trên máy tính cá nhân.
B. Điều khiển hệ thống phanh ABS trên ô tô.
C. Duyệt web và xem video trực tuyến.
D. Soạn thảo văn bản và bảng tính.
9. Trong quản lý tiến trình, "context switching" (chuyển đổi ngữ cảnh) là gì?
A. Việc chuyển đổi giữa các trạng thái khác nhau của một tiến trình.
B. Việc chuyển đổi quyền điều khiển CPU từ một tiến trình sang tiến trình khác.
C. Việc chuyển đổi dữ liệu giữa bộ nhớ chính và bộ nhớ thứ cấp.
D. Việc chuyển đổi giữa các chế độ người dùng và chế độ kernel.
10. Sự khác biệt chính giữa hệ điều hành "monolithic kernel" (nhân đơn khối) và "microkernel" (vi nhân) là gì?
A. Monolithic kernel nhanh hơn microkernel.
B. Microkernel có kích thước lớn hơn monolithic kernel.
C. Monolithic kernel tích hợp nhiều dịch vụ hệ thống vào nhân, trong khi microkernel giữ nhân nhỏ gọn và chuyển nhiều dịch vụ ra ngoài nhân.
D. Microkernel chỉ chạy trên phần cứng cao cấp, còn monolithic kernel chạy trên phần cứng thấp cấp.
11. Trong quản lý bộ nhớ ảo, "thrashing" (giật trang) xảy ra khi nào?
A. Bộ nhớ vật lý không đủ dung lượng.
B. CPU hoạt động quá tải.
C. Tiến trình liên tục yêu cầu các trang không có trong bộ nhớ, dẫn đến việc trao đổi trang liên tục và giảm hiệu suất.
D. Hệ thống tập tin bị lỗi.
12. Mục đích chính của "hệ thống tập tin" (file system) trong hệ điều hành là gì?
A. Tăng tốc độ truy cập dữ liệu.
B. Quản lý và tổ chức dữ liệu trên thiết bị lưu trữ một cách có cấu trúc.
C. Bảo vệ dữ liệu khỏi virus và phần mềm độc hại.
D. Chia sẻ dữ liệu giữa các máy tính trong mạng.
13. Trong bảo mật hệ điều hành, "authentication" (xác thực) và "authorization" (ủy quyền) khác nhau như thế nào?
A. Authentication là xác định danh tính người dùng, authorization là cấp quyền truy cập tài nguyên.
B. Authentication là cấp quyền truy cập tài nguyên, authorization là xác định danh tính người dùng.
C. Authentication là quá trình mã hóa dữ liệu, authorization là quá trình giải mã dữ liệu.
D. Authentication và authorization là hai tên gọi khác nhau của cùng một quá trình.
14. Khi bạn mở nhiều ứng dụng trên điện thoại thông minh (ví dụ: trình duyệt web, ứng dụng nghe nhạc, game), hệ điều hành đóng vai trò gì trong việc quản lý chúng?
A. Hệ điều hành chỉ quản lý ứng dụng đang được sử dụng ở phía trước.
B. Hệ điều hành quản lý bộ nhớ, CPU và các tài nguyên khác để đảm bảo các ứng dụng chạy mượt mà và không xung đột.
C. Hệ điều hành không liên quan đến việc quản lý các ứng dụng đang chạy.
D. Hệ điều hành chỉ chịu trách nhiệm cài đặt và gỡ cài đặt ứng dụng.
15. Giải thuật lập lịch "Round Robin" (RR) thường được sử dụng trong hệ điều hành nào?
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).
16. Đâu là thành phần cốt lõi của hệ điều hành, chịu trách nhiệm quản lý tài nguyên và giao tiếp trực tiếp với phần cứng?
A. Shell
B. Kernel
C. Ứng dụng hệ thống
D. Giao diện người dùng
17. Tiến trình (Process) và luồng (Thread) khác nhau cơ bản ở điểm nào?
A. Tiến trình có không gian địa chỉ riêng, luồng thì không.
B. Luồng có thể thực hiện song song trên nhiều CPU, tiến trình thì không.
C. Tiến trình là đơn vị thực thi nhỏ hơn luồng.
D. Luồng có thể tồn tại độc lập mà không cần tiến trình.
18. Thuật toán lập lịch nào sau đây ưu tiên các tiến trình có thời gian CPU ngắn nhất để tối thiểu hóa thời gian chờ trung bình?
A. First-Come, First-Served (FCFS)
B. Shortest Job First (SJF)
C. Round Robin (RR)
D. Priority Scheduling
19. Trong quản lý bộ nhớ, phân trang (Paging) giải quyết vấn đề phân mảnh ngoại vi bằng cách nào?
A. Chia bộ nhớ thành các khối kích thước bằng nhau (trang).
B. Sắp xếp lại bộ nhớ để gom các vùng trống.
C. Cấp phát bộ nhớ liên tục cho các tiến trình.
D. Sử dụng bộ nhớ ảo để tăng dung lượng bộ nhớ vật lý.
20. Cơ chế nào sau đây giúp ngăn chặn một tiến trình độc hại truy cập trái phép vào bộ nhớ của tiến trình khác?
A. Bộ nhớ ảo (Virtual Memory)
B. Cơ chế bảo vệ bộ nhớ (Memory Protection)
C. Đa chương trình (Multiprogramming)
D. Bộ nhớ cache (Cache Memory)
21. Hệ thống tập tin (File System) có vai trò chính là gì trong hệ điều hành?
A. Quản lý bộ nhớ chính
B. Quản lý các tiến trình và luồng
C. Tổ chức và quản lý dữ liệu trên bộ nhớ thứ cấp
D. Cung cấp giao diện người dùng đồ họa
22. Khi một chương trình yêu cầu dữ liệu không có trong bộ nhớ chính, nhưng có trong bộ nhớ thứ cấp (ví dụ ổ cứng), hiện tượng này được gọi là gì?
A. Page fault
B. Cache miss
C. Context switch
D. Deadlock
23. Trong ngữ cảnh hệ điều hành thời gian thực (Real-time OS), yếu tố nào quan trọng nhất?
A. Hiệu suất xử lý tối đa
B. Tính đúng thời gian (Timeliness/Determinism)
C. Giao diện người dùng thân thiện
D. Khả năng mở rộng cao
24. Phương pháp nào sau đây thường được sử dụng để giải quyết tình huống Deadlock (bế tắc) trong hệ điều hành?
A. Chia sẻ tài nguyên (Resource Sharing)
B. Ngăn chặn (Prevention), Tránh né (Avoidance), Phát hiện (Detection) và Phục hồi (Recovery)
C. Tăng tốc độ CPU
D. Sử dụng nhiều bộ nhớ hơn
25. Trong mô hình client-server, hệ điều hành đóng vai trò gì?
A. Chỉ hoạt động trên máy chủ (server).
B. Chỉ hoạt động trên máy khách (client).
C. Hoạt động trên cả máy khách và máy chủ, quản lý giao tiếp và tài nguyên.
D. Không liên quan đến mô hình client-server.
26. Công nghệ ảo hóa (Virtualization) mang lại lợi ích chính nào cho hệ điều hành và người dùng?
A. Tăng tốc độ xử lý của CPU.
B. Cho phép chạy nhiều hệ điều hành trên một phần cứng duy nhất.
C. Giảm tiêu thụ điện năng.
D. Cải thiện giao diện người dùng.
27. Kiểu hệ điều hành nào phù hợp nhất cho các hệ thống nhúng (Embedded Systems) như thiết bị IoT, ô tô tự lái?
A. Hệ điều hành đa người dùng (Multi-user OS)
B. Hệ điều hành thời gian thực (Real-time OS)
C. Hệ điều hành phân tán (Distributed OS)
D. Hệ điều hành theo lô (Batch OS)
28. Trong bảo mật hệ điều hành, cơ chế xác thực (Authentication) và ủy quyền (Authorization) có vai trò gì?
A. Xác thực kiểm tra danh tính người dùng, ủy quyền kiểm tra quyền truy cập tài nguyên.
B. Xác thực mã hóa dữ liệu, ủy quyền giải mã dữ liệu.
C. Xác thực phát hiện virus, ủy quyền loại bỏ virus.
D. Xác thực quản lý bộ nhớ, ủy quyền quản lý tiến trình.
29. Điểm khác biệt chính giữa hệ điều hành đơn nhân (Monolithic Kernel) và vi nhân (Microkernel) là gì?
A. Đơn nhân nhanh hơn, vi nhân an toàn hơn.
B. Đơn nhân có ít chức năng hơn vi nhân.
C. Đơn nhân tích hợp nhiều dịch vụ vào kernel, vi nhân chỉ giữ các dịch vụ cốt lõi ở kernel.
D. Vi nhân chỉ chạy trên hệ thống nhúng, đơn nhân trên máy tính cá nhân.
30. Giao diện dòng lệnh (Command Line Interface - CLI) và giao diện đồ họa (Graphical User Interface - GUI) khác nhau như thế nào?
A. CLI nhanh hơn GUI, nhưng khó sử dụng hơn cho người mới.
B. GUI mạnh mẽ hơn CLI trong việc quản lý hệ thống.
C. CLI chỉ dùng cho lập trình viên, GUI cho người dùng cuối.
D. GUI không thể thực hiện các tác vụ mà CLI có thể.
31. Đâu là thành phần cốt lõi của hệ điều hành, chịu trách nhiệm quản lý tài nguyên hệ thống và cung cấp giao diện cho người dùng và ứng dụng?
A. Trình biên dịch (Compiler)
B. Hạt nhân (Kernel)
C. Trình thông dịch (Interpreter)
D. Trình liên kết (Linker)
32. Tiến trình (Process) khác với luồng (Thread) ở điểm nào sau đây?
A. Tiến trình chia sẻ không gian bộ nhớ, luồng thì không.
B. Tiến trình là đơn vị thực thi nhỏ hơn luồng.
C. Tiến trình có không gian địa chỉ riêng, luồng chia sẻ không gian địa chỉ của tiến trình chứa nó.
D. Tiến trình được quản lý bởi người dùng, luồng được quản lý bởi hệ điều hành.
33. Thuật toán lập lịch CPU nào ưu tiên tiến trình có thời gian burst CPU ngắn nhất tiếp theo, nhằm tối thiểu hóa thời gian chờ trung bình?
A. First-Come, First-Served (FCFS)
B. Shortest Job First (SJF)
C. Round Robin (RR)
D. Priority Scheduling
34. Trong quản lý bộ nhớ, kỹ thuật phân trang (Paging) giải quyết vấn đề phân mảnh ngoại vi bằng cách nào?
A. Chia bộ nhớ thành các khối có kích thước cố định và cấp phát liên tục.
B. Cho phép một tiến trình chiếm dụng nhiều vùng nhớ không liên tục.
C. Nén bộ nhớ để dồn các vùng nhớ trống lại với nhau.
D. Sử dụng bộ nhớ ảo để tăng dung lượng bộ nhớ vật lý.
35. Tình huống "Deadlock" (bế tắc) xảy ra khi nào?
A. Khi một tiến trình chiếm dụng CPU quá lâu.
B. Khi nhiều tiến trình tranh giành cùng một tài nguyên và mỗi tiến trình giữ một tài nguyên mà nó cần.
C. Khi bộ nhớ không đủ để cấp phát cho tiến trình.
D. Khi hệ thống bị treo do lỗi phần cứng.
36. Cơ chế "Semaphore" được sử dụng để giải quyết vấn đề gì trong hệ điều hành?
A. Quản lý bộ nhớ ảo.
B. Đồng bộ hóa các tiến trình và luồng.
C. Lập lịch CPU.
D. Quản lý hệ thống tập tin.
37. Trong hệ thống tập tin, inode (index node) chứa thông tin gì quan trọng về tập tin?
A. Dữ liệu của tập tin.
B. Tên của tập tin.
C. Quyền truy cập, kích thước và vị trí dữ liệu của tập tin trên đĩa.
D. Đường dẫn tuyệt đối của tập tin.
38. Bộ nhớ ảo (Virtual Memory) mang lại lợi ích chính nào cho hệ thống?
A. Tăng tốc độ truy cập bộ nhớ vật lý.
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ớ trong.
D. Tăng độ tin cậy của hệ thống.
39. Hệ điều hành thời gian thực (Real-time Operating System - RTOS) thường được sử dụng trong các ứng dụng nào?
A. Soạn thảo văn bản và duyệt web.
B. Chơi game và xem phim.
C. Điều khiển hệ thống nhúng, robot công nghiệp và thiết bị y tế.
D. Quản lý cơ sở dữ liệu lớn.
40. Sự khác biệt chính giữa hệ điều hành đơn nhân (Monolithic Kernel) và vi nhân (Microkernel) là gì?
A. Hệ điều hành đơn nhân có hiệu suất cao hơn, vi nhân dễ bảo trì hơn.
B. Hệ điều hành vi nhân có nhiều tính năng hơn hệ điều hành đơn nhân.
C. Hệ điều hành đơn nhân an toàn hơn hệ điều hành vi nhân.
D. Hệ điều hành vi nhân chỉ chạy trên các thiết bị di động.
41. Trong bảo mật hệ thống, cơ chế "Access Control List (ACL)" được sử dụng để làm gì?
A. Mã hóa dữ liệu.
B. Xác thực người dùng.
C. Kiểm soát quyền truy cập của người dùng hoặc tiến trình đến tài nguyên hệ thống.
D. Phát hiện xâm nhập.
42. Nguyên tắc "Locality of Reference" (tính cục bộ tham chiếu) được khai thác trong kỹ thuật nào của hệ điều hành để cải thiện hiệu suất?
A. Lập lịch CPU Round Robin.
B. Bộ nhớ cache và bộ nhớ ảo.
C. Đồng bộ hóa Semaphore.
D. Hệ thống tập tin phân cấp.
43. Loại hệ điều hành nào thường được sử dụng trong các hệ thống ngân hàng hoặc giao dịch tài chính, nơi tính toàn vẹn dữ liệu và bảo mật là ưu tiên hàng đầu?
A. Hệ điều hành nhúng.
B. Hệ điều hành thời gian thực.
C. Hệ điều hành phân tán.
D. Hệ điều hành máy chủ (Server Operating System).
44. Trong ngữ cảnh hệ điều hành, "System Call" (lời gọi hệ thống) là gì?
A. Một lệnh được thực thi bởi người dùng.
B. Một hàm thư viện được cung cấp bởi ngôn ngữ lập trình.
C. Một yêu cầu từ chương trình người dùng đến kernel để thực hiện các tác vụ đặc quyền.
D. Một thông báo lỗi hệ thống.
45. Giả sử bạn có một hệ thống đa lõi. Việc sử dụng luồng (threads) thay vì tiến trình (processes) có thể mang lại lợi ích gì về hiệu suất trong ứng dụng đa nhiệm?
A. Giảm mức sử dụng bộ nhớ tổng thể do các luồng chia sẻ không gian địa chỉ.
B. Tăng cường tính bảo mật của hệ thống.
C. Đơn giản hóa việc quản lý tài nguyên hệ thống.
D. Giảm độ phức tạp của việc lập trình đa luồng.
46. Chức năng chính của hệ điều hành là gì?
A. Cung cấp giao diện người dùng để truy cập Internet.
B. Quản lý và điều phối tài nguyên phần cứng và phần mềm của máy tính.
C. Chạy các ứng dụng văn phòng như Microsoft Word và Excel.
D. Bảo vệ máy tính khỏi virus và phần mềm độc hại.
47. Trong một hệ thống đa nhiệm, khi một tiến trình đang chờ đợi tài nguyên (ví dụ: hoàn thành thao tác I/O), hệ điều hành sẽ làm gì để tối ưu hiệu suất?
A. Hệ điều hành sẽ hủy bỏ tiến trình đang chờ để giải phóng tài nguyên.
B. Hệ điều hành sẽ chuyển CPU sang tiến trình khác đang ở trạng thái sẵn sàng.
C. Hệ điều hành sẽ tăng độ ưu tiên của tiến trình đang chờ để nó nhanh chóng được cấp tài nguyên.
D. Hệ điều hành sẽ yêu cầu người dùng can thiệp để giải quyết tình trạng chờ đợi.
48. Khi bạn mở một tập tin văn bản trên máy tính, thành phần nào của hệ điều hành chịu trách nhiệm chính trong việc tìm kiếm, truy cập và quản lý dữ liệu của tập tin đó trên ổ cứng?
A. Bộ lập lịch tiến trình (Process scheduler).
B. Bộ quản lý bộ nhớ (Memory manager).
C. Hệ thống tập tin (File system).
D. Nhân hệ điều hành (Kernel).
49. Điểm khác biệt chính giữa lập lịch ưu tiên (Priority scheduling) và lập lịch vòng tròn (Round Robin scheduling) là gì?
A. Lập lịch ưu tiên chỉ dành cho hệ thống đơn nhiệm, còn lập lịch vòng tròn dành cho hệ thống đa nhiệm.
B. Lập lịch ưu tiên gán CPU cho tiến trình dựa trên mức độ ưu tiên, còn lập lịch vòng tròn chia sẻ CPU đều cho các tiến trình theo thời gian.
C. Lập lịch ưu tiên đảm bảo công bằng hơn lập lịch vòng tròn.
D. Lập lịch vòng tròn có chi phí cài đặt thấp hơn lập lịch ưu tiên.
50. Trong ngữ cảnh quản lý bộ nhớ, "phân trang" (paging) là kỹ thuật giúp giải quyết vấn đề gì?
A. Tăng tốc độ truy cập bộ nhớ cache.
B. Cho phép tiến trình có kích thước lớn hơn bộ nhớ vật lý.
C. Ngăn chặn tình trạng deadlock trong hệ thống.
D. Giảm thiểu tình trạng phân mảnh ngoại vi (external fragmentation) trên ổ cứng.