docs: documented the Programmable Interval Timer (PIT)

This commit is contained in:
antifallobst 2023-02-21 12:06:24 +01:00
parent 93706494ff
commit d66ba8aebf
1 changed files with 13 additions and 0 deletions

View File

@ -20,6 +20,7 @@ The single parts of the kernel are initialized in the following order:
- **[PIC] Programmable Interrupt Controller**
- **Paging**
- **Kernel Heap**
- **Graphics Renderer**
- **Scheduler**
## Interrupt handling
@ -382,6 +383,18 @@ Returns the width of the framebuffer.
#### `graphics_renderer_get_height()` - function (uint32_t)
Returns the height of the framebuffer.
### time/pit.h
#### `PIT_CHANNEL_0_PORT` - macro
The IO port, where channel 0 of the PIT (which is capable of firing IRQs) can be configured.
#### `PIT_DIVISOR` - macro
The standard divisor nox_os loads into channel 0 of the PIT.
`32768` fires an interrupt every `~27ms`, what is perfect for preemptive multithreading.
#### `pit_set_divisor(divisor)` - function (void)
Loads **_divisor_** into channel 0 of the PIT.
If **_divisor_** is smaller than 100, it will be set to 100.
## mm
### heap.h