31 lines
417 B
Plaintext
Raw Normal View History

2025-01-20 20:37:23 +00:00
import mem
import sys
main() {
length := 256
command := mem.alloc(length)
argv := mem.alloc(1)
envp := mem.alloc(1)
info := mem.alloc(24)
loop {
sys.write(1, "$ ", 2)
n := sys.read(0, command, length)
if n <= 0 {
return
}
// TODO: Indexing by register
command[7] = '\0'
pid := sys.fork()
if pid == 0 {
sys.execve(command, argv, envp)
return
}
sys.waitid(0, pid, info, 4)
}
}