YK
← Posts

[WEEK 10] Pintos - User Programs

2026-05-07

The keywords for this week are as follows: User program, User mode, Kernel mode, System call, and Virtual memory layout.

I learned how to transition between User space and Kernel space using syscall() and do_iret().

While working on Pintos, I realized that designing an OS requires constant caution. Although this applies to all programs, meticulous exception handling and optimization are absolutely essential for a low-level system like an OS. I truly felt the need to approach coding carefully.

Additionally, I learned how to avoid being overwhelmed by the flow of a massive codebase. I must be aware that pre-provided macros are not always the definitive answer. I need to first conceptualize the required functionality in my head, and then examine the code to verify if it aligns with my logic. Rather than blindly following the existing code, I realized I must maintain a proactive mindset, acknowledging that even provided code can be modified if necessary.