1. Chức năng chính của hệ điều hành là gì?
A. Cung cấp các ứng dụng văn phòng như Word, Excel.
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. Tăng tốc độ xử lý của CPU.
D. Bảo vệ máy tính khỏi virus và phần mềm độc hại.
2. Tiến trình (Process) và luồng (Thread) khác nhau cơ bản ở điểm nào?
A. Tiến trình là đơn vị thực thi nhỏ hơn luồng.
B. Luồng chia sẻ không gian bộ nhớ với các luồng khác cùng tiến trình, trong khi tiến trình có không gian bộ nhớ riêng.
C. Tiến trình chỉ có thể thực hiện tuần tự, còn luồng có thể thực hiện song song.
D. Luồng là khái niệm trừu tượng, tiến trình là khái niệm vật lý.
3. Trong quản lý bộ nhớ, "phân trang" (Paging) là kỹ thuật nhằm mục đích chính nào?
A. Tăng tốc độ truy cập bộ nhớ cache.
B. Cho phép tiến trình lớn hơn dung lượng bộ nhớ vật lý được thực thi.
C. Giảm thiểu tình trạng phân mảnh bộ nhớ ngoài.
D. Đơn giản hóa việc quản lý bộ nhớ cache.
4. Thuật toán lập lịch "Round Robin" hoạt động dựa trên nguyên tắc nào?
A. Ưu tiên tiến trình có thời gian thực thi ngắn nhất.
B. Gán CPU cho mỗi tiến trình trong một khoảng thời gian cố định (quantum) theo vòng tròn.
C. Ưu tiên tiến trình có độ ưu tiên cao hơn.
D. Thực thi tiến trình đến khi hoàn thành rồi mới chuyển sang tiến trình khác.
5. Tình trạng "deadlock" (bế tắc) xảy ra khi nào?
A. Khi hệ thống gặp lỗi phần cứng.
B. Khi hai hoặc nhiều tiến trình cùng chờ đợi lẫn nhau để giải phóng tài nguyên mà không tiến trình nào chịu giải phóng.
C. Khi bộ nhớ chính bị đầy.
D. Khi có quá nhiều tiến trình đang chạy cùng lúc.
6. Hệ thống tập tin (File System) có vai trò gì trong hệ điều hành?
A. Quản lý kết nối mạng.
B. Cung cấp giao diện người dùng đồ họa.
C. Tổ chức, lưu trữ và quản lý dữ liệu trên bộ nhớ thứ cấp (ổ cứng).
D. Quản lý quá trình khởi động hệ thống.
7. System call (lời gọi hệ thống) được sử dụng để làm gì?
A. Tăng tốc độ xử lý của ứng dụng.
B. Cho phép ứng dụng người dùng truy cập các dịch vụ của kernel (nhân hệ điều hành).
C. Giao tiếp giữa các tiến trình với nhau.
D. Quản lý bộ nhớ ảo.
8. Trong ngữ cảnh hệ điều hành, "kernel" (nhân) là gì?
A. Một loại virus máy tính.
B. Phần mềm quản lý cơ sở dữ liệu.
C. 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à cung cấp các dịch vụ cơ bản.
D. Giao diện người dùng đồ họa của hệ điều hành.
9. Ứng dụng 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 OS)?
A. Soạn thảo văn bản bằng Microsoft Word.
B. Điều khiển hệ thống phanh ABS trên ô tô.
C. Xem phim trực tuyến trên Netflix.
D. Chơi game đồ họa 3D.
10. Khi máy tính khởi động (booting), hệ điều hành được nạp vào bộ nhớ chính (RAM) từ đâu?
A. Từ bộ nhớ cache của CPU.
B. Từ ổ cứng (hoặc các thiết bị lưu trữ khác).
C. Từ Internet.
D. Từ ROM (Read-Only Memory).
11. Cơ chế bảo mật nào của hệ điều hành giúp kiểm soát quyền truy cập của người dùng và ứng dụng vào tài nguyên hệ thống?
A. Mã hóa dữ liệu.
B. Kiểm soát truy cập (Access Control).
C. Tường lửa (Firewall).
D. Chống virus (Antivirus).
12. Trong các loại hệ điều hành sau, loại nào thường được sử dụng trong các thiết bị di động như điện thoại thông minh và máy tính bả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 nhúng (Embedded OS).
D. Hệ điều hành đa người dùng (Multi-user OS).
13. Ưu điểm chính của việc sử dụng bộ nhớ ảo (Virtual Memory) là gì?
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 RAM vật lý.
C. Giảm mức tiêu thụ điện năng của hệ thống.
D. Đơn giản hóa việc quản lý bộ nhớ cache.
14. Giao diện dòng lệnh (Command Line Interface - CLI) khác biệt so với giao diện đồ họa (Graphical User Interface - GUI) như thế nào?
A. CLI dễ sử dụng hơn GUI đối với người dùng mới.
B. CLI sử dụng lệnh văn bản để tương tác với hệ thống, trong khi GUI sử dụng biểu tượng và cửa sổ.
C. GUI hiệu quả hơn CLI trong việc tự động hóa tác vụ.
D. CLI chỉ có thể sử dụng trên hệ điều hành Windows, còn GUI chỉ có trên Linux.
15. Trong quản lý tiến trình, "ngữ cảnh tiến trình" (Process Context) bao gồm những thông tin gì?
A. Chỉ bao gồm mã chương trình của tiến trình.
B. Bao gồm trạng thái CPU, giá trị các thanh ghi, bộ đếm chương trình, thông tin bộ nhớ và các thông tin khác cần thiết để khôi phục lại tiến trình.
C. Chỉ bao gồm thông tin về tài nguyên mà tiến trình đang sử dụng.
D. Chỉ bao gồm độ ưu tiên của tiến trình.
16. Đâu là định nghĩa chính xác nhất về Hệ điều hành?
A. Một chương trình ứng dụng giúp người dùng soạn thảo văn bản.
B. Một phần mềm trung gian giữa người dùng và phần cứng máy tính, quản lý và điều phối tài nguyên.
C. Một loại phần cứng chuyên dụng để tăng tốc độ xử lý của máy tính.
D. Một ngôn ngữ lập trình dùng để phát triển phần mềm hệ thống.
17. Chức năng chính của bộ nhớ ảo (Virtual Memory) trong hệ điều hành là gì?
A. Tăng tốc độ truy cập dữ liệu từ ổ cứng.
B. Cho phép chạy các chương trình lớn hơn dung lượng bộ nhớ vật lý (RAM).
C. Bảo vệ dữ liệu khỏi bị mất khi mất điện.
D. Giảm thiểu tình trạng phân mảnh bộ nhớ.
18. Tiến trình (Process) và Luồng (Thread) khác nhau cơ bản ở điểm nào?
A. Tiến trình là đơn vị thực thi nhỏ hơn luồng.
B. Tiến trình chia sẻ không gian bộ nhớ, luồng thì không.
C. Tiến trình là đơn vị sở hữu tài nguyên hệ thống, luồng là đơn vị thực thi trong tiến trình và chia sẻ tài nguyên.
D. Tiến trình chỉ chạy trên hệ đơn nhân, luồng chạy trên đa nhân.
19. Khi một chương trình người dùng muốn truy cập vào phần cứng (ví dụ: đọc dữ liệu từ ổ cứng), nó cần phải sử dụng cơ chế nào của hệ điều hành?
A. Hàm thư viện chuẩn (Standard Library Function).
B. Lời gọi hệ thống (System Call).
C. Biến môi trường (Environment Variable).
D. Thủ tục con (Subroutine).
20. Thuật toán lập lịch CPU "First-Come, First-Served" (FCFS) có nhược điểm chính là gì?
A. Ưu tiên các tiến trình ngắn, gây đói tài nguyên cho tiến trình dài.
B. Có thể dẫn đến hiệu ứng "convoy effect", làm giảm hiệu suất hệ thống.
C. Khó cài đặt và triển khai.
D. Không công bằng với tất cả các tiến trình.
21. 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ớ cache.
B. Giảm thiểu phân mảnh ngoại vi.
C. Cung cấp cơ chế bảo mật bộ nhớ.
D. Quản lý bộ nhớ thứ cấp hiệu quả hơn.
22. Hệ thống tập tin (File System) có vai trò quan trọng nhất trong việc gì?
A. Quản lý và tổ chức dữ liệu trên bộ nhớ thứ cấp (ví dụ: ổ cứng).
B. Tối ưu hóa tốc độ xử lý của CPU.
C. Cung cấp giao diện đồ họa cho người dùng.
D. Quản lý kết nối mạng.
23. Cơ chế khóa (Lock) trong hệ điều hành được sử dụng để giải quyết vấn đề gì trong lập trình đa luồng?
A. Tăng tốc độ thực thi chương trình.
B. Ngăn chặn tình trạng tranh chấp tài nguyên và điều kiện chủng tộc (race condition).
C. Giảm thiểu sử dụng bộ nhớ.
D. Đơn giản hóa việc gỡ lỗi chương trình.
24. Trong ngữ cảnh bảo mật hệ điều hành, "Nguyên tắc đặc quyền tối thiểu" (Principle of Least Privilege) nghĩa là gì?
A. Người dùng nên được cấp quyền quản trị hệ thống để dễ dàng sử dụng.
B. Mỗi tiến trình hoặc người dùng chỉ nên được cấp quyền truy cập tối thiểu cần thiết để thực hiện công việc của mình.
C. Hệ thống nên ưu tiên cấp quyền cho các tiến trình quan trọng.
D. Quyền truy cập nên được cấp dựa trên thời gian sử dụng hệ thống.
25. Ví dụ nào sau đây thể hiện rõ nhất vai trò của hệ điều hành trong việc "trừu tượng hóa phần cứng"?
A. Người dùng có thể sử dụng chuột và bàn phím để tương tác với máy tính bất kể nhà sản xuất phần cứng.
B. Máy tính có thể kết nối internet thông qua Wi-Fi hoặc dây mạng.
C. Chương trình diệt virus có thể phát hiện và loại bỏ virus.
D. Người dùng có thể cài đặt nhiều phần mềm khác nhau trên máy tính.
26. Điều gì sẽ xảy ra nếu một tiến trình rơi vào trạng thái "đợi" (waiting/blocked)?
A. Tiến trình sẽ được ưu tiên cấp CPU để tiếp tục thực thi.
B. Tiến trình sẽ tạm dừng thực thi và nhường CPU cho tiến trình khác cho đến khi sự kiện đợi xảy ra.
C. Tiến trình sẽ bị hệ điều hành hủy bỏ để giải phóng tài nguyên.
D. Tiến trình sẽ chuyển sang trạng thái "sẵn sàng" (ready) và tiếp tục cạnh tranh CPU.
27. Trong các hệ điều hành hiện đại, cơ chế nào thường được sử dụng để quản lý và bảo vệ bộ nhớ khỏi việc truy cập trái phép giữa các tiến trình?
A. Bộ nhớ cache (Cache memory).
B. Định vị động (Dynamic relocation).
C. Đơn vị quản lý bộ nhớ (Memory Management Unit - MMU).
D. Bộ nhớ chỉ đọc (Read-Only Memory - ROM).
28. Hệ điều hành thời gian thực (Real-time Operating System - RTOS) được sử dụng chủ yếu trong các ứng dụng nào?
A. Soạn thảo văn bản và duyệt web.
B. Điều khiển hệ thống nhúng, robot công nghiệp, hệ thống điều khiển máy bay.
C. Chơi game đồ họa cao và xem phim.
D. Quản lý cơ sở dữ liệu lớn.
29. So sánh thuật toán lập lịch "Round Robin" với "First-Come, First-Served" (FCFS), điểm khác biệt chính là gì?
A. Round Robin ưu tiên tiến trình ngắn hơn FCFS.
B. Round Robin sử dụng lượng tử thời gian (time quantum) để chia sẻ CPU công bằng hơn.
C. FCFS có độ phức tạp cài đặt cao hơn Round Robin.
D. FCFS phù hợp với hệ thống tương tác hơn Round Robin.
30. Trong hệ điều hành phân tán (Distributed Operating System), các máy tính giao tiếp và phối hợp với nhau thông qua cơ chế nào?
A. Bộ nhớ dùng chung (Shared memory).
B. Hàng đợi (Queue).
C. Mạng máy tính (Computer network) và giao thức truyền thông.
D. Bus hệ thống (System bus).
31. Hệ điều hành (Operating System - OS) có vai trò chính nào trong hệ thống máy tính?
A. Cung cấp giao diện người dùng để tương tác với phần cứng.
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. Thực hiện các phép tính toán phức tạp.
D. Bảo vệ máy tính khỏi virus và phần mềm độc hại.
32. Tiến trình (Process) và luồng (Thread) khác nhau cơ bản ở điểm nào?
A. Tiến trình là đơn vị thực thi nhỏ hơn luồng.
B. Tiến trình chia sẻ không gian bộ nhớ, luồng thì không.
C. Tiến trình là đơn vị cấp phát tài nguyên, luồng là đơn vị thực thi trong tiến trình.
D. Luồng có thể chạy độc lập mà không cần tiến trình.
33. Thuật toán lập lịch CPU nào ưu tiên tiến trình có thời gian hoàn thành ngắn nhất tiếp theo?
A. First-Come, First-Served (FCFS)
B. Shortest Job Next (SJN)
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 đề gì?
A. Tăng tốc độ truy cập bộ nhớ.
B. Giảm thiểu phân mảnh bộ nhớ ngoài.
C. Cho phép tiến trình lớn hơn kích thước bộ nhớ vật lý.
D. Đảm bảo tính toàn vẹn dữ liệu trong bộ nhớ.
35. Cơ chế bộ nhớ ảo (Virtual Memory) hoạt động dựa trên nguyên tắc nào?
A. Tăng dung lượng bộ nhớ vật lý.
B. Sử dụng bộ nhớ cache để tăng tốc độ truy cập.
C. Sử dụng không gian đĩa cứng làm bộ nhớ mở rộng.
D. Chia sẻ bộ nhớ giữa các tiến trình.
36. Ví dụ nào sau đây thể hiện rõ nhất ứng dụng của hệ điều hành thời gian thực (Real-time OS)?
A. Chơi game đồ họa cao 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 phim trực tuyến.
D. Soạn thảo văn bản và bảng tính.
37. Điểm khác biệt chính giữa hệ thống tệp tin (File System) FAT32 và NTFS là gì?
A. FAT32 hỗ trợ mã hóa dữ liệu, NTFS thì không.
B. NTFS có khả năng phục hồi lỗi tốt hơn FAT32.
C. FAT32 quản lý quyền truy cập tốt hơn NTFS.
D. NTFS tương thích với nhiều hệ điều hành hơn FAT32.
38. Nguyên tắc "Độc quyền tương hỗ" (Mutual Exclusion) trong đồng bộ hóa tiến trình nhằm mục đích gì?
A. Tăng tốc độ thực thi các tiến trình song song.
B. Đảm bảo chỉ có một tiến trình được truy cập vào tài nguyên dùng chung tại một thời điểm.
C. Ngăn chặn tình trạng deadlock.
D. Giảm thiểu thời gian chờ đợi của tiến trình.
39. Tình trạng "Đoản mạch" (Deadlock) 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 cạnh tranh tài nguyên và không thể giải phóng tài nguyên đang giữ.
C. Khi bộ nhớ vật lý không đủ cho tất cả các tiến trình.
D. Khi hệ thống gặp lỗi phần cứng.
40. Câu lệnh "System call" được sử dụng để làm gì?
A. Gọi một hàm trong thư viện chuẩn.
B. Thực hiện các phép tính số học.
C. Yêu cầu dịch vụ từ hệ điều hành.
D. Truy cập trực tiếp vào phần cứng.
41. Trong mô hình client-server, hệ điều hành đóng vai trò gì ở phía server?
A. Hiển thị giao diện người dùng cho người dùng cuối.
B. Quản lý tài nguyên và cung cấp dịch vụ theo yêu cầu của client.
C. Thực hiện các phép tính phức tạp cho client.
D. Kết nối mạng cho client.
42. Ưu điểm chính của kiến trúc Microkernel so với Monolithic kernel là gì?
A. Hiệu suất cao hơn.
B. Dễ dàng mở rộng và bảo trì hơn.
C. Tiêu thụ ít tài nguyên hơn.
D. Tương thích với nhiều loại phần cứng hơn.
43. Kỹ thuật "Spooling" thường được sử dụng trong hệ thống nào?
A. Hệ thống quản lý cơ sở dữ liệu.
B. Hệ thống in ấn.
C. Hệ thống mạng máy tính.
D. Hệ thống ảo hóa.
44. Phương pháp cấp phát bộ nhớ "Best-fit" hoạt động như thế nào?
A. Chọn vùng nhớ trống đầu tiên đủ lớn.
B. Chọn vùng nhớ trống lớn nhất.
C. Chọn vùng nhớ trống nhỏ nhất đủ lớn.
D. Chia đều bộ nhớ cho các tiến trình.
45. Trong ngữ cảnh bảo mật hệ điều hành, "Authentication" (Xác thực) có nghĩa là gì?
A. Cấp quyền truy cập tài nguyên.
B. Xác minh danh tính người dùng hoặc tiến trình.
C. Mã hóa dữ liệu để bảo vệ.
D. Phát hiện và loại bỏ phần mềm độc hại.
46. Chức năng cốt lõi của hệ điều hành là gì?
A. Cung cấp giao diện người dùng đồ họa đẹp mắt.
B. Quản lý và phân phối tài nguyên hệ thống một cách hiệu quả.
C. Phát triển các ứng dụng phần mềm phức tạp.
D. Kết nối và quản lý mạng máy tính toàn cầu.
47. Khi một tiến trình đang ở trạng thái "Chờ" (Waiting) để đợi một sự kiện hoàn thành (ví dụ: hoàn thành thao tác I/O), điều gì sẽ xảy ra tiếp theo?
A. Tiến trình sẽ bị hủy bỏ và giải phóng tài nguyên.
B. Tiến trình sẽ chuyển sang trạng thái "Sẵn sàng" (Ready) khi sự kiện hoàn thành.
C. Tiến trình sẽ chuyển trực tiếp sang trạng thái "Thực thi" (Running).
D. Tiến trình sẽ bị đưa vào hàng đợi ưu tiên cao hơn.
48. Trong thực tế, việc sử dụng bộ nhớ ảo (Virtual Memory) mang lại lợi ích chính nào cho người dùng và hệ thống?
A. Tăng tốc độ khởi động máy tính.
B. Cho phép chạy các chương trình lớn hơn dung lượng bộ nhớ RAM vật lý.
C. Giảm thiểu nguy cơ mất dữ liệu khi hệ thống gặp sự cố.
D. Đơn giản hóa việc quản lý bộ nhớ cho lập trình viên.
49. Điểm khác biệt chính giữa hệ thống tệp FAT32 và NTFS về mặt bảo mật là gì?
A. NTFS hỗ trợ mã hóa dữ liệu, FAT32 thì không.
B. FAT32 hỗ trợ phân quyền truy cập tệp tin và thư mục, NTFS thì không.
C. NTFS có khả năng tự động sửa lỗi tệp tin tốt hơn FAT32.
D. Cả hai hệ thống tệp đều có cơ chế bảo mật tương đương nhau.
50. Thành phần nào của hệ điều hành đóng vai trò là giao diện trung gian giữa phần cứng máy tính và phần mềm ứng dụng?
A. Shell (Vỏ lệnh).
B. Kernel (Nhân hệ điều hành).
C. GUI (Giao diện người dùng đồ họa).
D. File System (Hệ thống tệp).