Hi,
My name is Ayan Agrawal, and I would like to apply as a collaborator in GSOC for NetBSD for the project Emulating missing linux syscalls (350h), I’m also a newcomer to NetBSD (and to Open Source)
I’m very excited to learn more and work on this project so if there are any doubts regarding me, please feel free to reach me through this email.
About your project
My goal for the project is to learn more about Operating Systems and the code underneath which runs them and to understand how one can contribute to open-source software.
Code of the implemented system call (at least 1) along with any necessary documentation going briefly over the code.
First, I will need to identify a missing system-call and then choose them which is within my skills to implement, followed by a barebone implementation that would serve as a proof of concept, this should be done by mid-term.
After mid-term, the remaining code would be done ensuring it compiles with the kernel and passes all the test cases.
Port of software
· If your working area is the core NetBSD operating system: have you installed NetBSD and made first experiences with hands-on configuration? Have you rebuilt the kernel and the userland, either in full or in parts? If you plan to work on pkgsrc, have you installed packages from source and binary? Have you created a package on your own?
I haven’t installed NetBSD or compiled its kernel but I have experience in compiling kernels and using shell scripts.
· Have you found the relevant places that your project is based on in the source code, and read through it?
Yes, I have found the NetBSD source code and I have also looked through last year’s GSOC project (https://github.com/cosmologistPiyush/emul-linux-syscalls) which implemented splice system-call, the abstract there is a good starting point.
· How will your project integrate into NetBSD? (Userland tool, kernel subsystem, driver, patch set, pkgsrc, ...)
Kernel
· What interfaces in NetBSD will your project use? (Go into details here! What module/file names, functions, data structures etc. are of relevance for your project?)
(https://github.com/NetBSD/src/blob/trunk/sys/kern/syscalls.c)
· To what degree are you familiar with those interfaces? (not/some/very, details?)
To some degree, I hope to learn more about it with time
· Can you list some prior projects that you have worked on so far? Include details like programming language, duration, number of people involved, project goal, if you used CVS, SVN or similar, and whatever else we may find thrilling! If you have a CV/resume online, feel free to include a link.
I once made a simple "operating system" in C and Assembly, which booted a shell and was able to take input and print on screen, this was a hobby project to learn about operating systems and kernel-level code. (https://github.com/ayan312002/Syndicate-OS)
I also have experience programming microcontrollers/microprocessors in C/C++ and completed a course in Advanced Computer Architecture.
· Do you have any prior experience with programming NetBSD? In what area? If you did send some problem reports (PRs) or patches, please include references.
No, I don’t have any prior experience with NetBSD.
· How do we contact you for question, comments, suggestions, etc.?
Feel free to contact me over this email (ayanagr03%gmail.com@localhost)
Thank You