contributing to fbsd

Andriy Tkachuk andrit at ukr.net
Fri Mar 25 02:53:44 PST 2005


Hi folks.

I'd like to contribute to kernel code.

I have some experience: 8 years of using fbsd
(it's actually my favourite os) and last couple years
i've studing kernel deaply using many good books like
- Bach's Design of UNIX
- Kusick's 44BSD
- Vahalia's UNIX Internals
- Stalling's Operating System
and even
- Tanenbaum's Modern Operating Systems
which i didn't liked vety much :)

my main interest is in such part of OS as
scheduling, smp, threading and resource allocation.

But i didn't code anything in this field yet
(exept patching [2005/01/26] threads/76690threads     fork hang in child for 
(-lc_r & -lthr)
in wich anyone doesn't interesting as it appeared ))

It is obviously, that one can't read theory all the time
without practice because the staff becames uninteresting ))

Last time Linux kernel appeared to be more successfull
in threading, smp, resource allocation and stuff with is
needed under heavy loaded multiprocess systems and
i'd like my favourite os to be successful in this field as well )
I understand, that this is not the question of couple man/months
and that fbsd slowly but confidently succeed in this direction.

Last time i was very interested in resource allocation stuff.
Bonwick's VMEM O(1) universal allocator appeared to be
very interesting:
http://www.usenix.org/event/usenix01/bonwick.html
as good as his cpu-wise magazines addition to
slab allocator which scales allocation on adding cpus.
Solaris use this approach.

My question is: does folks interested in implementation
of this stuff in fbsd kernel?

As I see now there is for example O(n) algorithm for
process IDs allocation... In linux it is addressed
using bit-mapping (as far as i understand).
In Oct 2003 there was topic in this list:
"Some mmap observations compared to Linux 2.6/OpenBSD"
in which allocation in mmap was discussed.
As it was appeared that fbsd use O(n) algorithm here compared
to Linux and OpenBSD. I don't know the presend state of this.

Anyway as for me it looks very attractive to have
universal O(1) facility for allocation of any kernel resources
as well as on smp-configurations than using differend
adhoc's in different parts of kernel.
I seems to me, that Linux doesn't also use some
universal allocation approach but O(1) adhocs instead.
I may mistaken in this.

What do you hackers thinks about this?

Thank you,
  Andriy Tkachuk. 



More information about the freebsd-hackers mailing list