Thực hành Hệ điều hành - Bài thực hành số 4: Cách viết một SystemCall

Lập trình cho system call void Create (char* name); nghĩa là chúng ta viết
xử ly sự kiện which = SyscallException và type=SC_Create trong file
userprog/exception.cc,
Sau đây là một ví dụ mã nguồn cho system call này, chưa phải là thật hoàn
chỉnh, các bạn có thể phải viết để kiểm tra thêm các ngoại lệ 
pdf 3 trang xuanthi 30/12/2022 720
Bạn đang xem tài liệu "Thực hành Hệ điều hành - Bài thực hành số 4: Cách viết một SystemCall", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfthuc_hanh_he_dieu_hanh_bai_thuc_hanh_so_4_cach_viet_mot_syst.pdf

Nội dung text: Thực hành Hệ điều hành - Bài thực hành số 4: Cách viết một SystemCall

  1. if (len WriteMem(virtAddr+i,1,oneChar); i ++; }while(i ReadRegister(4); DEBUG (dbgFile,"\n Reading filename."); filename = User2System(virtAddr,MaxFileLength+1); // MaxFileLength là = 32 if (filename == NULL) { printf("\n Not enough memory in system"); DEBUG(dbgFile,"\n Not enough memory in system"); machine->WriteRegister(2,-1); // trả về lỗi cho chương trình người dùng delete filename; return;