Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Untitled Quiz

Total questions: 27

Worksheet time: 14mins

Name
Class
Date
1.

Chọn một API phù hợp điền vào chỗ trống trong câu lệnh sau để tạo một task trong hệ điều hành FreeRTOS: ____(vLedTask1, (signed portCHAR *) "LED_PD12", STACK_SIZE, NULL, 0, NULL);

a)

vTaskDelete

b)

QueueCreate

c)

vTaskStartScheduler()

d)

xTaskCreate

2.

Hệ điều hành FreeRTOS là gì?

a)

Hệ điều hành thời gian thực mã nguồn mở

b)

Hệ điều hành mã nguồn đóng

c)

Hệ điều hành thương mại

d)

Hệ điều hành dành riêng cho một loại vi điều khiển

3.

Trạng thái "Suspended" của một task trong FreeRTOS có nghĩa là gì?

a)

Task đã hoàn thành

b)

Task bị treo và chỉ trở lại khi được gọi hàm resume

c)

Task đang đợi tài nguyên

d)

Task đang thực thi

4.

Task Idle trong FreeRTOS có chức năng gì?

a)

Đảm bảo rằng bộ đếm chương trình luôn có giá trị khi không có task nào khác thực thi

b)

Đảm bảo rằng CPU không bao giờ nghỉ

c)

Thực hiện các công việc quan trọng nhất trong hệ thống

d)

Xóa bộ nhớ RAM khi không sử dụng

5.

Tính năng nổi bật của FreeRTOS là gì?

a)

Có thể port (hỗ trợ) cho nhiều kiến trúc vi điều khiển

b)

Không hỗ trợ truyền thông giữa các tác vụ

c)

Dung lượng lớn và phức tạp

d)

Không thể sử dụng cho ứng dụng thương mại

6.

Trong FreeRTOS, trạng thái "Ready" của một task có nghĩa là gì?

a)

Task không sẵn sàng chạy

b)

Task đang thực thi

c)

Task bị treo

d)

Task đã sẵn sàng thực thi nhưng chưa được thực thi

7.

Trạng thái "Running" của một task trong FreeRTOS có nghĩa là gì?

a)

Task đã bị hủy

b)

Task đang đợi tài nguyên

c)

Task đã hoàn thành

d)

Task đang chiếm quyền thực thi của bộ xử lý

8.

Trạng thái "Blocked" của một task trong FreeRTOS có nghĩa là gì?

a)

Task đã bị xóa

b)

Task đang thực thi

c)

Task đã bị treo

d)

Task đang đợi một sự kiện hoặc tài nguyên

9.

Nhân (Kernel) trong FreeRTOS có nhiệm vụ gì?

a)

Thực hiện tất cả các nhiệm vụ cơ bản của hệ điều hành

b)

Thực hiện chức năng định thời

c)

Xử lý ngắt

d)

Quản lý bộ nhớ ngoài

10.

Hệ điều hành FreeRTOS được viết chủ yếu bằng ngôn ngữ lập trình nào?

a)

Java

b)

Python

c)

C

d)

C++

11.

Khi thực hiện port hệ điều hành FreeRTOS lên vi điều khiển phải thực hiện thao tác nào sau đây?

a)

Tạo ra ít nhất 2 tiến trình chạy đồng thời

b)

Khai báo cấu hình chức năng cho các chân trên vi điều khiển

c)

Các cài đặt tùy chỉnh để đảm bảo FreeRTOS hoạt động đúng trên vi điều khiển cụ thể như cấu hình kích thước ngăn xếp, kích thước vùng bộ nhớ động (heap size) và độ ưu tiên ngắt

d)

Tạo ra một tiến trình Idle

12.

Trong câu lệnh khai báo sau: #define portVIC_SYSIR2_REG (*(( volatile unsigned long *) 0xee000e20)) — từ khóa volatile xác định rằng vùng nhớ dành cho thanh ghi có thể như thế nào?

a)

Được thay đổi bởi phần cứng bất cứ lúc nào

b)

Được đọc dữ liệu bởi người lập trình

c)

Được ghi dữ liệu bởi người lập trình

d)

Không thể thay đổi bởi người lập trình

13.

Tính đa nhiệm của hệ điều hành FreeRTOS được hiểu như thế nào?

a)

Hỗ trợ nhiều thiết bị ngoại vi

b)

Chỉ cho phép chạy một tác vụ tại một thời điểm

c)

Cho phép xử lý ngắt đồng thời

d)

Cho phép chạy nhiều tác vụ song song

14.

Chọn từ khóa phù hợp điền vào chỗ trống trong câu lệnh sau để khai báo một task trong hệ điều hành FreeRTOS: ____ void vLedTask1(void *pvParameters);

a)

double

b)

static

c)

int

d)

return

15.

Câu lệnh nào sau đây khởi tạo một task đúng cú pháp?

a)

xTaskCreate(vLedTask1, (signed portCHAR *) "Task 1", STACK_SIZE, NULL, 0, NULL);

b)

xTaskCreate(vLedTask1, (signed portCHAR *) "Task 1", NULL, 0, NULL);

c)

xTaskCreate(vLedTask1, (signed portCHAR *) "Task 1", STACK_SIZE, NULL, 0, NULL);

d)

xTaskCreate(vLedTask1, (signed portCHAR *) "Task 1", STACK_SIZE);

16.

Cho câu lệnh khởi tạo một task như dưới đây, phát biểu nào sau đây là đúng? xTaskCreate(vLedTask1, (signed portCHAR *) "Task 1", STACK_SIZE, NULL, 0, NULL);

a)

vLedTask1 là một con trỏ tới hàm cần thực thi

b)

STACK_SIZE là kích thước bộ nhớ dành cho task

c)

Câu lệnh trên để hủy task vLedTask1

d)

Số 0 trong câu lệnh cho biết đây là task được thực thi đầu tiên

17.

Một hệ điều hành thời gian thực khác với hệ điều hành thông thường ở điểm nào?

a)

Không có tính tiên định

b)

Không hỗ trợ đa nhiệm

c)

Chỉ hỗ trợ một mức ưu tiên

d)

Có tính tiên định và đáp ứng thời gian nghiêm ngặt

18.

FreeRTOS hỗ trợ bao nhiêu mức ưu tiên cho các task?

a)

Ba mức ưu tiên

b)

Chỉ một mức ưu tiên duy nhất

c)

Hai mức ưu tiên

d)

Không giới hạn số mức ưu tiên

19.

FreeRTOS phù hợp nhất với loại ứng dụng nào?

a)

Ứng dụng desktop

b)

Ứng dụng web

c)

Ứng dụng những có sử dụng giao diện đồ họa

d)

Ứng dụng những thời gian thực nhỏ

20.

Khi thực hiện port hệ điều hành FreeRTOS lên vi điều khiển KHÔNG phải thực hiện thao tác nào sau đây?

a)

Các hàm chân vào/ra của vi điều khiển

b)

Cài đặt và cấu hình bộ định thời để kích hoạt bộ lập lịch (scheduler) của FreeRTOS

c)

Các đoạn mã để quản lý các ngắt phần cứng và phần mềm, cũng như đảm bảo các ngắt này tương thích với việc chuyển đổi ngữ cảnh

d)

Viết mã khởi tạo hệ thống và bộ nhớ, thiết lập môi trường cần thiết trước khi FreeRTOS bắt đầu chạy

21.

Trong FreeRTOS, hàm nào được dùng để bắt đầu một task?

a)

vTaskStart()

b)

xTaskCreate()

c)

createTask()

d)

taskStart()

22.

Cho hai Task vLedTask1 và vLedTask2 đã được tạo như dưới đây trong chương trình cho STM32F407:

a)

xTaskCreate

b)

vTaskStartScheduler()

c)

xQueueCreate

d)

vTaskDelete

23.

Chọn cú pháp khai báo đúng của một Task trong FreeRTOS, nhận tham số thông qua con trỏ pvParameters.

a)

static int vLEDTask1( void *pvParameters ){ /* các lệnh */ }

b)

static void vLEDTask1( void *pvParameters ){ /* các lệnh */ }

c)

void vLEDTask1( void pvParameters ){ /* các lệnh */ }

d)

static void vLEDTask1( void pvParameters ){ /* các lệnh */ }

24.

?

a)

Bộ xử lý số thực

b)

Bộ điều khiển ngắt NVIC

c)

Đơn vị bảo vệ bộ nhớ

d)

Timer hệ thống

25.

hihihi ?

a)

unsigned long – 16 bit

b)

unsigned long – 32 bit

c)

unsigned int – 32 bit

d)

unsigned long – 64 bit

26.

?

a)

Bit 0

b)

Bit 3

c)

Bit 1

d)

Bit 2

27.

hahahah?

a)

Bộ xử lý ngắt NVIC

b)

Bộ xử lý số thực

c)

Đơn vị bảo vệ bộ nhớ

d)

Timer hệ thống