contributing to fbsd
Brian Fundakowski Feldman
green at freebsd.org
Fri Mar 25 04:51:38 PST 2005
On Fri, Mar 25, 2005 at 04:23:33PM +0530, Andriy Tkachuk wrote:
> 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 ))
PRs can get lost or misfiled... it's just human nature.
> 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?
There is already an implementation of a slab-based allocator (uma(9)),
but this is only for the kernel. There is currently more of a growing
need for a faster MP/threading-oriented userland allocator.
> 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.
Recently added was a generic subsystem for generating and managing
unique binary identifiers, for example, pids.
The VM map algorithms are the same as ever, though. They use linear
traversal along with a cached reference to the last lookup. There
are certainly some workloads that should benefit from this, so it
definitely could be something you could work on.
--
Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\
<> green at FreeBSD.org \ The Power to Serve! \
Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\
More information about the freebsd-hackers
mailing list