1. Nguyên lý cơ bản nào sau đây KHÔNG phải là mục tiêu chính của hệ điều hành?
A. Quản lý tài nguyên hệ thống một cách hiệu quả
B. Cung cấp giao diện người dùng thân thiện và dễ sử dụng
C. Tối ưu hóa hiệu năng của phần cứng máy tính
D. Phát triển và kiểm thử phần mềm ứng dụng
2. Thành phần nào của hệ điều hành chịu trách nhiệm trực tiếp quản lý và cấp phát tài nguyên phần cứng cho các chương trình ứng dụng?
A. Shell
B. Kernel
C. System call
D. Trình biên dịch
3. Khi một tiến trình (process) đang thực thi và cần thực hiện một thao tác nhập/xuất dữ liệu (I/O), hệ điều hành sẽ thực hiện hành động nào sau đây?
A. Tiếp tục thực thi tiến trình cho đến khi thao tác I/O hoàn thành
B. Chuyển tiến trình sang trạng thái chờ và lên lịch cho tiến trình khác thực thi
C. Hủy bỏ tiến trình và báo lỗi cho người dùng
D. Tạo một tiến trình con để thực hiện thao tác I/O
4. Trong quản lý bộ nhớ, kỹ thuật "phân trang" (paging) giúp giải quyết vấn đề nào sau đây?
A. Giảm thiểu tình trạng phân mảnh bộ nhớ ngoài
B. Tăng tốc độ truy cập bộ nhớ
C. Cho phép tiến trình có kích thước lớn hơn bộ nhớ vật lý
D. Đơn giản hóa việc lập trình ứng dụng
5. 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 một số tiến trình?
A. First-Come, First-Served (FCFS)
B. Shortest Job First (SJF)
C. Round Robin (RR)
D. Priority Scheduling
6. Trong ngữ cảnh hệ điều hành, "ngõ cụt" (deadlock) xảy ra khi nào?
A. Khi một tiến trình bị lỗi và ngừng hoạt động
B. Khi hai hay nhiều tiến trình chờ đợi lẫn nhau để giải phóng tài nguyên mà chúng đang nắm giữ
C. Khi bộ nhớ vật lý không đủ để cấp phát cho một tiến trình
D. Khi một tiến trình chiếm dụng CPU quá lâu, gây chậm trễ cho các tiến trình khác
7. 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 đang chạy
C. Tổ chức và quản lý dữ liệu trên bộ nhớ thứ cấp (ổ cứng)
D. Điều khiển các thiết bị ngoại vi
8. Loại hệ điều hành nào thường được sử dụng trong các hệ thống nhúng (embedded systems) như điện thoại thông minh, máy tính bảng, hoặc thiết bị IoT?
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 phân tán (Distributed operating system)
D. Hệ điều hành đa người dùng (Multi-user operating system)
9. Điểm khác biệt chính giữa đa chương trình (multiprogramming) và đa xử lý (multiprocessing) là gì?
A. Đa chương trình sử dụng nhiều CPU, đa xử lý sử dụng một CPU
B. Đa chương trình thực hiện các chương trình đồng thời, đa xử lý thực hiện các chương trình tuần tự
C. Đa chương trình chia sẻ CPU giữa các tiến trình, đa xử lý sử dụng nhiều CPU để thực hiện các tiến trình song song
D. Đa chương trình quản lý nhiều người dùng, đa xử lý quản lý một người dùng
10. Trong bảo mật hệ thống, cơ chế "kiểm soát truy cập" (access control) được sử dụng để làm gì?
A. Ngăn chặn virus và phần mềm độc hại
B. Xác thực người dùng trước khi cho phép truy cập hệ thống
C. Hạn chế quyền truy cập của người dùng và tiến trình vào các tài nguyên hệ thống
D. Mã hóa dữ liệu để bảo vệ thông tin
11. Lệnh gọi hệ thống (system call) đóng vai trò là giao diện giữa lớp nào và lớp nào trong kiến trúc hệ điều hành phân lớp?
A. Giữa phần cứng và kernel
B. Giữa kernel và shell
C. Giữa chương trình ứng dụng và kernel
D. Giữa người dùng và chương trình ứng dụng
12. Trong quản lý bộ nhớ ảo, hiện tượng "thrashing" xảy ra khi nào?
A. Khi bộ nhớ vật lý bị đầy và hệ thống không thể cấp phát thêm trang
B. Khi hệ thống liên tục thực hiện việc hoán đổi trang (swapping) giữa bộ nhớ chính và bộ nhớ phụ một cách quá mức
C. Khi một tiến trình chiếm dụng quá nhiều bộ nhớ và gây ảnh hưởng đến các tiến trình khác
D. Khi hệ thống gặp lỗi phần cứng liên quan đến bộ nhớ
13. Phương pháp nào sau đây thường được sử dụng để giải quyết vấn đề "ngõ cụt" (deadlock) bằng cách ngăn chặn một trong các điều kiện cần để deadlock xảy ra?
A. Thuật toán phát hiện và phục hồi deadlock
B. Thuật toán tránh deadlock (deadlock avoidance)
C. Thuật toán ngăn chặn deadlock (deadlock prevention)
D. Thuật toán lập lịch ưu tiên
14. Ứng dụng của "bộ nhớ đệm" (cache memory) trong hệ điều hành là gì?
A. Tăng dung lượng bộ nhớ chính
B. Giảm mức tiêu thụ điện năng của hệ thống
C. Tăng tốc độ truy cập dữ liệu bằng cách lưu trữ dữ liệu thường xuyên sử dụng ở bộ nhớ tốc độ cao
D. Bảo vệ dữ liệu khỏi mất mát khi có sự cố điện
15. So sánh hệ điều hành "nguyên khối" (monolithic kernel) và "vi nhân" (microkernel), ưu điểm chính của kiến trúc vi nhân là gì?
A. Hiệu suất cao hơn do tất cả các dịch vụ chạy trong không gian kernel
B. Đơn giản hóa việc phát triển và bảo trì kernel
C. Tăng cường tính ổn định và bảo mật do các dịch vụ chạy trong không gian người dùng
D. Giảm kích thước kernel và bộ nhớ sử dụng
16. Hệ điều hành (Operating System - OS) đóng vai trò chính nào trong hệ thống máy tính?
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. Kết nối máy tính với mạng Internet.
D. Tăng tốc độ xử lý của CPU.
17. Tiến trình (Process) ở trạng thái "Chờ" (Waiting) khi nào?
A. Khi tiến trình đang thực thi các lệnh của chương trình.
B. Khi tiến trình đã hoàn thành việc thực thi.
C. Khi tiến trình đang chờ một sự kiện nào đó xảy ra, ví dụ như hoàn thành thao tác I/O.
D. Khi tiến trình được cấp phát CPU để thực thi.
18. Thuật toán lập lịch CPU "Round Robin" (RR) 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. Ưu tiên tiến trình đến trước được phục vụ trước.
C. Chia sẻ thời gian CPU đều cho các tiến trình theo vòng tròn.
D. Ưu tiên tiến trình có độ ưu tiên cao nhất.
19. Bộ nhớ ảo (Virtual Memory) được sử dụng để giải quyết vấn đề gì?
A. Tăng tốc độ truy cập bộ nhớ chính (RAM).
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) khả dụng.
C. Bảo vệ dữ liệu trong bộ nhớ khỏi virus.
D. Tiết kiệm năng lượng tiêu thụ của bộ nhớ.
20. Trong quản lý bộ nhớ, "phân trang" (paging) là kỹ thuật để:
A. Chia bộ nhớ thành các đoạn có kích thước thay đổi.
B. Chia bộ nhớ thành các trang có kích thước cố định.
C. Tối ưu hóa việc sử dụng bộ nhớ cache.
D. Bảo vệ bộ nhớ khỏi truy cập trái phép.
21. Hệ thống tập tin (File System) có vai trò quan trọng nhất là gì?
A. Tăng tốc độ khởi động máy tính.
B. Quản lý và tổ chức dữ liệu trên các thiết bị lưu trữ một cách có cấu trúc.
C. Cung cấp giao diện đồ họa cho người dùng.
D. Kết nối các thiết bị ngoại vi với máy tính.
22. Nguyên tắc "định vị cục bộ" (locality of reference) trong bộ nhớ cache giúp cải thiện hiệu suất như thế nào?
A. Giảm dung lượng bộ nhớ cache cần thiết.
B. Tăng tốc độ truy cập dữ liệu bằng cách dự đoán dữ liệu nào sẽ được sử dụng tiếp theo.
C. Giảm thiểu lỗi trang (page fault) trong bộ nhớ ảo.
D. Bảo vệ dữ liệu trong bộ nhớ cache khỏi bị mất khi mất điện.
23. Trong ngữ cảnh hệ điều hành, "ngõ cụt" (deadlock) xảy ra khi nào?
A. Khi một tiến trình kết thúc đột ngột do lỗi.
B. Khi nhiều tiến trình tranh chấp tài nguyên và mỗi tiến trình giữ một tài nguyên mà nó cần, đồng thời chờ đợi tài nguyên mà tiến trình khác đang giữ.
C. Khi hệ thống bị quá tải do có quá nhiều tiến trình chạy đồng thời.
D. Khi bộ nhớ không đủ để cấp phát cho một tiến trình.
24. 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. Máy tính cá nhân để bàn.
B. Điện thoại thông minh.
C. Hệ thống điều khiển công nghiệp, thiết bị y tế, robot.
D. Máy chủ web và cơ sở dữ liệu.
25. Lệnh gọi hệ thống (System call) đóng vai trò là gì?
A. Lệnh để người dùng tương tác trực tiếp với phần cứng.
B. Giao diện lập trình ứng dụng (API) cho phép ứng dụng người dùng yêu cầu dịch vụ từ kernel của hệ điều hành.
C. Lệnh để quản lý các tiến trình đang chạy.
D. Lệnh để cài đặt và gỡ bỏ phần mềm.
26. Sự khác biệt chính giữa hệ điều hành 32-bit và 64-bit là gì?
A. Hệ điều hành 64-bit có giao diện người dùng đẹp hơn.
B. Hệ điều hành 64-bit có thể quản lý dung lượng bộ nhớ RAM lớn hơn 4GB.
C. Hệ điều hành 64-bit chạy nhanh hơn hệ điều hành 32-bit trong mọi tác vụ.
D. Hệ điều hành 64-bit an toàn hơn hệ điều hành 32-bit.
27. Trong bảo mật hệ thống, cơ chế "kiểm soát truy cập" (access control) nhằm mục đích gì?
A. Ngăn chặn virus xâm nhập vào hệ thống.
B. Xác thực người dùng trước khi cho phép truy cập hệ thống.
C. Hạn chế quyền truy cập của người dùng và tiến trình vào các tài nguyên hệ thống dựa trên chính sách bảo mật.
D. Mã hóa dữ liệu để bảo vệ thông tin.
28. Ví dụ nào sau đây thể hiện rõ nhất khái niệm "đa nhiệm" (multitasking) trong hệ điều hành?
A. Tắt máy tính khi không sử dụng.
B. Mở đồng thời nhiều tab trên trình duyệt web và nghe nhạc trên phần mềm nghe nhạc.
C. Chỉ sử dụng một ứng dụng tại một thời điểm.
D. Cập nhật hệ điều hành lên phiên bản mới nhất.
29. Điều gì sẽ xảy ra khi một tiến trình tạo ra một tiến trình con (child process)?
A. Tiến trình cha sẽ bị dừng lại cho đến khi tiến trình con hoàn thành.
B. Tiến trình con sẽ thay thế hoàn toàn tiến trình cha.
C. Cả tiến trình cha và tiến trình con có thể chạy song song hoặc tuần tự, tùy thuộc vào thiết kế của chương trình và hệ điều hành.
D. Tiến trình con sẽ chia sẻ toàn bộ bộ nhớ với tiến trình cha.
30. Trong quản lý thiết bị I/O, "driver thiết bị" (device driver) có vai trò gì?
A. Tăng tốc độ truyền dữ liệu giữa CPU và bộ nhớ.
B. Cung cấp giao diện chuẩn để hệ điều hành giao tiếp với các thiết bị phần cứng khác nhau.
C. Quản lý bộ nhớ cache cho các thiết bị I/O.
D. Bảo vệ thiết bị I/O khỏi hư hỏng do điện áp cao.
31. Chức năng chính của hệ điều hành là gì?
A. Quản lý phần cứng máy tính và tài nguyên phần mềm, cung cấp giao diện cho người dùng.
B. Chạy các ứng dụng văn phòng và giải trí.
C. Kết nối máy tính với mạng Internet.
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) trong hệ điều hành được hiểu là gì?
A. Một chương trình đang được lưu trữ trên ổ cứng.
B. Một chương trình đang được thực thi cùng với các tài nguyên được cấp phát.
C. Một đoạn mã lệnh được viết bằng ngôn ngữ lập trình.
D. Một thiết bị phần cứng của máy tính.
33. Trong quản lý bộ nhớ, kỹ thuật phân trang (Paging) được sử dụng để làm gì?
A. Tăng tốc độ truy cập bộ nhớ cache.
B. Chia bộ nhớ vật lý thành các khối có kích thước cố định để cấp phát cho tiến trình.
C. Tổ chức dữ liệu trên ổ cứng thành các trang.
D. Nén dữ liệu trong bộ nhớ để tiết kiệm không gian.
34. Điều gì xảy ra khi một tiến trình chuyển từ trạng thái "Đang chạy" (Running) sang trạng thái "Chờ" (Waiting)?
A. Tiến trình hoàn thành việc thực thi và kết thúc.
B. Tiến trình bị lỗi và hệ điều hành phải hủy bỏ nó.
C. Tiến trình tạm dừng thực thi để chờ một sự kiện nào đó (ví dụ: hoàn thành I/O).
D. Tiến trình được chuyển sang bộ nhớ thứ cấp (ổ cứng).
35. Thuật toán lập lịch CPU "First-Come, First-Served" (FCFS) hoạt động như thế nào?
A. Tiến trình nào có thời gian thực thi ngắn nhất sẽ được ưu tiên.
B. Tiến trình nào đến trước hàng đợi sẽ được cấp phát CPU trước.
C. Tiến trình nào có độ ưu tiên cao hơn sẽ được cấp phát CPU trước.
D. CPU được chia sẻ đều cho tất cả các tiến trình.
36. Đoạn mã quan trọng (Critical Section) trong ngữ cảnh đồng bộ hóa tiến trình là gì?
A. Đoạn mã thực hiện các phép tính phức tạp.
B. Đoạn mã truy cập và thao tác trên tài nguyên dùng chung, cần được bảo vệ để tránh xung đột.
C. Đoạn mã khởi tạo tiến trình.
D. Đoạn mã xử lý ngắt phần cứng.
37. Tệp tin (File) trong hệ điều hành có vai trò gì?
A. Điều khiển hoạt động của phần cứng.
B. Lưu trữ dữ liệu và chương trình một cách có tổ chức và lâu dài trên bộ nhớ thứ cấp.
C. Quản lý bộ nhớ chính (RAM).
D. Kết nối các thiết bị ngoại vi với máy tính.
38. Nguyên nhân chính gây ra tình trạng "đoản mạch" (Deadlock) trong hệ điều hành là gì?
A. Lỗi phần cứng bộ nhớ.
B. Các tiến trình tranh chấp tài nguyên và chờ đợi lẫn nhau một cách vòng tròn.
C. Thiếu bộ nhớ RAM để chạy các tiến trình.
D. Virus hoặc phần mềm độc hại tấn công hệ thống.
39. Bộ nhớ ảo (Virtual Memory) được sử dụng để giải quyết vấn đề gì?
A. Tăng tốc độ xử lý của CPU.
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 trong bộ nhớ khỏi bị mất khi mất điện.
D. Giảm tiêu thụ điện năng của máy tính.
40. Trong hệ thống tập tin phân cấp (hierarchical file system), thư mục (directory) có vai trò gì?
A. Lưu trữ dữ liệu của các tệp tin.
B. Tổ chức và phân loại các tệp tin và thư mục con, tạo cấu trúc cây.
C. Đảm bảo an toàn dữ liệu cho các tệp tin.
D. Tăng tốc độ truy cập tệp tin.
41. So sánh hệ điều hành thời gian thực (Real-time OS) với hệ điều hành đa nhiệm (Multitasking OS), điểm khác biệt chính là gì?
A. Hệ điều hành thời gian thực có giao diện đồ họa, hệ điều hành đa nhiệm thì không.
B. Hệ điều hành thời gian thực tập trung vào độ trễ phản hồi và tính đúng thời gian, hệ điều hành đa nhiệm tập trung vào hiệu suất tổng thể.
C. Hệ điều hành thời gian thực chỉ chạy trên máy tính lớn, hệ điều hành đa nhiệm chạy trên máy tính cá nhân.
D. Hệ điều hành thời gian thực miễn phí, hệ điều hành đa nhiệm thì có phí.
42. Khi một chương trình muốn sử dụng dịch vụ của hệ điều hành (ví dụ: đọc dữ liệu từ tệp tin), nó cần thực hiện thao tác gì?
A. Gọi trực tiếp các hàm của nhân hệ điều hành (Kernel).
B. Sử dụng lời gọi hệ thống (System call) để yêu cầu dịch vụ từ hệ điều hành.
C. Truy cập trực tiếp vào bộ nhớ vật lý.
D. Gửi yêu cầu qua mạng Internet.
43. Trong bối cảnh bảo mật hệ điều hành, cơ chế "kiểm soát truy cập" (Access Control) nhằm mục đích gì?
A. Ngăn chặn virus và phần mềm độc hại xâm nhập hệ thống.
B. Xác định và xác thực người dùng trước khi cho phép truy cập hệ thống.
C. Quy định quyền hạn của người dùng đối với các tài nguyên hệ thống (tệp tin, thư mục, thiết bị,...).
D. Mã hóa dữ liệu trên ổ cứng để bảo vệ thông tin.
44. Ứng dụng thực tế của hệ điều hành nhúng (Embedded OS) là gì?
A. Điều khiển máy chủ web.
B. Quản lý cơ sở dữ liệu lớn.
C. Điều khiển các thiết bị điện tử tiêu dùng như điện thoại thông minh, TV thông minh, máy giặt thông minh.
D. Phát triển phần mềm trò chơi điện tử.
45. Khi máy tính khởi động (booting), hệ điều hành được tải vào bộ nhớ chính (RAM) từ đâu?
A. Từ bộ nhớ cache của CPU.
B. Từ ổ cứng (hoặc thiết bị lưu trữ khác) nơi hệ điều hành được cài đặt.
C. Từ mạng Internet.
D. Từ ROM BIOS (Basic Input/Output System).
46. Đâu là thành phần cốt lõi của hệ điều hành, đóng vai trò trung gian giữa phần cứng và các ứng dụng, chịu trách nhiệm quản lý và phân phối tài nguyên hệ thống?
A. Trình biên dịch (Compiler)
B. Hạt nhân (Kernel)
C. Giao diện người dùng (User Interface)
D. Trình điều khiển thiết bị (Device Driver)
47. Xét tình huống có nhiều tiến trình cùng chia sẻ một tài nguyên chung (ví dụ: biến toàn cục). Cơ chế nào của hệ điều hành đảm bảo rằng chỉ có một tiến trình được phép truy cập tài nguyên đó tại một thời điểm nhất định, tránh gây ra tình trạng xung đột dữ liệu?
A. Đa chương trình (Multiprogramming)
B. Bộ nhớ ảo (Virtual Memory)
C. Loại trừ lẫn nhau (Mutual Exclusion)
D. Phân trang (Paging)
48. Trong các hệ thống nhúng như điện thoại thông minh, hệ điều hành đóng vai trò quan trọng trong việc quản lý năng lượng để kéo dài thời lượng pin. Thành phần nào của hệ điều hành chịu trách nhiệm chính trong việc điều khiển mức tiêu thụ điện năng của CPU, màn hình và các thiết bị ngoại vi khác?
A. Hệ thống tập tin (File System)
B. Quản lý bộ nhớ (Memory Management)
C. Quản lý tiến trình (Process Management)
D. Quản lý năng lượng (Power Management)
49. Điểm khác biệt chính giữa thuật toán lập lịch ưu tiên (Priority Scheduling) và thuật toán lập lịch theo vòng (Round Robin) là gì?
A. Ưu tiên xử lý tiến trình có thời gian thực thi ngắn nhất, trong khi vòng tròn chia đều thời gian CPU.
B. Ưu tiên xử lý tiến trình có độ ưu tiên cao hơn, trong khi vòng tròn cấp phát thời gian CPU theo thứ tự đến.
C. Ưu tiên sử dụng cơ chế độc quyền CPU, trong khi vòng tròn cho phép các tiến trình chia sẻ CPU.
D. Ưu tiên phù hợp với hệ thống thời gian thực, trong khi vòng tròn phù hợp với hệ thống đa nhiệm tương tác.
50. Khi một ứng dụng người dùng cần thực hiện một thao tác đặc quyền, ví dụ như đọc dữ liệu từ ổ cứng hoặc gửi dữ liệu qua mạng, ứng dụng đó phải sử dụng cơ chế nào để yêu cầu dịch vụ từ hệ điều hành?
A. Ngắt phần cứng (Hardware Interrupt)
B. Lời gọi hệ thống (System Call)
C. Thư viện liên kết động (Dynamic Link Library)
D. Biên dịch thời gian chạy (Just-in-Time Compilation)