mirror of
https://github.com/drasko/codezero.git
synced 2026-01-12 02:43:15 +01:00
- Implemented reasonable way to suspend task.
- A task that has a pending suspend would be interrupted
from its sleep via the suspender task.
- If suspend was raised and right after, task became about to sleep,
then scheduler wakes it up.
- If suspend was raised when task was in user mode, then an irq suspends it.
- Also suspends are checked at the end of a syscall so that if suspend was
raised because of a syscall from the task, the task is suspended before it
goes back to user mode.
- This mechanism is very similar to signals, and it may lead as a base for
implementing signal handling.
- Implemented common vma dropping for shadow vm object dropping and task exiting.
libposix Copyright (C) 2007 Bahadir Balban Despite the name, this is a library that supports only a small portion of posix functions. Highest priority POSIX functions are: shmat shmget shmdt mmap munmap sbrk read readdir write lseek open close creat mkdir mknod link unlink fork clone execve getpid wait kill getenv setenv Currently supported functions are: shmat shmget shmdt mmap read readdir write lseek open close creat mkdir mknod fork Functions to be supported in the near future are: munmap link unlink getpid execve clone wait kill exit sbrk getenv setenv Other calls: pipe mount unmount swapon New ones will be added as needed.