Initial commit: Schunix as it stands before the SchOS rename
An x86-64 operating system built from xv6, now largely rewritten: SMP, a copy-on-write root filesystem (SchFS), PCI/USB/virtio drivers, a TTF rasteriser, and a Linux-numbered syscall ABI. No history before this point -- the tree was never under version control. This commit exists so the rename that follows has something to undo to.
This commit is contained in:
commit
d0f7acf9eb
275 changed files with 51417 additions and 0 deletions
25
lib/initcode.S
Normal file
25
lib/initcode.S
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
#include "syscall.h"
|
||||
#include "traps.h"
|
||||
|
||||
.code64
|
||||
.section .text
|
||||
.global start
|
||||
|
||||
start:
|
||||
lea init(%rip), %rdi
|
||||
lea argv(%rip), %rsi
|
||||
mov $SYS_exec, %rax
|
||||
syscall
|
||||
|
||||
exit:
|
||||
mov $SYS_exit, %rax
|
||||
syscall
|
||||
jmp exit
|
||||
|
||||
init:
|
||||
.string "/bin/init"
|
||||
|
||||
.p2align 3
|
||||
argv:
|
||||
.quad init
|
||||
.quad 0
|
||||
Loading…
Reference in a new issue