3 Commits

Author SHA1 Message Date
xamidev e399ec6a46 alpha 0.1.121 2026-04-10 15:04:52 +02:00
xamidev dd9315f2f1 Update docs/MANUAL.md 2026-04-06 14:54:07 +02:00
xamidev f91831616c Merge pull request 'user-scheduler' (#18) from user-scheduler into main
Reviewed-on: #18
2026-04-05 19:37:15 +02:00
5 changed files with 16 additions and 7 deletions
+9 -1
View File
@@ -25,6 +25,9 @@ The recommended hardware to run PepperOS is the following:
## b. Features
- Round robin preemptive scheduling
- Coexistence of ring 0 and ring 3 processes
## II. Kernel architecture
### a. Boot process
@@ -37,4 +40,9 @@ The recommended hardware to run PepperOS is the following:
## III. Syscall table
Not yet implemented.
The syscall interface in the Pepper kernel uses the System V ABI convention for argument order.
Name | Number (%rax) | arg0 (%rdi) | arg1 (%rsi) | arg2 (%rdx) |
|---|---|---|---|---|
| sys_write | 1 | unsigned int fd | const char* buf | size_t count | |
| sys_exit | 60 | int error_code | | | |
+2 -2
View File
@@ -9,8 +9,8 @@
/* version */
#define PEPPEROS_VERSION_MAJOR "0"
#define PEPPEROS_VERSION_MINOR "0"
#define PEPPEROS_VERSION_PATCH "109"
#define PEPPEROS_VERSION_MINOR "1"
#define PEPPEROS_VERSION_PATCH "121"
#define PEPPEROS_SPLASH \
"\x1b[38;5;196m \x1b[38;5;231m____ _____\r\n\x1b[0m"\
"\x1b[38;5;196m ____ ___ ____ ____ ___ _____\x1b[38;5;231m/ __ \\/ ___/\r\n\x1b[0m"\
+1
View File
@@ -130,6 +130,7 @@ void kmain()
file = boot_ctx.module->modules[1];
process_create_user(file, "pedicel");
}
process_create("kshell", (void*)pedicel_main, 0);
scheduler_init();
printf(PEPPEROS_SPLASH);
+2 -2
View File
@@ -1,7 +1,7 @@
bits 64
section .data
hi db "hi from userland :) we did it man", 0
hi db "hi from userland :) we did it man", 0x0A, 0x0d, 0
section .text
@@ -9,7 +9,7 @@ hello:
mov rax, 0x1 ;sys_write
mov rdi, 0x1 ;stdout
lea rsi, [rel hi] ;char* buf
mov rdx, 33 ;count
mov rdx, 35 ;count
int 0x80
.end:
+2 -2
View File
@@ -1,7 +1,7 @@
bits 64
section .data
hello db 0x0A, 0x0D, "User program 2 speaking", 0
hello db 0x0A, 0x0D, "User program 2 speaking", 0x0A, 0x0D, 0
section .text
@@ -9,7 +9,7 @@ _start:
mov rax, 0x1 ;sys_write
mov rdi, 0x1 ;stdout
lea rsi, [rel hello]
mov rdx, 25 ;count
mov rdx, 27 ;count
int 0x80
; when we are ready to have an os specific toolchain,