Implementing Process-Specific Kernel Page Tables and Hardware-Accelerated Memory Copying in RISC-V

RISC-V SV39 Page Table Mechanics In traditional operating system designs, transferring data between user space and kernel space requires software-based page table traversal (e.g., copyin and copyout). This software approach simulates the three-level page table walk, which is inherently slower than utilizing the hardware Memory Management Unit ( ...

Posted on Mon, 10 Aug 2026 16:12:26 +0000 by evilMind

Implementing Process-Specific Kernel Page Tables and Optimizing Copy Operations in xv6

Memory Layout and Page Table Management Hardware Device Mapping Hardware devices like UART0 (0x10000000L), VIRTIO0, CLINT, and PLIC have fixed physical addresses and interrupt numbers defined by hardware design. The kernel uses these addresses to communicate with devices, initialize registers, and handle interrupts. Kernel Loading and Execution ...

Posted on Fri, 19 Jun 2026 17:44:33 +0000 by zhahaman2001

Implementing xv6 User Programs: sleep, pingpong, primes, find, and xargs

This lab requires implementing five user-space programs: sleep, pingpong, primes, find, and xargs. Source code: https://github.com/InQing/xv6-operating-system/tree/util (1) sleep Requirements Write a user program that takes one argument t and calls the sleep system call to sleep for t time units. Approach This lab does not require implementing ...

Posted on Thu, 28 May 2026 17:28:46 +0000 by sapna