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. Quản lý tài nguyên hệ thống hiệu quả
B. Cung cấp giao diện người dùng thân thiện
C. Tối đa hóa sự phức tạp của hệ thống
D. Đảm bảo tính ổn định và tin cậy của hệ thống
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 chia sẻ bộ nhớ, luồng thì không
B. 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ó
C. Tiến trình chỉ có thể thực hiện tuần tự, luồng có thể thực hiện song song
D. Tiến trình nhẹ hơn luồng về mặt tài nguyên
3. Trong quản lý bộ nhớ, kỹ thuật phân trang (Paging) giải quyết vấn đề nào sau đây?
A. Phân mảnh ngoài (External Fragmentation)
B. Phân mảnh trong (Internal Fragmentation)
C. Tranh chấp bộ nhớ cache
D. Đoạn mã chương trình quá lớn
4. 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 tối đa hóa thông lượng?
A. First-Come, First-Served (FCFS)
B. Round Robin (RR)
C. Shortest Job First (SJF)
D. Priority Scheduling
5. Điều gì xảy ra khi một tiến trình thực hiện lệnh gọi hệ thống (System call)?
A. Tiến trình chuyển sang trạng thái chờ đợi
B. Tiến trình được cấp quyền truy cập trực tiếp vào phần cứng
C. Quyền điều khiển được chuyển từ chế độ người dùng sang chế độ kernel
D. Tiến trình bị kết thúc ngay lập tức
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ữ tất cả tài nguyên
B. Hai hoặc nhiều tiến trình chờ đợi lẫn nhau để giải phóng tài nguyên mà tiến trình kia đang giữ
C. Hệ thống thiếu bộ nhớ chính
D. Một tiến trình cố gắng truy cập bộ nhớ không hợp lệ
7. Mục đích chính của bộ nhớ ảo (Virtual Memory) là gì?
A. Tăng tốc độ truy cập bộ nhớ
B. Mở rộng không gian địa chỉ bộ nhớ khả dụng cho tiến trình
C. Giảm tiêu thụ điện năng của hệ thống
D. Bảo vệ bộ nhớ khỏi virus
8. Trong hệ thống tập tin, inode (index node) chứa thông tin gì?
A. Dữ liệu thực tế của tập tin
B. Tên tập tin
C. Siêu dữ liệu (metadata) về tập tin như quyền truy cập, kích thước, thời gian sửa đổi
D. Đường dẫn đầy đủ đến tập tin
9. Kỹ thuật nào sau đây giúp bảo vệ hệ điều hành khỏi các truy cập trái phép vào bộ nhớ của kernel?
A. Bộ nhớ ảo (Virtual Memory)
B. Chế độ kép (Dual-mode operation)
C. Bộ nhớ cache (Cache Memory)
D. Đoạn mã bảo vệ (Protection rings)
10. Hãy chọn phát biểu ĐÚNG về hệ điều hành thời gian thực (Real-time Operating System - RTOS).
A. RTOS ưu tiên tính công bằng giữa các tiến trình
B. RTOS được thiết kế để tối đa hóa thông lượng hệ thống
C. RTOS đảm bảo thời gian phản hồi nhanh và có thể dự đoán được cho các tác vụ quan trọng
D. RTOS thường được sử dụng trong máy tính cá nhân và máy chủ
11. Trong ngữ cảnh bảo mật hệ điều hành, "principle of least privilege" (nguyên tắc đặc quyền tối thiểu) có nghĩa là gì?
A. Mỗi người dùng nên có quyền truy cập vào tất cả tài nguyên để đơn giản hóa quản lý
B. Mỗi tiến trình/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 nhiệm vụ của mình
C. Quyền truy cập nên được cấp cho càng nhiều người dùng càng tốt để tăng cường hợp tác
D. Tất cả người dùng nên có quyền quản trị hệ thống để đảm bảo hiệu quả
12. Giả sử bạn đang sử dụng một hệ điều hành đa nhiệm (multitasking OS) và mở nhiều ứng dụng cùng lúc. Cơ chế nào của hệ điều hành cho phép bạn "chuyển đổi" qua lại giữa các ứng dụng một cách mượt mà?
A. Bộ nhớ cache (Cache memory)
B. Bộ nhớ ảo (Virtual memory)
C. Lập lịch CPU (CPU scheduling)
D. Hệ thống tập tin (File system)
13. Trong quản lý bộ nhớ, "thrashing" (giật trang) là hiện tượng gì?
A. Tốc độ truy cập bộ nhớ bị chậm do bộ nhớ cache đầy
B. Hệ thống liên tục thực hiện việc trao đổi trang (swapping) giữa bộ nhớ chính và bộ nhớ ảo, dẫn đến hiệu suất hệ thống giảm sút nghiêm trọng
C. Bộ nhớ bị phân mảnh quá mức, không đủ chỗ cho tiến trình
D. Xảy ra lỗi khi truy cập bộ nhớ do địa chỉ không hợp lệ
14. Ứng dụng nào sau đây KHÔNG phải là chức năng chính của hệ điều hành trong việc quản lý thiết bị vào/ra (I/O)?
A. Cấp phát và giải phóng thiết bị I/O
B. Lập lịch các yêu cầu I/O
C. Cung cấp giao diện người dùng đồ họa (GUI)
D. Xử lý ngắt (interrupt) từ thiết bị I/O
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 overhead khi gọi hàm
B. Kích thước kernel nhỏ gọn hơn, dễ bảo trì và mở rộng
C. Tất cả các dịch vụ hệ thống chạy trong không gian kernel
D. Khả năng tương thích phần cứng tốt hơn
16. Hệ điều hành (Operating System) được định nghĩa chính xác nhất là:
A. Một phần mềm ứng dụng giúp người dùng soạn thảo văn bản và bảng tính.
B. Một tập hợp các chương trình quản lý tài nguyên phần cứng và phần mềm của máy tính, cung cấp môi trường để chạy các ứng dụng.
C. Một thiết bị phần cứng trung tâm của máy tính, chịu trách nhiệm xử lý mọi tác vụ.
D. Một loại ngôn ngữ lập trình dùng để tạo ra các phần mềm hệ thống.
17. 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à điều phối các tài nguyên phần cứng như CPU, bộ nhớ và thiết bị ngoại vi?
A. Shell (Vỏ)
B. Kernel (Nhân)
C. File System (Hệ thống tập tin)
D. User Interface (Giao diện người dùng)
18. Khi một chương trình người dùng muốn thực hiện một thao tác đặc quyền (ví dụ: truy cập trực tiếp vào phần cứng), nó cần phải sử dụng:
A. Thư viện liên kết động (DLL)
B. API (Application Programming Interface) của ứng dụng
C. System Call (Lời gọi hệ thống)
D. Trình biên dịch (Compiler)
19. 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. Cho phép chương trình lớn hơn kích thước bộ nhớ vật lý được thực thi.
C. Giảm thiểu tình trạng phân mảnh ngoại vi.
D. Đảm bảo tính toàn vẹn dữ liệu trong bộ nhớ.
20. Tiến trình (Process) ở trạng thái "Chờ" (Waiting) khi nào?
A. Khi tiến trình đang sử dụng CPU để thực thi lệnh.
B. Khi tiến trình vừa mới được tạo và sẵn sàng thực thi.
C. Khi tiến trình đang chờ một sự kiện xảy ra, ví dụ như hoàn thành thao tác I/O.
D. Khi tiến trình đã hoàn thành thực thi và chuẩn bị kết thúc.
21. Thuật toán lập lịch CPU nào ưu tiên các tiến trình có thời gian burst time ngắn nhất, nhằm tối đa hóa thông lượng và giảm thời gian chờ trung bình?
A. First-Come, First-Served (FCFS)
B. Round Robin (RR)
C. Shortest Job First (SJF)
D. Priority Scheduling (Lập lịch theo độ ưu tiên)
22. Hiện tượng "deadlock" (bế tắc) xảy ra khi:
A. Một tiến trình chiếm giữ độc quyền một tài nguyên và không bao giờ giải phóng nó.
B. Hai hoặc nhiều tiến trình cùng tranh giành một tài nguyên duy nhất.
C. 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 nắm giữ, dẫn đến không tiến trình nào có thể tiếp tục.
D. Một tiến trình bị lỗi và hệ thống phải khởi động lại.
23. Trong hệ thống tập tin, mục đích chính của việc sử dụng "inode" (index node) là gì?
A. Lưu trữ nội dung 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 tạo, và con trỏ đến các khối dữ liệu.
C. Quản lý danh sách các thư mục con trong một thư mục.
D. Tăng tốc độ truy cập tập tin bằng cách lưu trữ dữ liệu tập tin trong bộ nhớ cache.
24. Loại hệ điều hành nào thích hợp nhất cho các hệ thống điều khiển thời gian thực, như hệ thống điều khiển máy bay hoặc dây chuyền sản xuất tự động?
A. Hệ điều hành theo lô (Batch Operating System)
B. Hệ điều hành chia sẻ thời gian (Time-sharing Operating System)
C. Hệ điều hành thời gian thực (Real-time Operating System)
D. Hệ điều hành phân tán (Distributed Operating System)
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" (hardware abstraction)?
A. Người dùng có thể kết nối nhiều loại chuột và bàn phím khác nhau vào máy tính.
B. Ứng dụng có thể in tài liệu trên nhiều loại máy in khác nhau mà không cần sửa đổi mã nguồn.
C. Hệ điều hành tự động cập nhật trình điều khiển thiết bị mới nhất.
D. Máy tính có thể chạy nhiều chương trình cùng một lúc.
26. So sánh hệ điều hành "chia sẻ thời gian" (time-sharing) và hệ điều hành "theo lô" (batch), điểm khác biệt chính là gì?
A. Hệ điều hành chia sẻ thời gian có giao diện dòng lệnh, còn hệ điều hành theo lô có giao diện đồ họa.
B. Hệ điều hành chia sẻ thời gian cho phép nhiều người dùng tương tác đồng thời, còn hệ điều hành theo lô xử lý công việc theo từng lô tuần tự.
C. Hệ điều hành chia sẻ thời gian sử dụng bộ nhớ ảo, còn hệ điều hành theo lô không sử dụng.
D. Hệ điều hành chia sẻ thời gian chạy nhanh hơn hệ điều hành theo lô.
27. Trong ngữ cảnh bảo mật hệ điều hành, "firewall" (tường lửa) có chức năng chính là gì?
A. Quét và diệt virus trên hệ thống.
B. Mã hóa dữ liệu trên ổ cứng.
C. Kiểm soát và lọc lưu lượng mạng ra vào hệ thống, ngăn chặn truy cập trái phép.
D. Quản lý mật khẩu người dùng.
28. 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 khác nhau trên cùng một phần cứng vật lý.
C. Giảm tiêu thụ điện năng của máy tính.
D. Mở rộng dung lượng bộ nhớ RAM vật lý.
29. Trong quản lý bộ nhớ, kỹ thuật "segmentation" (phân đoạn) chia bộ nhớ thành các đoạn có kích thước:
A. Cố định bằng nhau.
B. Thay đổi và logic, phản ánh cấu trúc chương trình.
C. Tối ưu hóa tự động bởi hệ điều hành.
D. Phụ thuộc vào kích thước cache CPU.
30. Khi một tiến trình kết thúc, hệ điều hành sẽ thực hiện công việc nào sau đây liên quan đến tài nguyên của tiến trình đó?
A. Chuyển tiến trình sang trạng thái "chờ" để tái sử dụng sau này.
B. Giải phóng tất cả các tài nguyên mà tiến trình đã sử dụng (CPU, bộ nhớ, tập tin, ...).
C. Lưu trữ trạng thái của tiến trình vào ổ cứng để phân tích lỗi.
D. Tạm dừng tiến trình và chờ lệnh tiếp tục từ người dùng.
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à cung cấp giao diện cho người dùng.
B. Chạy các ứng dụng phần mềm.
C. Kết nối với mạng Internet.
D. Bảo vệ máy tính khỏi virus.
32. Tiến trình (Process) khác với luồng (Thread) như thế 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. Tiến trình nhanh hơn luồng trong việc chuyển đổi ngữ cảnh.
33. Thuật toán lập lịch CPU nào sau đây ưu tiên các tiến trình có thời gian thực thi ngắn nhất?
A. First-Come, First-Served (FCFS)
B. Shortest Job First (SJF)
C. Round Robin (RR)
D. Priority Scheduling
34. Bộ nhớ ảo (Virtual Memory) giải quyết vấn đề gì?
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. Bảo vệ bộ nhớ khỏi virus.
D. Giảm tiêu thụ điện năng của bộ nhớ.
35. Trong quản lý bộ nhớ, phân trang (Paging) khác với phân đoạn (Segmentation) như thế nào?
A. Phân trang chia bộ nhớ thành các khối có kích thước thay đổi, phân đoạn chia thành khối cố định.
B. Phân trang quản lý bộ nhớ logic, phân đoạn quản lý bộ nhớ vật lý.
C. Phân trang chia bộ nhớ thành các khối cố định (trang), phân đoạn chia theo đơn vị logic (đoạn).
D. Phân trang phức tạp hơn phân đoạn.
36. Hệ thống tập tin (File System) có vai trò gì trong hệ điều hành?
A. Quản lý bộ nhớ chính.
B. Quản lý và tổ chức dữ liệu trên bộ nhớ thứ cấp (ổ cứng).
C. Điều khiển các thiết bị ngoại vi.
D. Cung cấp giao diện đồ họa cho người dùng.
37. Nguyên tắc "locality of reference" (tính cục bộ tham chiếu) được ứng dụng trong kỹ thuật nào của hệ điều hành?
A. Lập lịch CPU.
B. Bộ nhớ ảo và bộ nhớ cache.
C. Quản lý tiến trình.
D. Bảo mật hệ thống.
38. Trong ngữ cảnh hệ điều hành, "deadlock" (bế tắc) xảy ra khi nào?
A. Khi một tiến trình gặp lỗi và dừng hoạt động.
B. Khi nhiều tiến trình tranh giành tài nguyên và không thể tiếp tục thực thi.
C. Khi hệ thống quá tải và không đủ tài nguyên.
D. Khi một tiến trình độc chiếm CPU quá lâu.
39. Ví dụ nào sau đây là ứng dụng của hệ điều hành thời gian thực (Real-time OS)?
A. Hệ điều hành Windows trên máy tính cá nhân.
B. Hệ điều hành Android trên điện thoại thông minh.
C. Hệ thống điều khiển máy bay tự động.
D. Hệ thống quản lý cơ sở dữ liệu trực tuyến.
40. Cơ chế "context switching" (chuyển đổi ngữ cảnh) cho phép hệ điều hành thực hiện điều gì?
A. Tăng tốc độ xử lý của CPU.
B. Cho phép đa nhiệm (multitasking) bằng cách chuyển đổi nhanh chóng giữa các tiến trình.
C. Bảo vệ hệ thống khỏi các tiến trình độc hại.
D. Giảm mức tiêu thụ điện năng của CPU.
41. Lệnh "system call" (gọi hệ thống) được sử dụng để làm gì?
A. Gọi một hàm trong chương trình ứng dụng.
B. Ứng dụng yêu cầu dịch vụ từ hệ điều hành.
C. Truy cập trực tiếp phần cứng máy tính.
D. Thực hiện các phép tính số học phức tạp.
42. Trong mô hình client-server, hệ điều hành đóng vai trò gì?
A. Chỉ đóng vai trò là client.
B. Chỉ đóng vai trò là server.
C. Có thể đóng vai trò là client hoặc server tùy thuộc vào tình huống.
D. Không liên quan đến mô hình client-server.
43. Phương pháp bảo mật nào sau đây giúp ngăn chặn việc truy cập trái phép vào tài nguyên hệ thống dựa trên danh tính người dùng?
A. Mã hóa dữ liệu (Data encryption).
B. Kiểm soát truy cập (Access control).
C. Tường lửa (Firewall).
D. Phần mềm diệt virus (Antivirus).
44. Điểm khác biệt chính giữa hệ điều hành "nhân đơn khối" (Monolithic kernel) và "vi nhân" (Microkernel) là gì?
A. Nhân đơn khối nhanh hơn vi nhân.
B. Nhân đơn khối có kích thước nhỏ hơn vi nhân.
C. Nhân đơn khối tích hợp hầu hết dịch vụ vào kernel, vi nhân chỉ chứa các dịch vụ cốt lõi.
D. Nhân đơn khối dễ dàng mở rộng hơn vi nhân.
45. Trong quản lý bộ nhớ, kỹ thuật "swapping" (hoán đổi) thường được sử dụng khi nào?
A. Khi bộ nhớ vật lý còn trống nhiều.
B. Khi cần tăng tốc độ truy cập bộ nhớ.
C. Khi bộ nhớ vật lý không đủ để chứa tất cả các tiến trình đang chạy.
D. Khi cần bảo vệ bộ nhớ khỏi lỗi.
46. Đâu là chức năng cốt lõi và quan trọng nhất của hệ điều hành?
A. Quản lý tài nguyên phần cứng và phần mềm của hệ thống
B. Cung cấp giao diện người dùng thân thiện và dễ sử dụng
C. Đảm bảo an ninh và bảo mật cho dữ liệu người dùng
D. Tăng tốc độ xử lý của máy tính
47. Trong một hệ thống đa nhiệm (multi-tasking), khi một tiến trình (process) cần thực hiện thao tác nhập/xuất (I/O) chậm, hệ điều hành sẽ thực hiện hành động nào sau đây để tối ưu hiệu suất?
A. Đình chỉ tiến trình đó và chuyển CPU cho một tiến trình khác đang ở trạng thái sẵn sàng
B. Chờ đợi tiến trình đó hoàn thành thao tác I/O trước khi tiếp tục cấp phát CPU
C. Hủy bỏ tiến trình đó để giải phóng tài nguyên cho các tiến trình khác
D. Tăng tốc độ thiết bị I/O để tiến trình hoàn thành nhanh hơn
48. Trong thực tế, hệ điều hành trên điện thoại thông minh (smartphone) thường xuyên sử dụng kỹ thuật quản lý bộ nhớ nào để cho phép chạy đồng thời nhiều ứng dụng mà không bị thiếu bộ nhớ vật lý?
A. Phân trang (Paging)
B. Phân đoạn (Segmentation)
C. Hoán đổi (Swapping)
D. Cấp phát bộ nhớ liên tục (Contiguous allocation)
49. Điểm khác biệt chính giữa tiến trình (process) và luồng (thread) trong hệ điều hành là gì?
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 cơ bản, luồng là đơn vị quản lý tài nguyên
C. Tiến trình độc lập về không gian địa chỉ, luồng chia sẻ không gian địa chỉ của tiến trình cha
D. Tiến trình nhanh hơn luồng trong việc chuyển đổi ngữ cảnh
50. Thuật toán lập lịch CPU "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. Phân chia thời gian CPU thành các "quantum" cố định và cấp phát tuần tự cho các tiến trình
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 hoặc tự nguyện nhường CPU