diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/fbos/compiler.h | 6 | ||||
| -rw-r--r-- | include/fbos/init.h | 4 | ||||
| -rw-r--r-- | include/fbos/sched.h | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/include/fbos/compiler.h b/include/fbos/compiler.h index b88bb0b..c26c05c 100644 --- a/include/fbos/compiler.h +++ b/include/fbos/compiler.h @@ -19,16 +19,18 @@ #endif /* __KERNEL__ */ /* - * Multiple aliases for 32/64-bit integers which have their definition on the + * Multiple aliases for integer types which have their definition on the * standard library. */ +typedef short int16_t; typedef int int32_t; typedef long ssize_t; typedef long int64_t; -typedef unsigned long size_t; +typedef unsigned short uint16_t; typedef unsigned int uint32_t; +typedef unsigned long size_t; typedef unsigned long uint64_t; typedef unsigned long uintptr_t; diff --git a/include/fbos/init.h b/include/fbos/init.h index c4d0a85..978eebe 100644 --- a/include/fbos/init.h +++ b/include/fbos/init.h @@ -3,11 +3,9 @@ #include <fbos/compiler.h> -extern struct task_struct init_task; - // Extract the executables from the initrd that is located at `base_addr` and // has the given `size`. -void extract_initrd(const char *const base_addr, uint64_t size); +void extract_initrd(const unsigned char *const base_addr, uint64_t size); // The entry point for the kernel. void start_kernel(void *dtb); diff --git a/include/fbos/sched.h b/include/fbos/sched.h index 5cfc2ba..ff56f32 100644 --- a/include/fbos/sched.h +++ b/include/fbos/sched.h @@ -1,6 +1,8 @@ #ifndef __FBOS_SCHED_H_ #define __FBOS_SCHED_H_ +#include <fbos/compiler.h> + enum task_id { TASK_UNKNOWN = -1, TASK_INIT = 0, @@ -11,6 +13,10 @@ enum task_id { struct task_struct { void *stack; + const void *addr; + uint64_t entry_offset; }; +extern struct task_struct tasks[4]; + #endif // __FBOS_SCHED_H_ |
