| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #include <stdio.h>
- #include <zivuos.h>
- zv_state_t task_worker(zv_kernel_t *kernel, zv_event_t *event, zv_tid_t self, void *param) {
- puts("Task run.");
- printf("Task TID: %u. ", self);
- puts("Finish!");
- return ZV_TASK_RUNNING;
- }
- int main() {
- puts("ZivuOS basic scheduler test unit.");
- zv_kernel_t kernel[1];
- zv_task_t tasks[10];
- if (!zv_kernel_init(kernel, tasks, ZV_COUNT_TASKS(tasks))) {
- puts("KERNEL INIT FAIL.");
- }
- zv_tid_t first_tid = zv_kernel_create_process(
- kernel,
- task_worker,
- 0x02,
- NULL
- );
- if (first_tid == ZV_TID_NULL) {
- puts("CREATE PROCESS ERROR.");
- }
-
- if (zv_kernel_create_process(
- kernel,
- task_worker,
- 0x03,
- NULL
- ) == ZV_TID_NULL) {
- puts("CREATE PROCESS ERROR.");
- }
- zv_kernel_boot(kernel);
- return 0;
- }
|