From owner-freebsd-hackers@FreeBSD.ORG Fri Mar 25 10:53:44 2005 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4F9A316A4CE for ; Fri, 25 Mar 2005 10:53:44 +0000 (GMT) Received: from mail.emict.com (brig.emict.com [212.90.172.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4584843D2F for ; Fri, 25 Mar 2005 10:53:43 +0000 (GMT) (envelope-from andrit@ukr.net) Received: from BORJA (unknown [203.199.120.221]) by mail.emict.com (Postfix) with ESMTP id D6D68148F for ; Fri, 25 Mar 2005 12:53:37 +0200 (EET) Message-ID: <006401c53128$e6c6d390$090210ac@BORJA> From: "Andriy Tkachuk" To: Date: Fri, 25 Mar 2005 16:23:33 +0530 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="koi8-r"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 Subject: contributing to fbsd X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Mar 2005 10:53:44 -0000 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.