Hi all, Sorry all of you. I am extremely sorry for being so late in sending this mail. I am a prosepective GSoC 2008 student. I am very much interested in the idea of implementing procfs on HURD. This idea was proposed to me on our LUG (BMSLUG) mailing list a year back[1]. Back then I had very less knowledge of HURD and any UNIX system or their variants in general as a programmer though I was using GNU/Linux just like an end user from 3 years then. So I did not take up the task then. Now I am much used to GNU/Linux and have learnt general API programming on UNIX systems. Though I have not contributed any code to the Linux Kernel directly, I have a little understanding of how the code is structured and how it works.
So as soon as I saw the idea on the proposed projects list on 24th I was very much inspired and motivated to take this project for this Summer. I immediately thought of working on this. And I thought I could post to the mailing list once I have a fair understanding of the proc filesystem. Hence the delay in posting. I did go through few guides and tutorials on procfs on GNU/Linux system. Main guides include [2] and [3]. I am also going through the procfs Documentation in the Linux 2.6 Kernel source located at kernel-source/Documentation/filesystems/proc.txt[4]. Please give me some time to go through it fully since it is a pretty huge documentation and it takes some time to digest it. I hope you guys understand how difficult it is to understand things for beginners like me in the beginning.
I have a working Installation of the GNU system[Debian GNU/HURD K-16], I checked out the CVS code of procfs in the hurdextras repo. I also read the Documentation thats there in the CVS, the README file[5]. I am also going through the code. I hope you people understand that going through the entire code and understanding in less than 5 days is quite difficult for beginners. Kindly co-operate. I will defintely go through the code. Though I have understood what translators are I am not aquainted with translator programming. I am also learning that part still. Since the requirement says this project would require "learning translator programming", I am learning it from HURD Hacking Guide.
Since Google has given us the whole of April and May to build a strong relationship with the community, I will utilize this time to become well versed in translator programming, general HURD programming and Hacking and also with the current implementation of procfs in HURD. I will also utilize this time to draw a neat plan of what needs to be done(though we would have comeup with a rough plan while submitting the application itself, at this stage I would like to refine things and make the plan rocksolid). So as soon as SoC begins on May 28th I can start right away with coding.
So I request you all to guide me through this process and help me come up with a proposal. I think its bit difficult to port all the features in GNU/Linux procfs to HURD in 3 months by a single person, though its not impossible(I also think its not necessary to port each and every feature thats available in GNU/Linux). So by having a discussion here we can finalize on what are the most important requirements that we need to focus at the very moment and draw a schedule for this summer so that the goals can be reached.
I think most important of all the features that are to be made available are proc/<pid>/* features which are very important to implement process related functionalities. So we need to focus on it at the moment.
Those features include /proc/<pid>/cpu /proc/<pid>/cwd correcting the problems in /proc/<pid>/environ /proc/<pid>/mem completing /proc/<pid>/stat /proc/cmdline /proc/swaps
We can also think of /proc/<pid>/attr/* features if they are feasible and if you people suggest to go ahead.
What are your suggestions? Please Help me.
(This is only a rough idea of what can be done. I will draw the plan after discussion here is complete. I am open for all your inputs. I will be available in #hurd at the time which is convinient to you all. Please inform me so I can make myself available at that time. Please help me.)
"When liberty is taken away by force it can be restored by force. When it is relinquished voluntarily by default it can never be recovered" - Dorothy Thompson