another talk bites the dust
The kernel talk to Eddie A.’s
workshop went farely well. Apparently it’s a small workshop this term,
because only 5 people showed up for the talk. At least they
were an interested audience, with some good questions. One of
them might be interested in doing a kernel project, which is a
very pleasant surprise I didn’t expect. I gave him my contact details
and asked him to contact me so we can find a suitable
project. Suggestions?
it was nice to meet you.
Comment by talash — March 24, 2004 @ 3:29 PM |
Suggestions for kernel projects
How about the follwing suggestions:
1) implementation of the new SCTP protocol (or part of it)
for Linux Kernel.
(There is a project in sourceforge.net which deals with this subject
(sctp for linux kernel” , and
Steveens , in the new and third edition of his book ,”Unix
Network Programming” talks a lot in favor of this
protocol).
see:
http://www.amazon.com/exec/obidos/tg/detail/-/0131411551/qid=1080246051/sr=8-1/ref=pd_ka_1/103-9732670-2439013?v=glance&s=books&n=507846
2) implementation of the memory manager
(or part of it) for 128 bit Linux with
page size of 16 KB (but also supporting
page size of 32KB,64KB and 128KB).
(well,the IA64 and x86_64 implementations under
“arch” seems to be more and more used in daily life
as athlon and 64 bit amd processors penetrate the market
quite rapidly; we must look ahead!
(BTW, if I’m not wrong,the 64 bit processors both of
Intel and AMD physically support much larger pages size, which can
reach up to 64 MB, but in 64-bit linux, the max page size is
64 KB. (and 8 kb is the recommended)
3) implementation of a “basic linux kernel”
in Java (exsisting drivers ,in “c” ,could be used through JNI).
But porting non structured code to oop may really seems a
heavy ( perhaps redundant?) task. And maybe
conradictory to the Linux spirit.
regards
Rami Rosen
ramirosen@hotmail.com
Comment by Anonymous — March 25, 2004 @ 12:32 PM |
Re: Suggestions for kernel projects
Hi everyone,
I am guessing, Muli, that you were refering to me, well, first of all I must say that this is the first time I will actually participate in open source, like everyone I have been using different kind of open source projects (from Eclipse to eMule), even reported some bugs, but never really participated in it.
I feel very happy with the responsiveness of the community and I really hope that this workshop will really change and make me another contributor to the community.
About the specific projects, I don’t know what SCTP is (will be looking in a sec), and I don’t think I still have the skills for writing the memory manager (over 4 years since my last low-level coding), but, I really like Java (and using it for over 4 years), and could be very interested in the kernel implementation in Java.
Could you point me to where I could read about this, or is this an idea you just raised now and should be started from scratch.
Thanks for all of your suggestions.
Comment by ronsidi — March 26, 2004 @ 8:10 AM |
Re: Suggestions for kernel projects
Hi Rami,
Thanks for the suggestions!
> 1) implementation of the new SCTP protocol (or part of it)
> for Linux Kernel.
There are some people working on it. I don’t know their status, but we could find out.
> 2) implementation of the memory manager
> (or part of it) for 128 bit Linux with
> page size of 16 KB (but also supporting
> page size of 32KB,64KB and 128KB).
Are you talking about page clustering? (software page sizes which are different than hardware page sizes)
> 3) implementation of a “basic linux kernel”
> in Java (exsisting drivers ,in “c” ,could be used through JNI).
I like this one, except replace java with lisp 🙂
Comment by mulix — March 27, 2004 @ 11:12 PM |
Re:Re: Suggestions for kernel projects
Hello,
I was please to hear that the suggestions I had made
are of interest.
Currently only the first is applicable.
here are my comments:
1)
about SCTP protocol:
in :
http://sourceforge.net/projects/lksctp/
you may get more details on a sourceforge.net project
which deals with SCTP linux kernel implementation, etc.
You can get beta versiom (2/04),learn how to join
and become a developer, etc.
2)
about page clustering and memory management:
I did not mean that in my suggestion.
As you can underatnd from , for example,
http://lwn.net/Articles/23785/
page clustering enables
working with pages as large as 32K where the
x86 hardware works (normally) with 4K pages.
In 32 bit linux,ordinary page size is 4k.
if you will look at 64 bit linux you’ll find out that
in include\asm-ia64\page.h , the page size is declared as:
#define PAGE_SIZE (__IA64_UL_CONST(1) << PAGE_SHIFT)
wheas PAGE_SHIFT can be 12 (4K Page),13(8K Page),14(16K Page),16 (64 Page)
according to #ifedef in that same page.h (linux compilation flag)
The common page size (currently) in 64 bit linux is 8k.
What I suggested is a 128-bit memory manager which it’s common
size will be 16k page (but also will support
32k,64k,128k page sizes).
While writing Memeory Manager project which supports
such task may seem more academic now (are there
out 128 bit processors?), it may
be helpful in understanding more deeply page tables mechanism,
page faults and handling them , TLB,etc.
Moreover as I know, the other subsystems of the linux kerenl
are quite flexible regarding page size; so when
changing from 32 bit to 64 bit linux, the other subsystems
needed a little change if at all (they ususally use
PAGE_SIZE).
(Application also rarely need to know page size,and in case they
need it,
there is the library routine
get_page_size() method (glibc/include/inistd.h).
3) about linux kernel implementation in Java:
for the one who wanted to read more about it: I am not
sure he can (This idea crossed my mind without
getting trigger from anywere else ; and I am not sure at all
it is a good idea, as I explained in my former post).
And about implementing it in Lispl: I confess, I do not know Lisp.
does it has any advantagers in this aspect?
regards,
Rami
Comment by Anonymous — March 28, 2004 @ 12:35 AM
me too …
I am also looking for a kernel project to pick up…
I have been working on filesystems and LVMs at work (on Linux).
Want to do something other than that … suggestions?
Comment by jnagal — March 26, 2004 @ 5:59 AM |
Re: me too …
http://kerneljanitors.org/ has a long list of things to do. The most important thing, IMHO, is to pick somethnig that you personally care about… what do you like working on? what annoys you in the kernel?
Comment by mulix — March 27, 2004 @ 11:21 PM |
Re: me too …
Thanks for your sugeestion mulix.
What used to annoy me most in the kernel was hotplugging support for scsi disks.
When i started working on linux, we had to reboot everytime a new disk
was to be added. Then we moved on to rescaning scsi bus scripts, but they also dont work all the time.
Since all my linux customers use std redhat/suse, I have mostly concentrated on 2.4 versions that are shipped by them. I tried to
get some status from linux scsi list from time to time, but it has
mostly resulted in more confusion. There was a lot of talk about a good solution coming up in 2.5 which was then shifted to 2.7.
I need to follow that up again 🙂
Thanks for the janitors link … will look at the list.
Comment by jnagal — March 28, 2004 @ 10:58 PM