wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Merry Driver Go Round

Total questions: 45

Worksheet time: 15mins

Name
Class
Date
1.

Đâu KHÔNG là một kiểu kiến trúc hệ điều hành?

a)

Layered

b)

Micro

c)

Marco

d)

Hybrid

2.

HAL là viết tắt của...

(a)  

3.

Windows NT Kernel là một ví dụ cho kiểu kiến trúc hệ điều hành nào?

a)

monolithic

b)

micro

c)

hybrid

d)

layered

4.

Hệ điều hành là một tập các ... thực hiện quản lý các ... và tài nguyên hệ thống

a)

chương trình / ứng dụng

b)

phần mềm / tác vụ

c)

phần mềm hệ thống / ứng dụng

d)

phần mềm hệ thống / đối tượng

5.

Rings trong hệ điều hành là các lớp ... cho phép triển khai ... và chia sẻ tài nguyên hiệu quả

a)

phân quyền / phân quyền tối thiểu

b)

ứng dụng / quản trị ứng dụng

c)

giao thức / vận chuyển thông tin

d)

bảo vệ / phân quyền tối thiểu

6.

Trong hệ điều hành có bao nhiêu rings?

a)

4+1

b)

3+1

c)

4

d)

3

7.

Đâu là thứ tự khởi tạo một process?

a)

tải chương trình vào memory -> tạo stack, heap -> tạo thread -> scheduler chạy

b)

tải chương trình vào memory -> tạo stack, heap -> tạo process control block -> tạo program counter -> tạo thread -> scheduler chạy

c)

tải chương trình vào memory -> tạo stack, heap -> tạo process control block -> tạo thread -> scheduler chạy

d)

tải chương trình vào memory -> tạo stack, heap -> tạo process control block -> tạo program counter -> scheduler chạy

8.

Một đối tượng hoạt động trong bộ nhớ, thực hiện các công việc được chỉ định, được chạy bởi scheduler được gọi là gì?

a)

program

b)

process

c)

thread

d)

application

9.

[CHỌN NHIỀU] Đâu là các trạng thái của process trong Windows

a)

zombie

b)

orphan

c)

terminated

d)

suspend

10.

[CHỌN NHIỀU] Đâu là những thành phần được chia sẻ giữa các thread?

a)

state

b)

code segment

c)

data segment

d)

stack

11.

System call là gì?

a)

Các lời nhắc hệ thống, được gửi từ kernel mode tới user mode hoặc từ ngược lại

b)

Các lời nhắc giữa các process với nhau

c)

Các lời nhắc hệ thống, được gửi từ user mode xuống kernel mode

d)

Các lời nhắc hệ thống, được gửi giữa các thành phần trong kernel với nhau

12.

Tín hiệu được gửi từ phần cứng để báo cho hệ thống biết về một hoạt động IO cần xử lý được gọi là gì?

a)

Software interrupt

b)

Hardware interrupt

c)

Interprocess communication (IPC)

d)

Signal

13.

ACID là viết tắt của...

a)

Atomicity
Correlation
Incremental
Durability

b)

Atomicity
Concurrency
Iterrative
Durability

c)

Atomicity
Conductivity
Isolation
Dynamic

d)

Atomicity
Consistency
Isolation
Durability

14.

[ENGLISH] Hiện tượng thứ tự thực hiện process/thread không theo ý muốn dẫn đến sai sót dữ liệu được gọi là

(a)  

15.

[ENGLISH] Hiện tượng 2 thread/process cùng truy cập vào một critical section để đọc/ghi dữ liệu được gọi là ...

(a)  

16.

[ENGLISH] Hiện tượng 2 đối tượng chờ đợi lẫn nhau trên cùng một tài nguyên được gọi là (a)  

17.

BSOD là viết tắt của ...

(a)  

18.

IRP được sinh ra từ đâu?

a)

IO Manager

b)

Memory Manager

c)

User application

d)

Syscall

19.

[CHỌN NHIỀU] Những nhận nào sau đây đúng về driver?

a)

là một phần mềm

b)

là phần cứng hệ thống

c)

có thể là software driver hoặc device driver

d)

bắt buộc phải có ít nhất một device object đi kèm

20.

[CHỌN NHIỀU] Những nhận định nào sau đây đúng về Bus driver?

a)

Gần với HAL nhất

b)

Là Function driver

c)

Là Device Driver

d)

Tương tác với Bus

21.

[CHỌN NHIỀU] Những nhận định nào sau đây đúng?

a)

Các filter driver không có khả năng xử lý IRP

b)

Device node có một hoặc nhiều device object

c)

Một device được quản lý bởi một driver

d)

Một device object được quản lý bởi một driver

22.

[CHỌN NHIỀU] Khi kết nối một thiết bị mới vào máy tính, điều gì xảy ra?

a)

Nếu có driver tương ứng trước đó, PnP Manager thực hiện load driver và tạo device object tương ứng

b)

Nếu không có driver tương ứng, PnP Manager thực hiện tải driver từ Windows Store

c)

Nếu không có registry key tương ứng với thiết bị, PnP Manager thực hiện tìm kiếm file cài đặt driver phù hợp trong hệ thống

d)

Nếu không nhận diện được thiết bị, hệ thống sẽ yêu cầu người dùng cài đặt driver chủ động

23.

Đâu là file mang thông tin và chỉ dẫn cài đặt driver?

a)

*.sys

b)

*.cat

c)

*.cer

d)

*.inf

24.

Driver với altitude nào sẽ được load cuối cùng?

a)

1345

b)

1234

c)

1345.123

d)

1345.134

25.

[CHỌN NHIỀU] Đâu là hàm bắt buộc phải có của một driver?

a)

DriverEntry

b)

DriverUnload

c)

AddDevice

d)

Cleanup

26.

[ENGLISH] Các thủ tục được gọi để xử lý các IRP được gọi là...

(a)  

27.

Đâu là hướng xử lý đúng khi DriverEntry thất bại?

a)

Gọi DriverUnload

b)

Giải phóng tài nguyên đã cấp phát, trả mã lỗi phù hợp

c)

Trả mã lỗi hoặc throw exception phù hợp

d)

Gọi KeBugCheck với mã lỗi phù hợp

28.

Device object là gì?

a)

Một thiết bị vật lý được kết nối vào hệ thống

b)

Một đại diện cho mội đối tượng vật lý trong hệ thống, được driver quản lý

c)

Một đại diện cho mội đối tượng trong hệ thống, được driver quản lý

d)

Một thiết bị vật lý hoặc một ứng dụng trong hệ thống, được driver quản lý

29.

Khi nào có thể throw exception?

a)

Khi trong một abitrary thread

b)

Khi trong một non-abitrary thread

c)

Khi trong DriverEntry

d)

Khi trong DriverUnload

30.

[CHỌN NHIỀU] Paged-memory có thể sử dụng được khi IRP ở mức nào?

a)

PASSIVE_LEVEL

b)

APC_LEVEL

c)

DISPATCH_LEVEL

d)

HIGH_LEVEL

31.

Vai trò của MDL là gì?

a)

Trỏ đến vùng nhớ dưới kernel mà user mode process có thể ghi vào được

b)

Trỏ tới vùng nhớ trên user mode mà kernel mode có thể lưu vào được

c)

Ánh xạ vùng nhớ tại kernel mode và user mode

d)

Trỏ tới vùng nhớ dưới kernel mode mà sau đó sẽ được copy lên user mode

32.

Phương thức truyền dữ liệu giữa user mode và kernel mode trong đó dữ liệu được copy qua lại giữa buffer của hai không gian được gọi là?

a)

System buffer

b)

IOCTL

c)

MDL

d)

Buffered IO

33.

Phương thức giao tiếp trong đó thông tin được biểu diễn được dưới dạng một lệnh điều khiển đi kèm với một tín hiệu hệ thống chuẩn khác được gọi là gì?

a)

Buffered IO

b)

Direct IO

c)

IOCTL

d)

IRP

34.

Để sử dụng Direct IO cho giao tiếp trực tiếp qua IRP, nhận định nào dưới đây là đúng?

a)

Gán cờ DO_DIRECT_IO cho Driver Object

b)

Cung cấp một buffer giao tiếp thông qua ReadFile và truy cập thông qua MDL tại kernel

c)

Cung cấp một buffer giao tiếp thông qua DeviceIoControl và truy cập thông qua MDL tại kernel

d)

Gán cờ DO_DIRECT_IO cho Device Object và cung cấp một buffer giao tiếp thông qua DeviceIoControl

35.

Khi nào sử dụng pDeviceObject->AssociatedIrp->SystemBuffer ?

a)

Khi pDeviceObject->Flags có giá trị DO_BUFFERED_IO

b)

Khi muốn đọc dữ liệu đầu vào từ DeviceIoControl

c)

Khi muốn ghi dữ liệu đầu ra cho DeviceIoControl

d)

Khi muốn ghi dữ liệu đầu vào thông qua DispatchRead của IRP_MJ_READ

36.

Marco FILE_WRITE_ACCESS có ý nghĩa gì?

a)

Kernel được đọc dữ liệu trong buffer của user thông qua IOCTL

b)

Kernel được ghi dữ liệu vào buffer của user thông qua IOCTL

c)

Kernel được đọc dữ liệu trong buffer của user thông qua IRP

d)

Kernel được ghi dữ liệu vào buffer của user thông qua IRP

37.

Khi một IOCTL được gán cờ METHOD_IN_DIRECT, làm thế nào để ghi dữ liệu trả cho user?

a)

Sử dụng MDL và ghi vào output buffer người dùng cung cấp

b)

Sử dụng System Buffer và ghi vào input buffer người dùng cung cấp

c)

Sử dụng System Buffer và ghi vào output buffer mà người dùng cung cấp

d)

Không thể trả dữ liệu cho người dùng

38.

Nếu một IOCTL được xác định cờ METHOD_OUT_DIRECT, làm thế nào để đọc dữ liệu đầu vào?

a)

Sử dụng MDL và đọc input buffer người dùng cung cấp

b)

Sử dụng System Buffer và đọc input buffer người dùng cung cấp

c)

Sử dụng MDL và đọc output buffer người dùng cung cấp

d)

Sử dụng System Buffer và đọc output buffer người dùng cung cấp

39.

[CHỌN NHIỀU] Để thực hiện đồng bộ hóa cho một vùng code ghi dữ liệu, có thể sử dụng phương thức nào sau đây?

a)

Mutex

b)

FastMutex

c)

Spinlock, tùy thuộc mức IRQL

d)

Semaphore với count = số biến cần bảo vệ trong vùng code ghi dữ liệu

40.

Dispatcher object nào sẽ giải phóng thread gửi signal tới nó, sau đó tự động trở về trạng thái non-signaled?

a)

Notification event

b)

Fast Mutex

c)

Synchronized event

d)

Mutex

41.

Khi sử dụng kỹ thuật dynamic struct allocation để cấp phát bộ nhớ động lưu dữ liệu có độ dài không xác định trước, giá trị offset có ý nghĩa gì?

a)

Xác định khoảng cách từ struct base tới vị trí kết thúc ghi dữ liệu

b)

Xác định khoảng cách từ struct base tới vị trí bắt đầu ghi dữ liệu

c)

Xác định khoảng cách từ vị trí bắt đầu ghi dữ liệu tới vị trí kết thúc ghi dữ liệu

d)

Xác định khoảng cách từ struct end tới vị trí bắt đầu ghi dữ liệu

42.

Vì sao không sử dụng FastMutex để khóa các vùng đọc/ghi dữ liệu?

a)

FastMutex hoạt động ở IRQL=DISPATCH_LEVEL

b)

Các hoạt động đọc/ghi dữ liệu hoạt động ở IRQL=DISPATCH_LEVEL

c)

FastMutex hoạt động ở IRQL<=APC_LEVEL

d)

Các hoạt động đọc/ghi dữ liệu hoạt động ở IRQL<=APC_LEVEL

43.

Vì sao không được gây page fault khi ở IRQL >= DISPATCH_LEVEL?

a)

Do Memory Manager chỉ có thể hoạt động ở IRQL <= APC_LEVEL

b)

Do khi này KeBugCheck sẽ được gọi gây BSOD

c)

Do việc tìm page để swap vào bộ nhớ gây tràn stack frame

d)

Do khi này IRQL sẽ đột ngột giảm

44.

Trong cùng mức IRQL, nếu một IRP được gửi tới trong khi một IRP khác đang được xử lý, hệ thống sẽ...

a)

Tạo một system thread mới để xử lý IRP này

b)

Lên một Deferred Procedure Call (DPC) cho IRP này

c)

IRP mới sẽ bị bỏ qua

d)

IRP hiện tại sẽ bị block

45.

Stack location cho biết gì?

a)

Program counter hiện tại

b)

Instruction đang được thực hiện

c)

Vị trí của IRP trong device node

d)

Vị trí của Driver trong Driver stack