System Call¶
System call là cửa ngõ chính để ứng dụng yêu cầu dịch vụ từ kernel.
Cơ chế gọi system call¶
TODO
- Lệnh
syscall(x86_64),svc #0(arm64) - Quy ước ABI: thanh ghi số hiệu và tham số
- Bảng syscall, đường đi từ entry tới hàm xử lý
vDSO¶
TODO
- Vì sao cần vDSO
- Các hàm qua vDSO:
clock_gettime,gettimeofday
Thêm một system call mới¶
TODO
SYSCALL_DEFINEx- Đăng ký vào bảng syscall
- Ví dụ tối thiểu và chương trình test
Ví dụ chạy thử¶
TODO
- Lệnh và output
Khi nào dùng / không nên dùng¶
TODO
- Ưu điểm, hạn chế
- So sánh với các interface khác
Công cụ debug¶
TODO
strace,ausyscall- ftrace với syscall tracepoint