sys_read/open/close

This commit is contained in:
2026-05-06 13:29:35 +02:00
parent 63e9a761a3
commit c061da4d81
8 changed files with 94 additions and 37 deletions
+29 -3
View File
@@ -1,7 +1,8 @@
bits 64
section .data
hello db 0x0A, 0x0D, "User program 2 speaking", 0x0A, 0x0D, 0
hello db 0x0A, 0x0D, "TEST PROGRAM...", 0x0A, 0x0D, 0
filename db "wow.txt", 0
section .text
@@ -9,7 +10,29 @@ _start:
mov rax, 0x1 ;sys_write
mov rdi, 0x1 ;stdout
lea rsi, [rel hello]
mov rdx, 27 ;count
mov rdx, 19 ;count
int 0x80
; Open a file
mov rax, 0x2 ;sys_open
lea rdi, [rel filename] ;filename
mov rsi, 0x0 ;flags
int 0x80
mov rdi, rax ;fd
mov rax, 0x0 ;sys_read
lea rsi, [rel buf] ;buf
mov rdx, 33 ;count
int 0x80
mov rax, 0x1 ;sys_write
mov rdi, 0x1 ;stdout
lea rsi, [rel buf] ;buf
mov rdx, 33 ;count
int 0x80
mov rax, 0x3 ;sys_close
mov rdi, 0x3 ;fd
int 0x80
; when we are ready to have an os specific toolchain,
@@ -22,4 +45,7 @@ _start:
int 0x80
.loop:
jmp .loop
jmp .loop
section .bss
buf resb 10
+1
View File
@@ -0,0 +1 @@
hi from a file opened in usermode