Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 27

BÀI 1: Tổng quan hệ điều hành

1. Hệ điều hành (OS) là gì?


A. Một loại trình duyệt web
B. Một mạng máy tính quy mô lớn
C. Một phần cứng trong máy tính
D. Một phần mềm quản lý và điều khiển các hoạt động trong máy tính
2. Hệ điều hành nào sau đây là mã nguồn mở?
A. Linux
A. Windows
B. macOS
C. iOS

3. Hệ điều hành nào sau đây phổ biến trên điện thoại di động?
A. Linux
B. Android
C. Windows
D. macOS

4. Hệ điều hành iOS của Apple được sử dụng trên loại thiết bị nào sau đây?
A. Máy tính để bàn
B. Điện thoại di động
C. Máy chơi game
D. Máy tính xách tay

5. Hệ điều hành Ubuntu là một phiên bản của hệ điều hành nào sau đây?
A. Linux
A. Android
B. macOS
C. Windows

6. Hệ thống máy tính được chia thành bốn thành phần chính là gì?
A. Hệ điều hành, các chương trình ứng dụng, mạng và dữ liệu
B. Hệ điều hành, mạng, dữ liệu và người dùng
C. Phần mềm, phần cứng, mạng và dữ liệu
D.Phần cứng, hệ điều hành, các chương trình ứng dụng và người dùng

7. Phần cứng của một hệ thống máy tính bao gồm những thành phần nào sau đây?
A. CPU, bộ nhớ, và các thiết bị I/O
B. CPU, bộ nhớ, và các chương trình ứng dụng
C. Hệ điều hành, bộ nhớ, và các thiết bị I/O
D. Đơn vị trung ương xử lý (CPU), bộ nhớ, và hệ điều hành

8. Hệ điều hành có chức năng gì trong hệ thống máy tính?


A. Quản lý cấu hình mạng và kết nối internet.
B. Xử lý dữ liệu và thực hiện tính toán trong máy tính.
C. Cung cấp giao diện người dùng đồ họa cho máy tính.
D. Điều khiển phần cứng và điều phối việc sử dụng chúng cho các chương trình ứng dụng
khác nhau, cho những người sử dụng khác nhau.
9. Vai trò chính của người dùng trong hệ thống máy tính là gì?
A. Tương tác với hệ điều hành và sử dụng các chương trình ứng dụng để giải quyết một
vấn đề nào đó.
B. Lập trình và phát triển các ứng dụng.
C. Bảo mật và bảo vệ thông tin trên máy tính.
D. Quản lý và điều khiển phần cứng máy tính.

10. Chức năng chính của các chương trình ứng dụng trong hệ điều hành là gì?
A. Xử lý dữ liệu và thực hiện tính toán trong máy tính.
B. Cung cấp giao diện người dùng và tương tác với người dùng để giải quyết các vấn đề.
C. Điều khiển và quản lý phần cứng máy tính
D. Điều phối việc sử dụng tài nguyên máy tính cho các chương trình ứng dụng khác nhau.

11. Một số hệ điều hành được thiết kế cho một người sử dụng. Trong trường hợp này, hệ
điều hành được tối ưu hóa cho mục đích gì?
A. Tận dụng tối đa tài nguyên phần cứng và phần mềm.
B. Tạo một môi trường làm việc thuận tiện cho người dùng.
C. Tăng cường bảo mật.
D. Tối ưu hiệu suất và tối đa hóa tài nguyên hệ thống.

12. Một hệ thống trong đó nhiều người dùng sử dụng thiết bị đầu cuối kết nối truy cập
vào cùng một máy tính lớn và sử dụng tài nguyên của máy tính đó. Trong trường hợp
này, hệ điều hành cài đặt trên các máy tính lớn được thiết kế cho mục đích gì?
A. Tối đa hóa việc sử dụng tài nguyên.
B. Tạo môi trường làm việc thuận tiện cho người dùng cá nhân.
C. Đảm bảo công bằng trong việc chia sẻ tài nguyên giữa các người dùng.
D. Tăng cường bảo mật cho máy tính lớn.

13. Một hệ thống máy tính trong đó người dùng ngồi tại máy trạm kết nối với các máy
trạm và máy chủ khác. Trong trường hợp này, hệ điều hành trên máy của họ được thiết kế
để đạt được mục tiêu gì?
A. Tạo môi trường làm việc thuận tiện cho người dùng và tận dụng tài nguyên chung.
B. Tối đa hóa việc sử dụng tài nguyên cá nhân của người dùng.
C. Xác định quyền truy cập và bảo mật trong hệ thống mạng.
D. Cung cấp khả năng tính toán mạnh mẽ cho người dùng.

14. Đứng từ quan điểm hệ thống, vai trò chính của hệ điều hành là gì?
A. Quản lý và phân bổ tài nguyên của hệ thống máy tính.
B. Cung cấp các chương trình ứng dụng cho người dùng.
C. Xử lý và lưu trữ dữ liệu trong hệ thống máy tính.
D. Điều khiển và kiểm soát phần cứng của hệ thống máy tính.

15. Đứng từ quan điểm hệ thống, phát biểu nào sau đây là phù hợp khi nói về vai trò của hệ
điều hành?
A. Môi trường lập trình và phát triển các ứng dụng.
B. Cung cấp các chương trình ứng dụng cho người dùng.
C. Xử lý và lưu trữ dữ liệu trong hệ thống máy tính.
D. Điều khiển, giám sát các thiết bị I/O và các chương trình người dùng.

16. Phát biểu nào sau đây là đúng khi mô tả về chức năng của hệ điều hành?
A. Cung cấp môi trường làm việc cho phép người dùng thực hiện và phát triển các chương
trình máy tính một cách thuận tiện, hiệu quả.
B. Phân bổ tài nguyên máy tính cho các chương trình và người dùng đang hoạt động một
cách công bằng và hiệu quả nhất.
C. Điều khiển, giám sát các thiết bị I/O và các chương trình người dùng, đảm bảo an ninh
hệ thống.
D. Tất cả các đáp án trên đều đúng.

17. Hệ điều hành đa chương là gì?


A. Một loại hệ điều hành có thể cài đặt trên nhiều thiết bị.
B. Một loại hệ điều hành chỉ hỗ trợ một chương trình chạy tại một thời điểm.
C. Một loại hệ điều hành phép một chương trình chạy đồng thời trên nhiều máy tính.
D. Một loại hệ điều hành cho phép nhiều chương trình chạy đồng thời trên một máy
tính.

18. Mục tiêu chính của việc xử lý đồng thời nhiều chương trình trong hệ điều hành đa
chương là gì?
A. Cung cấp các công cụ phát triển ứng dụng và giao diện người dùng dễ sử dụng.
B. Tăng cường hiệu suất và sử dụng tối ưu tài nguyên của hệ thống.
C. Đảm bảo an toàn và bảo mật cho dữ liệu và thông tin trong hệ thống.
D. Tạo ra môi trường làm việc thuận tiện cho người dùng.

19. Hệ điều hành đa nhiệm là gì?


A. Hệ điều hành cho phép cùng một chương trình chạy đồng thời trên nhiều máy tính khác
nhau.
B. Hệ điều hành cho phép người dùng truy cập vào Internet và duyệt web thông qua trình
duyệt.
C. Hệ điều hành cho phép người dùng thực hiện nhiều nhiệm vụ cùng một lúc trên cùng
một máy tính.
D. Hệ điều hành được sử dụng trong các hệ thống mạng lớn để quản lý và điều phối việc
truyền tải dữ liệu.

20. Hệ điều hành chia sẻ thời gian là gì?


A. Hệ điều hành được sử dụng trong các hệ thống máy tính siêu cao cấp để xử lý các tác vụ
phức tạp.
B. Hệ điều hành cho phép chia sẻ các tài nguyên phần cứng giữa các máy tính khác nhau
trong mạng.
C. Hệ điều hành cho phép người dùng truy cập và chia sẻ dữ liệu trên mạng Internet.
D. Hệ điều hành cho phép người dùng chia sẻ cùng một máy tính và thực hiện nhiều tác
vụ cùng một lúc.

BÀI 2: Cấu trúc hệ điều hành


1. Các nhóm dịch vụ của hệ điều hành bao gồm:

A. Dịch vụ lõi.
B. Các lời gọi hệ thống.
C. Các giao diện người dùng.
D. Tất cả các phương án trên.

2. Các nhóm dịch vụ của hệ điều hành cung cấp bao gồm những gì?
A. Dịch vụ lõi, lời gọi hệ thống, giao diện người dùng.
B. Dịch vụ mạng, lời gọi hệ thống, giao diện đồ họa.
C. Dịch vụ bảo mật, lời gọi hệ thống, giao diện dòng lệnh.
D. Dịch vụ truyền thông, lời gọi hệ thống, giao diện người dùng.

3. Dịch vụ lõi của hệ điều hành có các chức năng sau?


A. Thực thi chương trình, giám sát các hoạt động I/O, thao tác hệ thống tập tin.
B. Truyền thông, phát hiện lỗi, phân bổ tài nguyên.
C. Kế toán, bảo vệ và an ninh.
D. Tất cả các phương án trên.

4. Vai trò chính của giao diện người dùng trong hệ điều hành là gì?
A. Quản lý và điều phối tài nguyên phần cứng.
B. Đảm bảo an ninh và bảo mật của hệ thống.
C. Thực thi chương trình và quản lý quy trình (process).
D. Cung cấp giao tiếp giữa người dùng và hệ thống.
5. Các hình thức phổ biến của giao diện người dùng trong hệ điều hành bao gồm những gì?
A. Giao diện dòng lệnh và giao diện đồ họa.
B. Giao diện màn hình cảm ứng và giao diện giọng nói.
C. Giao diện dòng lệnh và giao diện web.
D. Giao diện đồ họa và giao diện cảm ứng.

6. Giao diện dòng lệnh (CLI - command line interface) là gì?


A. Giao diện tương tác với người dùng thông qua các lệnh văn bản được nhập vào từ bàn
phím.
B. Giao diện tương tác với người dùng thông qua các biểu đồ và đồ họa trực quan.
C. Giao diện tương tác với người dùng thông qua các hình ảnh và video.
D. Giao diện tương tác với người dùng thông qua các câu lệnh giọng nói.

7. Giao diện đồ họa (GUI - graphical user interface) trong hệ điều hành là gì?
A. Một giao diện dòng lệnh cho phép người dùng tương tác với hệ thống thông qua các lệnh
văn bản.
B. Một giao diện màn hình cảm ứng cho phép người dùng điều khiển hệ thống bằng cách
chạm vào các biểu tượng và điều hướng trên màn hình.
C. Một giao diện web dựa trên trình duyệt cho phép người dùng truy cập và tương tác với các
ứng dụng và dịch vụ trên Internet.
D. Một giao diện đồ họa trực quan với các đối tượng đồ họa, cửa sổ, nút bấm và các phần
tử tương tác để người dùng tương tác với hệ thống.

8. Giao diện nhóm (batch interface) trong hệ điều hành là gì?


A. Một giao diện đồ họa trực quan với các đối tượng đồ họa, cửa sổ, nút bấm và các phần tử
tương tác để người dùng tương tác với hệ thống.
B. Một giao diện cho phép người dùng truy cập và tương tác với các ứng dụng và dịch vụ
trên Internet.
C. Một giao diện dòng lệnh cho phép người dùng tương tác với hệ thống thông qua các lệnh
văn bản.
D. Một giao diện cho phép thực hiện một tập lệnh hoặc công việc tự động mà không cần
tương tác trực tiếp từ người dùng.

9. API là viết tắt của cụm từ nào trong lập trình?


A. Application Programming Interface
B. Advanced Programming Interface
C. Algorithm Programming Interface
D. Access Point Interface

10. Lời gọi hệ thống (system call) có thể được chia thành bao nhiêu loại chính và các loại đó
là gì?
A. 4 loại: điều khiển tiến trình, quản lý tập tin, truyền thông, và bảo vệ.
B. 5 loại: điều khiển tiến trình, quản lý tập tin, quản lý thiết bị, truyền thông, và bảo vệ.
C. 6 loại: điều khiển tiến trình, quản lý tập tin, quản lý thiết bị, bảo trì thông tin, truyền thông,
và bảo vệ.
D. 7 loại: điều khiển tiến trình, quản lý tập tin, quản lý thiết bị, bảo trì thông tin, truyền thông,
bảo vệ, và giao diện người dùng.

11. Trong lập trình ứng dụng hệ thống, những API nào là phổ biến nhất dành cho các lập
trình viên?
A. Win32 API, iOS API, Java API
B. Win32 API, POSIX API, .NET API
C. Win32 API, POSIX API, Java API
D. Windows API, Android API, Java API

12. API (Application Programming Interface) trong hệ điều hành có chức năng gì chính?
A. Quản lý phần cứng máy tính
B. Giao tiếp giữa các ứng dụng và hệ điều hành
C. Bảo mật dữ liệu người dùng
D. Tạo giao diện người dùng đồ họa

13. Bộ thông dịch lệnh (command interpreter) trong hệ điều hành là gì?
A. Một phần mềm giúp người dùng tương tác với hệ thống thông qua giao diện người dùng
đồ họa (GUI).
B. Một chương trình chuyển đổi ngôn ngữ lập trình thành mã máy để thực thi các lệnh và
chương trình.
C. Một chương trình quản lý tài nguyên phần cứng và phần mềm trong hệ thống máy tính.
D. Một công cụ cho phép người dùng nhập lệnh và thực thi các chức năng của hệ điều
hành.

14. Ưu điểm của giao diện dòng lệnh (CLI - Command Line Interface) so với giao diện đồ
họa (GUI - Graphical User Interface) trong hệ điều hành là gì?
A. CLI cung cấp khả năng tùy chỉnh và kiểm soát cao hơn so với GUI.
B. CLI tiết kiệm tài nguyên hệ thống hơn vì không cần sử dụng giao diện đồ họa.
C. CLI cho phép thao tác nhanh hơn vì không cần tương tác với chuột và giao diện đồ họa.
D. Tất cả các phương án trên.

15. Điều nào sau đây không đúng khi nói về ưu điểm của giao diện dòng lệnh (CLI -
Command Line Interface) so với giao diện đồ họa (GUI - Graphical User Interface)?
A. CLI có khả năng tùy chỉnh và kiểm soát cao hơn so với GUI.
B. CLI tiết kiệm tài nguyên hệ thống hơn vì không cần sử dụng giao diện đồ họa.
C. CLI cung cấp trải nghiệm người dùng thân thiện và trực quan hơn GUI.
D. CLI cho phép thao tác nhanh hơn vì không cần tương tác với chuột và giao diện đồ họa.

16. Điều nào dưới đây không đúng khi nói về ưu điểm của giao diện dòng lệnh (CLI -
Command Line Interface) so với giao diện đồ họa (GUI - Graphical User Interface)?
A. CLI đơn giản và dễ sử dụng hơn so với GUI.
B. CLI cho phép tự động hóa các tác vụ và quy trình.
C. CLI tương tác trực tiếp với hệ thống và cho phép kiểm soát chi tiết.
D. CLI tiết kiệm tài nguyên hệ thống hơn vì không cần sử dụng giao diện đồ họa.

17. Ưu điểm nào sau đây là đúng khi so sánh giao diện đồ họa (GUI - Graphical User
Interface) với giao diện dòng lệnh (CLI - Command Line Interface)?
A. GUI cung cấp giao diện trực quan và dễ sử dụng hơn so với CLI.
B. GUI tiết kiệm thời gian hơn trong việc thực hiện các tác vụ so với CLI.
C. GUI cho phép tự động hóa công việc thông qua việc sử dụng kịch bản (scripting).
D. GUI cung cấp các tính năng mạnh mẽ hơn trong việc xử lý và quản lý hệ thống.

18. Lời gọi hệ thống (system call) trong hệ điều hành là gì?
A. Là lệnh được gọi từ giao diện người dùng để thực hiện các tác vụ cơ bản.
B. Là cách gọi các chương trình ứng dụng để sử dụng các tài nguyên hệ thống.
C. Là cơ chế cho phép các chương trình ứng dụng tương tác với nhân hệ điều hành.
D. Là quá trình chuyển đổi giữa chế độ người dùng và chế độ hạt nhân trong hệ điều hành.

19. Sự khác biệt giữa lời gọi hệ thống và API là gì?


A. Lời gọi hệ thống và API là hai thuật ngữ chỉ cùng một khái niệm, không có sự khác biệt.
B. Lời gọi hệ thống là một phần của API, chỉ đại diện cho các lời gọi hệ thống cụ thể, trong
khi API là một bộ sưu tập các giao diện lập trình.
C. Lời gọi hệ thống là một phần của API, chịu trách nhiệm gọi các hàm hệ thống cụ thể, trong
khi API là một loại giao diện dùng để tương tác giữa các ứng dụng.
D. Lời gọi hệ thống và API là hai thuật ngữ hoàn toàn riêng biệt, không liên quan đến nhau
trong lĩnh vực lập trình.
20. Nhược điểm chính của hệ điều hành có kiến trúc đơn giản là gì?
A. Khả năng mở rộng hạn chế
B. Tốn ít tài nguyên hệ thống
C. Hiệu suất hoạt động cao
D. Dễ dàng quản lý và bảo trì

21. Mô tả nào sau đây đúng về hệ điều hành có cấu trúc phân lớp?
A. Hệ điều hành có cấu trúc phân lớp là một hệ điều hành mà các thành phần và chức năng
được chia thành các lớp riêng biệt và các lớp này tương tác với nhau thông qua giao diện
chuẩn.
B. Hệ điều hành có cấu trúc phân lớp là một hệ điều hành mà các ứng dụng và tiến trình hoạt
động độc lập, không phụ thuộc vào nhau.
C. Hệ điều hành có cấu trúc phân lớp là một hệ điều hành mà các thành phần và chức năng
được gom nhóm và thực hiện bởi cùng một lớp.
D. Hệ điều hành có cấu trúc phân lớp là một hệ điều hành mà các tiến trình và ứng dụng được
chia thành các lớp khác nhau tùy thuộc vào mức độ quyền truy cập vào tài nguyên hệ thống.

22. Nhược điểm chính của hệ điều hành có cấu trúc phân lớp là gì?
A. Khó khăn trong việc quản lý và bảo trì hệ thống
B. Hiệu suất hoạt động thấp do tăng độ phức tạp
C. Giới hạn khả năng mở rộng và linh hoạt
D. Thiếu tính bảo mật và kiểm soát truy cập

BÀI 3: Tiến trình và luồng


1. Hệ điều hành là chương trình hoạt động giữa người sử dụng với:
A. Phần mềm của máy tính
B. Phần cứng của máy tính
C. Các chương trình ứng dụng
D. CPU và bộ nhớ

2. Trong việc phân loại mô hình hệ điều hành, loại có nhiều bộ xử lí cùng chia sẻ hệ thống
đường truyền, dữ liệu, đồng hồ, bộ nhớ, các thiết bị ngoại vi thuộc dạng:
A. Hệ thống xử lí đa chương
B. Hệ thống xử lí đa nhiệm
C. Hệ thống xử lí thời gian thực
D. Hệ thống xử lí song song

3. Máy tính có thể lưu trữ thông tin trong nhiều dạng thiết bị vật lí khác nhau như băng từ, đĩa
từ, …Để thống nhất cách truy xuất hệ thống lưu trữ trong máy tính, hệ điều hành định nghĩa
một đơn vị lưu trữ là:
A. Thư mục
B. Partition
C. FAT
D. Tập tin
4. Ở hệ điều hành có cấu trúc phân lớp, tập hợp các lời gọi hệ thống được tạo ra bởi:
A. Lớp phần cứng
B. Lớp giao tiếp với người sử dụng
C. Lớp ứng dụng
D. Lớp kế lớp phần cứng-hạt nhân

5. Lời gọi hệ thống là lệnh do hệ điều hành cung cấp dùng để giao tiếp giữa hệ điều hành và:
A. Tiến trình
B. Chương trình ứng dụng
C. Phần cứng máy tính
D. Người sử dụng

6. Cho biết khái niệm về tiến trình?


A. Chương trình được cấp bộ nhớ
B. Chương trình được viết bởi ngôn ngữ lập trình
C. Chương trình ảo
D. Chương trình đang thực thi

7. Tiến trình có bao nhiêu trạng thái


A. 2
B. 3
C. 4
D. 5

8. Mỗi tiến trình trong hệ điều hành được quản lý bởi:


A. PCB
B. PID
C. CPU
D. TCB

9. Trạng thái nào cho biết tiến trình đang chờ cấp CPU?
A. Waiting
B. Running
C. Terminated
D. Ready

10. Trạng thái nào cho biết tiến trình đang thực thi?
A. Waiting
B. Running
C. Terminated
D. Ready

11.Trạng thái nào cho biết tiến trình đang chờ sự kiện nào đó?
A. Waiting
B. Running
C. Terminated
D. Ready

12. Trạng thái nào cho biết tiến trình kết thúc?
A. Waiting
B. Running
C. Terminated
D. Ready

13. Tiến trình không chia sẻ dữ liệu với tiến trình khác là loại tiến trình nào?
A. Tiến trình đơn
B. Tiến trình độc lập
C. Tiến trình tự chủ
D. Tiến trình hợp tác

14. Tiến trình chia sẻ dữ liệu với tiến trình khác là loại tiến trình nào?
A. Tiến trình đơn
B. Tiến trình độc lập
C. Tiến trình tự chủ
D. Tiến trình hợp tác

15. Cơ chế nào giúp cho các tiến trình hợp tác trao đổi dữ liệu và thông tin với nhau?
A. Module
B. PCB
C. TCP
D. IPC

16. Chọn câu đúng về các mô hình cơ bản của truyền thông liên tiến trình
A. Shared memory và message passing
B. TCB và PCB
C. CPU và PID
D. PCB và PID

17. Chọn mô tả cho phương pháp truyền thông shared memory:


A. Các tiến trình độc lập trao đổi thông tin bằng cách đọc và ghi dữ liệu vào vùng bộ nhớ
chia sẻ
B. Các tiến trình độc lập trao đổi thông tin bằng cách gửi thông điệp với nhau.
C. Các tiến trình hợp tác có thể trao đổi thông tin bằng cách đọc và ghi dữ liệu vào vùng bộ
nhớ chia sẻ.
D. Việc truyền thông diễn ra bằng cách trao đổi thông điệp giữa các tiến trình hợp tác.

18. Chọn mô tả cho phương pháp truyền thông message passing:


A. Các tiến trình độc lập trao đổi thông tin bằng cách đọc và ghi dữ liệu vào vùng bộ nhớ
chia sẻ
B. Các tiến trình độc lập trao đổi thông tin bằng cách gửi thông điệp với nhau.
C. Các tiến trình hợp tác có thể trao đổi thông tin bằng cách đọc và ghi dữ liệu vào vùng bộ
nhớ chia sẻ.
D. Việc truyền thông diễn ra bằng cách trao đổi thông điệp giữa các tiến trình hợp tác.

19. Chọn các tác vụ trong phương pháp truyền thông shared memory
A. Read() và Write()
B. Send() và Receive()
C. Read() và Receive()
D. Write() và Send()

20. Chọn các tác vụ trong phương pháp truyền thông message passing
A. Read() và Write()
B. Send() và Receive()
C. Read() và Receive()
D. Write() và Send()

21. Chọn mô tả đúng cho LPC-local procedure call- trong môi trường Windows
A. Dùng để giao tiếp giữa hai tiến trình độc lập trên cùng một máy
B. Dùng để giao tiếp giữa hai tiến trình độc lập khác máy
C. Dùng để giao tiếp giữa hai tiến trình hợp tác trên cùng một máy
D. Dùng để giao tiếp giữa hai tiến trình hợp tác khác máy

22. Trong các cấu trúc của hệ điều hành sau đây cấu trúc nào tương thích dễ dàng với mô
hình hệ thống phân tán:
A. Cấu trúc đơn giản
B. Cấu trúc theo lớp
C. Cấu trúc máy ảo
D. Cấu trúc server-client

23. Câu nào sau đây là không chính xác:


A. Tiến trình là một chương trình đang ở trong bộ nhớ
B. Tiến trình là một chương trình đang xử lí, sở hữu một không gian địa chỉ, một con trỏ
lệnh, một tập các thanh ghi và stack
C. Tiến trình tự quyết định thời điểm cần dừng hoạt động đang xử lí để phục vụ tiến trình
khác
D. Các tiến trình có thể liên lạc với nhau thông qua hệ điều hành

24. Tiến trình yêu cầu một tài nguyên nhưng chưa được đáp ứng vì tài nguyên chưa sẵn sàng,
hoặc tiến trình phải chờ một sự kiện hay thao tác nhập xuất thuộc dạng chuyển trạng thái nào
sau đây:
A. Running => Ready
B. Ready => Running
C. Running => Waiting
D. Waiting => Ready
25. Khi một tiến trình người dùng gọi đến một lời gọi hệ thống, tiến trình của hệ điều hành xử
lí lời gọi này hoạt động theo chế độ:
A. Không đặc quyền
B. Đặc quyền
C. Độ ưu tiên thấp
D. Không có đáp án nào đúng

26. Giả tiến trình A sinh ra 2 luồng B, C, câu nào sau đây là không chính xác:
A. Luồng B và C không sử chung con trỏ lệnh
B. Luồng B và C không sử chung không sử chung tập thanh ghi
C. Luồng B và C không sử chung stack
D. Luồng B và C không sử chung không gian địa chỉ

27. Chọn phát biểu đúng khi tiến trình chuyển đổi trạng thái từ Running sang Waiting:
A. Tiến trình yêu cầu một tài nguyên nhưng chưa được đáp ứng
B. Tiến trình được cấp CPU
C. Tiến trình chờ được cấp CPU
D. Tiến trình hoàn tất

28. Chọn phát biểu đúng khi tiến trình chuyển đổi trạng thái từ Ready sang Running:
A. Tiến trình yêu cầu một tài nguyên nhưng chưa được đáp ứng
B. Tiến trình được cấp CPU
C. Tiến trình chờ được cấp CPU
D. Tiến trình hoàn tất

29. Chọn phát biểu đúng khi tiến trình chuyển đổi trạng thái từ Running sang Terminated:
A. Tiến trình yêu cầu một tài nguyên nhưng chưa được đáp ứng
B. Tiến trình được cấp CPU
C. Tiến trình chờ được cấp CPU
D. Tiến trình hoàn tất

30. Chọn phát biểu đúng khi tiến trình chuyển đổi trạng thái từ Waiting sang Ready:
A. Tiến trình yêu cầu một tài nguyên nhưng chưa được đáp ứng
B. Tiến trình được cấp CPU
C. Tiến trình chờ được cấp CPU
D. Tiến trình hoàn tất

31. Chọn phát biểu sai về luồng (thread):


A. Luồng là một dòng điều khiển trong phạm vi một tiến trình
B. Tiến trình đa luồng gồm nhiều dòng điều khiển khác nhau trong cùng không gian địa chỉ.
C. Tiến trình đa luồng, mỗi luồng có không gian địa chỉ khác nhau
D. Đa luồng cho phép một tiến trình thực hiện nhiều công việc cùng một lúc, song song và
song hành, tạo ra hiệu quả và tăng cường sự đồng thời của các tác vụ

32. Trạng thái nào không phải là trạng thái của tiến trình:
A. Waiting
B. Ready
C. Finished
D. Running

33. Chọn quá trình chuyển đổi đúng cho tiến trình hoàn tất:
A. Running => Finished
B. Running => Stoped
C. Running => Ended
D. Running => Terminated

34. Chọn quá trình chuyển đổi đúng cho tiến trình bị ngắt:
A. Running => Paused
B. Running => Stopped
C. Running => Waiting
D. Running => Terminated

35. Chọn quá trình chuyển đổi đúng cho tiến trình đang hoạt động (Running):
A. Ready => Running
B. Waiting => Running
C. New => Running
D. Terminated => Running

BÀI 4: Điều phối cpu


1. Nơi mà các tiến trình đang cư trú trong bộ nhớ chính và sẵn sàng chờ đợi để thực thi được
gọi là:
A. Hàng đợi sẵn sàng (ready queue)
B. Hàng đợi thiết bị (devices queue)
C. Hàng đợi bộ nhớ (memory queue)
D. Hàng đợi bộ nhớ ảo (swap queue)

2. Danh sách các tiến trình chờ đợi một thiết bị I/O cụ thể được gọi là:
A. Hàng đợi sẵn sàng (ready queue)
B. Hàng đợi thiết bị (devices queue)
C. Hàng đợi bộ nhớ (memory queue)
D. Hàng đợi bộ nhớ ảo (swap queue)

3. Việc chọn các tiến trình từ nơi lưu trữ tạm và tải chúng vào bộ nhớ để thực thi gọi là:
A. Bộ điều phối dài hạn (long-term scheduler)
B. Bộ điều phối ngắn hạn (short-term scheduler)
C. Bộ điều phối trung hạn (mid-term scheduler)
D. Bộ điều phối tức thời (real-time scheduling)

4. Việc lựa chọn và phân bổ CPU cho một trong số các tiến trình trong bộ nhớ để thực thi
chúng gọi là:
A. Bộ điều phối dài hạn (long-term scheduler)
B. Bộ điều phối ngắn hạn (short-term scheduler)
C. Bộ điều phối trung hạn (mid-term scheduler)
D. Bộ điều phối tức thời (real-time scheduling)

5. Chọn phát biểu đúng về bộ điều phối dài hạn (long-term scheduler):
A. Chọn và phân bổ CPU cho một trong số các tiến trình trong bộ nhớ để thực thi chúng
B. Chọn các tiến trình từ nơi lưu trữ tạm và tải chúng vào bộ nhớ để thực thi
C. Chọn các tiến trình từ nơi lưu trữ tạm và phân bổ CPU cho chúng
D. Chọn các tiến trình từ bộ nhớ và tải chúng vào nơi lưu trữ tạm để thực thi

6. Chọn phát biểu đúng về bộ điều phối ngắn hạn (short-term scheduler)
A. Chọn và phân bổ CPU cho một trong số các tiến trình trong bộ nhớ để thực thi chúng
B. Chọn các tiến trình từ nơi lưu trữ tạm và tải chúng vào bộ nhớ để thực thi
C. Chọn các tiến trình từ nơi lưu trữ tạm và phân bổ CPU cho chúng
D. Chọn các tiến trình từ bộ nhớ và tải chúng vào nơi lưu trữ tạm để thực thi

7. Việc lưu ngữ cảnh của tiến trình cũ vào PCB và nạp ngữ cảnh đã lưu của tiến trình mới vào
CPU gọi là:
A. Chuyển đổi ngữ cảnh
B. Thay thế PCB
C. Thay thế CPU
D. Thay thế bộ nhớ

8. Chọn phát biểu đúng về điều phối CPU:


A. Chọn tiến trình từ ready queue để cấp CPU
B. Chọn tiến trình từ devices queue để cấp CPU
C. Chọn tiến trình từ memory queue để cấp CPU
D. Chọn tiến trình từ CPU queue để cấp CPU

9. Chọn phát biểu đúng về điều phối đặc quyền (non-preemptive):


A. Một khi CPU được cấp phát tới một tiến trình, tiến trình giữ CPU cho tới khi nó tự giải
phóng CPU
B. Tiến trình giữ CPU bị ngắt bởi tiến trình khác
C. Một tiến trình chiếm CPU từ tiến trình khác
D. CPU được cấp đồng thời cho nhiều tiến trình

10. Chọn phát biểu đúng về điều phối không đặc quyền (preemptive):
A. Một khi CPU được cấp phát tới một tiến trình, tiến trình giữ CPU cho tới khi nó tự giải
phóng CPU
B. Tiến trình giữ CPU bị ngắt bởi tiến trình khác
C. Một tiến trình không được chiếm CPU từ tiến trình khác
D. CPU được cấp đồng thời cho nhiều tiến trình

11. Chọn giải thuật điều phối đúng khi tiến trình yêu cầu CPU trước sẽ được cấp phát CPU
trước:
A. FCFS
B. SJF
C. RR
D. Priority

12. Chọn giải thuật điều phối đúng khi tiến trình có thời gian thực thi ngắn nhất được ưu tiên
cấp CPU:
A. FCFS
B. SJF
C. RR
D. Priority

13. Chọn giải thuật điều phối đúng khi mỗi tiến trình có một khoảng thời gian tối đa bằng
một định mức để dùng CPU:
A. FCFS
B. SJF
C. RR
D. Priority

14. Chọn phát biểu đúng cho điều phối Round Robin:
A. Đặc quyền
B. Không đặc quyền
C. Ưu tiên tiến trình có thời gian ngắn nhất
D. Ưu tiên tiến trình có độ ưu tiên cao nhất

15. Chọn phát biểu đúng cho điều phối FCFS:


A. Đặc quyền
B. Không đặc quyền
C. Ưu tiên tiến trình có thời gian ngắn nhất
D. Ưu tiên tiến trình có độ ưu tiên cao nhất

16.Giải thuật điều phối đơn giản và dễ cài đặt nhưng không thích hợp với các hệ thống nhiều
người dùng thuộc loại:
A. Điều phối đặc quyền
B. Điều phối không đặc quyền
C. Điều phối hàng đợi đa cấp
D. Điều phối hàng đợi phản hồi đa cấp

17. Nguyên lí phân phối đặc quyền thường thích hợp với các hệ xử lí:
A. Hệ thống xử lí theo thời gian thực
B. Hệ thống đa chương
C. Hệ thống chia sẻ tương tác
D. Hệ thống xử lí theo lô

18. Tiến trình đang thực thi sẽ chuyển về loại hàng đợi nào khi xảy ra sự kiện đợi một thao
tác nhập/xuất hoàn tất, yêu cầu tài nguyên dữ liệu chưa được thỏa mãn:
A. Hàng đợi sẵn sàng (Ready queue)
B. Hàng đợi tác vụ (Job queue)
C. Hàng đợi nhập xuất (I/O queue)
D. Hàng đợi rảnh (Free queue)

19. Chức năng điều phối tác vụ của hệ điều hành được kích hoạt khi:
A. Hệ thống tạo lập một tiến trình
B. Tiến trình kết thúc xử lí
C. Xảy ra ngắt
D. Hệ thống tạo lập một tiến trình hoặc khi tiến trình kết thúc xử lý

20. Thuật toán nào sau đây là thuật toán có thể điều phối theo nguyên tắc đặc quyền:
A. Đến trước phục vụ trước (FCFS)
B. Điều phối luân phiên (Round Robin)
C. Ưu tiên công việc ngắn nhất (SJF)
D. FCFS và SJF

BÀI 5: Đồng bộ hóa tiến trình


1. Câu nào sau đây phát biểu không chính xác:
A. Tiến trình xử lí tín hiệu theo cách riêng của nó
B. Tiến trình xử lí tín hiệu bằng cách gọi hàm xử lí tín hiệu
C. Tiến trình có thể trao đổi dữ liệu
D. Tiến trình có thể thông báo cho nhau về một sự kiện

2. Tài nguyên găng trong hệ điều hành là gì?


A. Tài nguyên được sử dụng để lưu trữ dữ liệu trên ổ đĩa
B. Tài nguyên được sử dụng để kết nối với mạng Internet
C. Tài nguyên được sử dụng để quản lý bộ nhớ và xử lý CPU
D. Tài nguyên được sử dụng để tạo ra âm thanh và hình ảnh trên màn hình

3. Mô tả nào sau đây khi nói về đặc điểm của đoạn găng?
A. Đoạn mã không có tác động đến các tài nguyên găng
B. Đoạn mã có tác động đến tài nguyên của tất cả các tiến trình
C. Đoạn mã có tác động đến một số tài nguyên găng của các tiến trình
D. Đoạn mã có tác động đến các tài nguyên găng của một tiến trình duy nhất.

4. Để hạn chế các lỗi có thể xảy ra do sử dụng tài nguyên găng, hệ điều hành phải điều
khiển các tiến trình như thế nào?
A. Cho phép các tiến trình sử dụng tài nguyên găng không giới hạn
B. Giới hạn số lượng tiến trình sử dụng tài nguyên găng cùng lúc
C. Không giám sát việc sử dụng tài nguyên găng của các tiến trình
D. Tự động tăng cường tài nguyên găng khi cần thiết

5. Đặc điểm của đồng bộ hóa tiến trình là gì?


A. Tăng cường sử dụng tài nguyên hệ thống
B. Đảm bảo các tiến trình chạy đúng thứ tự
C. Tự động khởi động lại hệ thống khi có lỗi xảy ra
D. Cho phép các tiến trình chạy đồng thời mà không cần phải đồng bộ

6. Người đề xuất giải pháp SEMAPHORE để đồng bộ tiến trình trong hệ điều hành?
A. Bill Gates
B. Steve Jobs
C. Edsger W. Dijkstra
D. Tim Berners-Lee

7. Giải pháp SEMAPHORE được đề xuất năm nào?


A. 1945
B. 1965
C. 1985
D. 2005

8. Người đề xuất giải pháp MONITORS trong đồng bộ hóa?


A. Alan Turing
B. C. A. R. Hoare
C. Grace Hopper
D. Linus Torvalds

9. Giải pháp MONITORS trong đồng bộ hóa được đề xuất năm nào?
A. Năm 1960
B. Năm 1985
C. Năm 1974
D. Năm 2000

10. Giải pháp PETERSON được sử dụng để giải quyết vấn đề gì trong đồng bộ hóa?
A. Vấn đề tạo deadlock.
B. Vấn đề truy cập không đồng thời vào dữ liệu.
C. Vấn đề truy cập vào vùng nhớ chia sẻ đồng thời giữa nhiều tiến trình.
D. Vấn đề tạo race condition.

11. Khi các tiến trình có sự tương tác với tiến trình khác, hai yêu cầu cơ bản cần phải được
thỏa mãn là:
A. Đồng bộ hóa (synchronization) và việc sử dụng ngắt (interrupt).
B. Tương tranh (contention) và phân chia tài nguyên (resource allocation).
C. Đồng bộ hóa (synchronization) và giao tiếp (communication).
D. Độ ưu tiên (priority) và phân loại (classification).

12. Khi giải quyết bài toán miền găng, điều kiện nào sau đây là không cần thiết:
A. Không có hai tiến trình nào ở trong miền găng cùng một lúc
B. Phải giả thiết tốc độ các tiến trình, cũng như về số lượng bộ xử lí
C. Một tiến trình bên ngoài miền găng không được ngăn cản các tiến trình khác vào miền
găng
D. Không có tiến trình nào phải chờ vô hạn để được vào miền găng

13. Trong các giải pháp đồng bộ tiến trình sau, giải pháp nào vi phạm điều kiện “Không có
hai tiến trình cùng ở trong miền găng cùng lúc”?
A. Sử dụng biến cờ hiệu
B. Sử dụng luân phiên
C. Giải pháp Peterson
D. Tất cả các đáp án

14. Nhiệm vụ của hệ điều hành và người lập trình trong quá trình đồng bộ hóa là gì?
A. Đồng bộ hóa tiến trình là quá trình giúp các tiến trình chạy nhanh hơn
B. Nhiệm vụ của hệ điều hành trong quá trình đồng bộ hóa là viết mã lệnh để đồng bộ hóa
các tiến trình
C. Nhiệm vụ của người lập trình trong quá trình đồng bộ hóa là điều chỉnh phần cứng để tối
ưu hóa quá trình đồng bộ hóa
D. Nhiệm vụ của hệ điều hành và người lập trình trong quá trình đồng bộ hóa là đảm
bảo các tiến trình chạy đúng thứ tự và tránh xung đột với nhau

15. Những thuận lợi của việc sử dụng các chỉ thị phần cứng đặc biệt để tổ chức đồng bộ
hóa tiến trình bao gồm gì?
A. Nó chỉ thích hợp với các tiến trình chạy trên hệ thống nhiều CPU.
B. Nó rất phức tạp và khó xác định độ chính xác.
C. Nó không thể được sử dụng để hỗ trợ cho nhiều đoạn găng.
D. Nó thích hợp với một số lượng bất kỳ các tiến trình cả trên hệ thống một CPU lẫn hệ
thống nhiều CPU, khá đơn giản và có thể được sử dụng để hỗ trợ cho nhiều đoạn găng; mỗi
đoạn găng có thể định nghĩa cho nó một biến riêng.

16. Giải pháp MESSAGE PASSING (truyền thông điệp) trong đồng bộ hóa và giao tiếp giữa
các tiến trình có ưu điểm gì?
A. Có thể thực hiện trên cả hai hệ thống một CPU và nhiều CPU, trên cả hệ thống tập trung
lẫn hệ thống phân tán, đặc biệt là trong hệ thống client-server.
B. Đảm bảo tính riêng tư và bảo mật dữ liệu.
C. Đảm bảo tính nhất quán và đúng đắn của dữ liệu.
D. Cung cấp khả năng mở rộng linh hoạt và phân phối công việc.

17. Các hàm của truyền thông điệp (MESSAGE PASSING) trên thực tế có dạng tương tự như
hai hàm sau:
A. Send(source, message): gửi thông điệp từ tiến trình nguồn. Receive(destination, message):
nhận thông điệp đến tiến trình đích.
B. Send(source, destination, message): gửi thông điệp từ tiến trình nguồn đến tiến trình đích.
Receive(source, message): nhận thông điệp từ tiến trình nguồn.
C. Send(destination, message): gửi thông điệp đến tiến trình đích. Receive(source,
message): nhận thông điệp từ tiến trình nguồn.
D. Send(message): gửi thông điệp đến một tiến trình đích đã được chỉ định trước. Receive():
nhận thông điệp từ bất kỳ tiến trình nào.
18. Với giải pháp Monitor, việc tổ chức truy xuất đặc quyền được thực hiện bởi:
A. Lập trình viên, thông qua việc sử dụng các biến khóa (lock variables) và các phương thức
đồng bộ hóa.
B. Hệ điều hành, thông qua cơ chế semaphore và mutex.
C. Trình biên dịch, thực hiện việc truy xuất đặc quyền.
D. Các tiến trình trong hệ thống, tự động tạo ra các khối mã đồng bộ hóa.

19. Giải pháp MONITOR của Hoare có các tính chất gì sau đây?
A. Các biến và cấu trúc dữ liệu bên trong monitor chỉ có thể được thao tác bởi các thủ tục
được định nghĩa bên trong monitor đó.
B. Một tiến trình muốn vào monitor phải tạo ra một thủ tục và đặt vào monitor đó.
C. Tại một thời điểm, có nhiều tiến trình được hoạt động bên trong monitor.
D. Monitor của Hoare không hỗ trợ việc đồng bộ và truy cập đặc quyền đến các tài nguyên
chia sẻ.

20. Các tính chất của giải pháp MONITOR theo định nghĩa của C.A.R. Hoare bao gồm:
A. Các biến và cấu trúc dữ liệu bên trong monitor có thể được thao tác bởi bất kỳ tiến trình
nào.
B. Một tiến trình muốn vào monitor phải gọi một thủ tục của monitor đó.
C. Tại một thời điểm, có thể có nhiều tiến trình được hoạt động bên trong monitor.
D. Không có đáp án nào đúng

21. Việc sử dụng các chỉ thị phần cứng đặc biệt để tổ chức đồng bộ hóa tiến trình có những
thuận lợi gì?
A. Nó chỉ thích hợp với một số lượng nhỏ các tiến trình trên hệ thống một CPU.
B. Nó khá phức tạp và khó xác định độ chính xác.
C. Nó thích hợp với bất kỳ tiến trình nào trên hệ thống một CPU hoặc hệ thống nhiều CPU.
D. Nó không thể được sử dụng để hỗ trợ cho nhiều đoạn găng.

22. Các giải pháp đồng bộ hóa do lập trình viên xây dựng không được ưa chuộng vì:
A. Đòi hỏi kiến thức lập trình cao và phức tạp.
B. Tiêu thụ CPU trong thời gian chờ vào miền găng ("busy waiting") và khó mở rộng.
C. Đòi hỏi sử dụng ngắt và truyền thông giữa các tiến trình.
D. Gây ra tình trạng đua nhau (race condition) trong việc truy cập tài nguyên chung.

23. Lập trình viên có thể sử dụng các cơ chế đồng bộ do phần cứng, hệ điều hành hay trình
biên dịch trợ giúp. Các cơ chế này bao gồm:
A. Busy waiting và race condition.
B. Sử dụng ngắt và truyền thông giữa các tiến trình.
C. Cơ chế phụ thuộc vào kiến thức lập trình cao và phức tạp.
D. Semaphore, monitor, trao đổi thông điệp.

BÀI 6: Tắc nghẽn


1. Tắc nghẽn (DeadLock) là gì?
A. Trạng thái trong hệ thống có ít nhất hai tiến trình đang chạy đồng thời.
B. Trạng thái trong hệ thống có ít nhất hai tiến trình đang thực hiện các công việc khác nhau.
C. Trạng thái trong hệ thống có ít nhất hai tiến trình đang dừng chờ lẫn nhau và chúng không
thể chạy tiếp được.
D. Trạng thái trong hệ thống có ít nhất hai tiến trình không thể thực hiện các công việc khác
nhau.

2. Hiện tượng tắc nghẽn (DeadLock) trong hệ thống phát sinh do nguyên nhân gì?
A. Sự xung đột về tài nguyên của hai hoặc nhiều tiến trình đang hoạt động đồng thời trên hệ
thống.
B. Sự xung đột giữa các tiến trình đang thực hiện các công việc khác nhau.
C. Sự xung đột giữa các tiến trình đang dừng chờ lẫn nhau.
D. Sự xung đột giữa các tiến trình đang chạy đồng thời.

3. Khi xảy ra tắc nghẽn cần bao nhiêu điều kiện cần xuất hiện đồng thời?
A. 1 điều kiện
B. 2 điều kiện
C. 3 điều kiện
D. 4 điều kiện

4. Ngăn chặn tắc nghẽn (Deadlock Prevention) nhằm đảm bảo gì trong hệ thống?
A. Đảm bảo sự tương tác giữa các tiến trình
B. Đảm bảo ít nhất một trong bốn điều kiện cần của tắc nghẽn không xảy ra
C. Tăng cường tính bảo mật của hệ thống
D. Cung cấp các tài nguyên mới cho các tiến trình

5. Ngăn chặn tắc nghẽn (Deadlock Prevention), có bao nhiêu điều kiện cần để đảm bảo không
xảy ra tắc nghẽn?
A. 2 điều kiện
B. 3 điều kiện
C. 4 điều kiện
D. 5 điều kiện

6. Tránh tắc nghẽn (Deadlock Avoidance) hệ điều hành dựa vào thông tin nào để quyết định
thỏa mãn yêu cầu tài nguyên của tiến trình?
A. Thông tin về ưu tiên của tiến trình
B. Thông tin về kích thước của tiến trình
C. Thông tin về số lượng tài nguyên có sẵn trong hệ thống
D. Thông tin về tài nguyên mà tiến trình yêu cầu và sử dụng

7. Trạng thái an toàn trong hệ thống là trạng thái nào?


A. Trạng thái trong đó không có tắc nghẽn xảy ra
B. Trạng thái trong đó có tắc nghẽn xảy ra
C. Trạng thái trong đó các tiến trình đợi lâu nhất được phục vụ trước
D. Trạng thái trong đó hệ thống không thể thỏa mãn các yêu cầu tài nguyên của các tiến trình

9. Giải thuật tránh tắc nghẽn được thực hiện như thế nào?
A. Không kiểm tra trạng thái cấp phát tài nguyên vì không liên quan đến tránh tắc nghẽn.
B. Kiểm tra trạng thái cấp phát tài nguyên để đảm bảo hệ thống không rơi vào deadlock.
C. Ngừng cấp phát tài nguyên cho các tiến trình để đảm bảo không xảy ra deadlock.
D. Xóa các tiến trình đang chờ tài nguyên để đảm bảo không xảy ra deadlock.

10. Để ngăn chặn điều kiện chờ đợi luẩn quẩn, ta có phương pháp nào sau đây?
A. Giới hạn số lượng tiến trình trong hệ thống.
B. Sắp xếp thứ tự cho tất cả loại tài nguyên và yêu cầu tài nguyên theo thứ tự đó.
C. Thu hồi tài nguyên đang được sử dụng bởi một tiến trình khi tiến trình khác yêu cầu.
D. Thiết lập một thời gian chờ tối đa cho các tiến trình yêu cầu tài nguyên.

11. Cách nào sau đây được sử dụng để ngăn chặn điều kiện giữ và đợi?
A. Đảm bảo rằng tiến trình chỉ yêu cầu một tài nguyên một lần.
B. Đảm bảo rằng mỗi tiến trình yêu cầu toàn bộ tài nguyên cần thiết một lần.
C. Đảm bảo rằng khi tiến trình yêu cầu tài nguyên, nó không giữ bất kỳ tài nguyên nào khác.
D. Thiết lập một thời gian chờ tối đa cho các tiến trình yêu cầu tài nguyên.

12. Trạng thái nào sau đây được gọi là trạng thái KHÔNG an toàn trong hệ thống?
A. Trạng thái mà hệ thống không tồn tại chuỗi an toàn.
B. Trạng thái mà hệ thống tồn tại chuỗi an toàn.
C. Trạng thái mà hệ thống đã xảy ra deadlock.
D. Trạng thái mà hệ thống đang trong quá trình cấp phát tài nguyên.

13. Trong các biện pháp ngăn chặn tắc nghẽn sau, biện pháp nào dễ ảnh hưởng đến việc bảo
vệ tính toàn vẹn dữ liệu của hệ thống:
A. Tiến trình phải yêu cầu tất cả các tài nguyên trước khi xử lí
B. Khi một tiến trình yêu cầu một tài nguyên mới và bị từ chối, nó phải giải phóng tài nguyên
đang bị chiếm giữ, sau đó được cấp phát trở lại cùng lần với tài nguyên mới
C. Hệ thống loại trừ ra tài nguyên mà các tiến trình bị khoá đang chiếm giữ và thu hồi lại khi
tiến trình thoát khỏi tình trạng bị khoá
D. Không có đáp án nào đúng

14. Để ngăn chặn tắc nghẽn chúng ta phải đảm bảo tối thiểu một trong các điều kiện gây ra
tắc nghẽn không được xảy ra, trong các điều kiện sau điều kiện nào là khó có khả năng thực
hiện được:
A. Có sử dụng tài nguyên không thể chia sẻ
B. Sự chiếm giữ và yêu cầu thêm tài nguyên không thể chia sẻ
C. Không thu hồi được tài nguyên từ tiến trình đang giữ chúng
D. Tồn tại một chu kì trong đồ thị cấp phát tài nguyên

15. Trong đồ thị cấp phát tài nguyên, tài nguyên được thể hiện bằng:
A. Hình tròn
B. Hình thoi
C. Hình vuông
D. Hình tam giác
16. Trong đồ thị cấp phát tài nguyên, tiến trình được thể hiện bằng:
A. Hình tròn
B. Hình thoi
C. Hình vuông
D. Hình tam giác

BÀI 7: Quản lý bộ nhớ


1. Địa chỉ thực tế mà trình quản lí bộ nhớ nhìn thấy và thao tác là:
A. Địa chỉ logic
B. Địa chỉ vật lý
C. Không gian địa chỉ
D. Không gian vật lý

2. Tập hợp tất cả địa chỉ ảo phát sinh bởi một chương trình gọi là:
A. Không gian địa chỉ
B. Không gian vật lí
C. Địa chỉ vật lí
D. Địa chỉ logic

3. Vào thời điểm nào sau đây tiến trình chỉ thao tác trên địa chỉ ảo, không bao giờ thấy được
các địa chỉ vật lí?
A. Thời điểm biên dịch
B. Thời điểm nạp
C. Thời điểm xử lí
D. Thời điểm kết thúc thực thi

4. Thuật toán chọn đoạn trống để thoã mãn nhu cầu cho một tiến trình (trong phân đoạn vùng
nhớ)
A. First-fit
B. Best-fit
C. Worst-fit
D. Không câu nào đúng

5. Hiện tượng phân mảnh là:


A. Vùng nhớ bị phân thành nhiều vùng không liên tục
B. Vùng nhớ trống được dồn lại từ các mảnh bộ nhớ nhỏ rời rạc
C. Tổng vùng nhớ trống đủ để thoã mãn nhu cầu nhưng các vùng nhớ này lại không liên tục
nên không đủ để cấp cho tiến trình khác
D. Không có đáp án nào đúng

6. Thuật toán chọn vùng trống đầu tiên đủ lớn để nạp tiến trình là:
A. First-fit
B. Best-fit
C. Worst-fit
D. Không câu nào đúng
7. Thuật toán chọn vùng trống nhỏ nhất nhưng đủ lớn để nạp tiến trình là:
A. First-fit
B. Best-fit
C. Worst-fit
D. Không câu nào đúng

8. Thuật toán chọn vùng trống lớn nhất để nạp tiến trình là:
A. First-fit
B. Best-fit
C. Worst-fit
D. Không câu nào đúng

9. Trong kỹ thuật phân trang nếu kích thước không gian địa chỉ là 2^m kích thước trang là
2^n câu nào sau đây phát biểu chính xác:
A. n-m bit cao của địa chỉ ảo biểu diễn số hiệu trang và n bit thấp cho biết địa chỉ tương đối
trong trang
B. m-n bit thấp của địa chỉ ảo biểu diễn số hiệu trang và n bit cao cho biết địa chỉ tương đối
trong trang
C. m-n bit cao của địa chỉ ảo biểu diễn số trang và n bit thấp cho biết bước nhảy
D. Không có đáp án nào đúng

10. Nhiệm vụ chính của việc quản lý bộ nhớ là:


A. Tổ chức và quản lý bộ nhớ vật lý và logic
B. Định vị và tái định vị các tiến trình
C. Chia sẻ và bảo vệ bộ nhớ cho các tiến trình
D. Tất cả các ý trên

11. Trong quản lý bộ nhớ, khái niệm “Không gian vật lý” là?
A. Tập hợp các địa chỉ logic
B. Tập hợp các ô nhớ vật lý
C. Tập hợp các địa chỉ vật lý
D. Tập hợp các địa chỉ vật lý và ô nhớ vật lý

12. Trong quản lý bộ nhớ, khái niệm “Không gian địa chỉ” là?
A. Tập hợp các địa chỉ vật lý
B. Là tập hợp tất cả các địa chỉ logic phát sinh bởi một chương trình
C. Tập hợp các ô nhớ vật lý và địa chỉ logic
D. Không câu nào đúng

13. Kỹ thuật ánh xạ bộ nhớ. Phát biểu nào sau đây là sai?
A. Ánh xạ bộ nhớ là một kỹ thuật được sử dụng trong lĩnh vực máy tính để ánh xạ vùng nhớ
của một ứng dụng vào vùng nhớ của hệ điều hành.
B. Hệ thống sẽ sử dụng ánh xạ bộ nhớ để liên kết địa chỉ logic của chương trình với địa chỉ
vật lý tương ứng trong bộ nhớ.
C. Hệ thống sẽ sử dụng ánh xạ bộ nhớ để liên kết địa chỉ vật lý trong bộ nhớ với địa chỉ logic
của chương trình
D. Ánh xạ bộ nhớ giúp tăng tốc độ truy xuất dữ liệu lên đáng kể

14. Chọn phát biểu sai khi nói về việc “Chuyển đổi địa chỉ logic thành địa chỉ vật lý” trong
phương thức cấp phát liên tục?
A. Có công thức chuyển đổi
B. Là thao tác ánh xạ bộ nhớ
C. Có thể tìm được địa chỉ logic dựa trên số hiệu trang, kích thước trang và bước nhảy
D. Các ý trên đều sai

15. Trong phương thức cấp phát liên tục: Việc ánh xạ bộ nhớ được thực hiện ở những thời
điểm nào?
A. Biên dịch; nạp dữ liệu; giải mã lệnh.
B. Nhận lệnh; giải mã lệnh; biên dịch; thực thi lệnh.
C. Tìm nạp; giải mã lệnh; thực thi; lưu trữ.
D. Biên dịch; nạp chương trình; thực thi lệnh.

16. Việc chống phân mảnh bộ nhớ trong phương thức cấp phát liên tục. Phát biểu nào sau đây
là sai?
A. Đề ra các chiến lược cấp phát hợp lý
B. Áp dụng kỹ thuật tái định vị các tiến trình
C. Sử dụng kỹ thuật pipeline
D. Sử dụng kỹ thuật hoán vị

17. Chiến lược cấp phát vùng nhớ liên tục nhằm giảm thiểu kích thước vùng nhớ trống không
sử dụng được. Phát biểu nào sau đây là sai?
A. Cấp phát vùng nhớ trống liên tục đầu tiên đủ lớn
B. Cấp phát vùng nhớ trống liên tục cuối cùng đủ lớn
C. Cấp phát vùng nhớ trống liên tục nhỏ nhất đủ lớn
D. Cấp phát vùng nhớ trống liên tục lớn nhất đủ lớn

18. Trong phương thức cấp phát liên tục: Ánh xạ bộ nhớ tại thời điểm nạp chương trình, công
thức nào sau đây là đúng?
A. Địa chỉ vật lý = Segment * 16 + Offset
B. Địa chỉ vật lý = Địa chỉ logic * 16 + Địa chỉ ảo
C. Địa chỉ vật lý = Địa chỉ bắt đầu + Địa chỉ logic
D. Địa chỉ vật lý = Địa chỉ bắt đầu + Địa chỉ cuối
19. Trong phương thức cấp phát liên tục: Ánh xạ bộ nhớ tại thời điểm thực thi chương trình,
khi “địa chỉ logic” < “giá trị thanh ghi giới hạn”, thì địa chỉ vật lý được tính bằng công thức
nào sau đây?
A. Địa chỉ vật lý = Segment * 16 + Offset
B. Địa chỉ vật lý = Giá trị logic * 16 + Địa chỉ ảo
C. Địa chỉ vật lý = Giá trị thanh ghi nền + Địa chỉ logic
D. Địa chỉ vật lý = Địa chỉ bắt đầu + Địa chỉ logic
20. Ưu điểm ánh xạ bộ nhớ tại thời điểm thực thi chương trình so với thời điểm nạp chương
trình, phát biểu nào sau đây là sai?
A. Có thể tái định vị tiến trình
B. Tiến trình có thể truy cập vào vùng nhớ cấp cho tiến trình khác.
C. Áp dụng các kỹ thuật giảm thiểu hiện tượng phân mảnh
D. Khả năng kiểm soát địa chỉ mà tiến trình truy cập

21. Ưu điểm của cấp phát không liên tục so với cấp phát liên tục là gì?
A. Cấp phát không liên tục cho phép tối ưu hóa sử dụng tài nguyên và tăng tính linh hoạt
trong việc quản lý bộ nhớ.
B. Cấp phát không liên tục có kỹ thuật quản lý đơn giản hơn cấp phát liên tục
C. Cấp phát liên tục đòi hỏi cấu hình phần cứng mạnh hơn so với phương pháp cấp phát
không liên tục.
D. Tất cả các ưu điểm trên

22. Trong chức năng tìm kiếm nhanh trong Page Table thì TLB viết tắt của từ nào?
A. Translation look-aside buffer
B. Table look-aside buffer
C. Translation left buffer
D. Table left buffer

23. Trong kỹ thuật phân đoạn: STBR viết tắt của cụm từ nào?
A. Search Table Base Register
B. Static Table Base Register
C. Stack Table Base Register
D. Segment Table Base Register

24. Trong kỹ thuật phân đoạn: STLR viết tắt của cụm từ nào?
A. Search Table Length Register
B. Static Table Left Register
C. Segment Table Length Register
D. Stack Table Left Register

25. Giả sử bộ nhớ chính được phân vùng có kích thước theo thứ tự là 600k, 500k, 200k,300k,
các tiến trình theo thứ tự yêu cầu cấp phát có kích thước 212K, 417K, 112K, 426K. Nếu sử
dụng thuật toán Best-fit quá trình cấp phát bộ nhớ sẽ như thế nào:
A. 212K->600K, 417K->500K, 112K->300K, 426K->200K
B. 212K->600K, 417K->500K, 112K->200K, 426K->300K
C. 212K->300K, 417K->500K, 112K->200K, 426K->600K
D. Không câu nào đúng

26. Trong kỹ thuật phân trang, phát biểu nào sau đây là sai?
A. Sau khi trang được nạp vào bộ nhớ, bảng trang chứa địa chỉ nền của trang trong bộ nhớ vật

B. Mỗi địa chỉ logic được chia thành hai phần: số hiệu trang (page) và bước nhảy
(displacement, offset).
C. Bước nhảy là khoảng cách từ địa chỉ đầu tiên của trang đến địa chỉ logic.
D. Công thức tính địa chỉ vật lý: Địa chỉ vật lý = (số hiệu trang)x(kích thước trang)+(bước
nhảy)

27. Trong kỹ thuật phân trang, công thức tính địa chỉ nào sau đây là đúng?
A. Địa chỉ logic = (số hiệu trang)x(kích thước trang)+(bước nhảy)
B. Địa chỉ logic = (số hiệu khung trang)x(kích thước khung trang)+(bước nhảy)
C. Địa chỉ vật lý = (số hiệu trang)x(kích thước trang)+(bước nhảy)
D. Địa chỉ vật lý = (số hiệu khung trang)x(bước nhảy)+(kích thước khung trang)

28. CPU truy xuất dữ liệu trong TLB với thời gian 40ns, truy xuất bộ nhớ thông thường là
120ns. Giả sử tỷ lệ tìm thấy khung trang trong TLB đạt 90%. Tìm thời gian trung bình mỗi
lần truy xuất dữ liệu của CPU?
A. 48 ns
B. 52 ns
C. 168 ns
D. 172 ns

BÀI 8: Quản lý bộ nhớ ảo


1. Thuật toán thay thế trang đã ở trong bộ nhớ vật lý lâu nhất là:
A. FIFO
B. LRU
C. Tối ưu
D. NRU

2. Chọn câu sai khi nói về thuật toán LRU:


A. Là thuật toán thay thế một trang, sẽ chọn trang đã không được dùng trong một khoảng thời
gian lâu nhất trong quá khứ
B. Thay thế vị trí dùng nhiều nhất trong thời gian gần đây
C. Đây này là giải thuật thay thế trang tối ưu tìm kiếm lùi theo thời gian
D. Được áp dụng nhiều trong thực tế

3. Số khung trang tối thiểu cần cấp phát cho một tiến trình được quy định bởi:
A. Kiến trúc máy tín
B. Dung lượng bộ nhớ vật lí có thể sử dụng
C. Người lập trình
D. Không câu nào đúng

4. Nếu tổng số khung trang yêu cầu của các tiến trình trong hệ thống vượt quá số khung trang
có thể sử dụng, hệ điều hành sẽ:
A. Huỷ bỏ tiến trình nào dùng nhiều khung trang nhất
B. Tạm dừng tiến trình nào đó giải phóng khung trang cho tiến trình khác hoàn tất
C. Huỷ bỏ tiền trình đang dùng ít khung trang nhất
D. Không câu nào đúng
5. Trong các thuật toán sau thuật toán nào không là thuật toán cấp phát khung trang?
A. Cấp phát công bằng
B. Cấp phát theo tỉ lệ kích thước
C. Cấp phát theo thứ tự trước sau.
D. Cấp phát theo độ ưu tiên.

6. Lỗi trang là gì ?
A. là việc CPU yêu cầu truy xuất đến một trang được đánh dấu valid
B. là việc CPU yêu cầu truy xuất đến một trang được đánh dấu invalid
C. là việc bộ nhớ hông truy xuất được data
D. là việc CPU không kịp xử lý dữ liệu

7. Trong quản lý bộ nhớ ảo, để hệ thống không bị chậm thì ta cần làm gì?
A. tăng dung lượng bộ nhớ RAM
B. làm cho xác suất lỗi trang thấp
C. làm cho xác suất lỗi trang cao
D. tăng khả năng xử lý của CPU

8. Thuật toán LRU có thể được cài đặt bằng cách nào sau đây?
A. Sử dụng bộ đếm
B. Sử dụng con trỏ
C. Sử dụng thuật toán phân trang
D. Tất cả các câu đều sai

9. Thuật toán thay thế trang mà chọn trang lâu được sử dụng nhất trong tương lai thuộc loại
nào?
A. FIFO
B. LRU
C. Tối ưu
D. Xấp xỉ LRU

10. Trong thuật toán thay thế trang “cơ hội thứ hai nâng cao”, trang được chọn là trang nào?
A. Trang đầu tiên được tìm thấy trong lớp có độ ưu tiên thấp nhất và khác rỗng.
B. Trang đầu tiên được tìm thấy trong lớp có độ ưu tiên cao nhất và khác rỗng.
C. Trang cuối cùng được tìm thấy trong lớp có độ ưu tiên thấp nhất và khác rỗng
D. Trang cuối cùng được tìm thấy trong lớp có độ ưu tiên cao nhất và khác rỗng

11. Thuật toán thay thế trang dùng thời điểm cuối cùng trang được truy xuất là thuật toán:
A. FIFO
B. LRU
C. Tối ưu
D. Xấp xỉ LRU

12. Bit Dirty trong cấu trúc của 1 phần tử bảng trang có ý nghĩa:
A. Cho biết trang nào đã được truy xuất đến và trang nào không
B. Cho biết trang đó có tồn tại trong bộ nhớ hay không
C. Cho biết trang đó đã bị thay đổi hay chưa để cập nhật trang trên đĩa
D. Không có đáp án nào đúng

13. Nguyên lý cơ bản của bộ nhớ ảo là gì?


A. dựa trên kỹ thuật hàng đợi
B. dựa trên kỹ thuật phân trang
C. dựa trên kỹ thuật phân đoạn
D. dựa trên kỹ thuật phân trang và phân đoạn

14. Khi thực hiện kỹ thuật demand paging hoặc demand segmentation, cần thiết phải có sự hỗ
trợ của:
A. tất cả phần cứng máy tính
B. RAM
C. ROM
D. CPU

15. Công thức tính thời gian trung bình cho một truy xuất trang t là:
A. t = (1-p)*m*n
B. t = (1-p)*m + p*p
C. t = (1-p)*m + p*n
D. t = (m-1)*m + p*n

16. Gọi m=20ns là thời gian truy xuất nếu không bị lỗi trang, n=200ns là thời gian truy xuất
khi phải xử lý lỗi trang, p=50% là xác suất xảy ra lỗi trang, thời gian trung bình cho một truy
xuất trang t là:
A. 120ns
B. 110ns
C. 100ns
D. 90ns

17. Gọi m=40ns là thời gian truy xuất nếu không bị lỗi trang, n=350ns là thời gian truy xuất
khi phải xử lý lỗi trang, p=60% là xác suất xảy ra lỗi trang, thời gian trung bình cho một truy
xuất trang t là:
A. 120ns
B. 110ns
C. 100ns
D. 226ns

18. Tính thời gian trung bình cho một truy xuất trang khi biết: Xác suất xảy ra lỗi trang là
50%, thời gian truy xuất nếu không bị lỗi trang là 50ns, thời gian truy xuất khi phải xử lý lỗi
trang là 250ns.
A. 120ns
B. 150ns
C. 100ns
D. 240ns

You might also like