![]() ![]() You will receive a $ prompt and you can enter a very limited numer of shell commands, including peep. Make (or make install): copies your copy of the source files from ~/cs3100/lab3, builds the XV6 kernel and launches qemu to load and run xv6. The Makefile you retrieved from icarus has these commands that facilitate your workflow: ![]() Your workflow is to retrieve these source files from xv6-public so you can edit them, then copy them back into xv6-public for compilation. ![]() Syscall.c syscall.h sysproc.c trap.c user.h usys.S peep.cĪ new system call called getsyscallinfo() which retrieves the current number of times any system call has been issued since boot (hint: sysproc.c, usys.h and user.h).Ī global kernel integer named callCount (int callCount = 0 ) that is incremented each time any system call is issued (hint: trap.c)Ī new entry at the end of the system call table representing getsyscallinfo() (hint: syscall.c and syscall.h) The next step is to modify the source files needed to implement the new system call. Sudo apt-get update # refresh the apt-get database Run provided program peep that calls getsyscallinfo() a few times interspersed with other system calls, and prints out either Success or a diagnostic message to aid in debugging.īegin by installing the tools you will need for this assignment: Modify XV6 to add a new system call getsyscallinfo()and add a global integer to the kernel named callCount, initialized to zero and incremented each time a system call is made. Run XV6 under QEMU and execute shell commands to verify your installation You will then add a new system call getsyscallinfo(), which returns the value of a global kernel integer named callCount, which is incremented each time a system call is executed. In Lab3, you will download and install onto your Linux system an instance of XV6, a very small but complete operating system written in C. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |