Hello tech-kern, My name is Ilia, and I am an undergraduate computer engineering student. I am writing to introduce myself and declare my intent to spend my summer working on adding missing Linux syscalls to the compat_linux translation layer. While this is a personal project and not affiliated with Google Summer of Code, I plan to treat the time commitment and deliverables as seriously as though it were.
My background includes C programming and CPU hardware design on FPGAs, but this will be my first non-trivial contribution to an open-source project and my first dive into kernel development. To prepare, I have spent the past few weeks reading through texts on operating system fundamentals (Advanced Programming in the UNIX Environment, The Design and Implementation of the 4.4BSD Operating System, and Understanding the Linux Kernel). To get hands-on experience with the NetBSD ecosystem, CVS, and the GNATS system, I recently submitted a patch for a minor pluralization bug in the shutdown(8) utility (PR bin/60248). Going through the submission and getting feedback on it from the developers has been a great way to understand the workflow. My roadmap for the immediate future includes: - Finding the missing syscalls: I plan to start by investigating the y-cruncher binary, as reported in PR 59589 (Linux emulation fails on y-cruncher). I will trace its execution on my amd64 NetBSD QEMU environment to identify exactly which syscalls or features it is missing. I will also test other Linux binaries to map out additional gaps. - Finalizing a timeline: Once I have traced the missing syscalls for y-cruncher (or another suitable binary), I will share a detailed project timeline for the remaining 3 months of my summer. I am very open to suggestions if the community has a specific Linux binary or missing syscall they would prioritize for compatibility over y-cruncher. Thank you for your time. I am eagerly looking forward to any advice, feedback, or suggested reading materials as I begin this project. Best regards, Ilia
