Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Sep 2005 17:15:08 -0400
From:      Sandro Noel <snoel@gestosoft.com>
To:        gnn@neville-neil.com
Cc:        freebsd-small@freebsd.org
Subject:   Re: System Tree essentials UNDERSTANDING the system
Message-ID:  <7CA0DCC7-542A-4A9C-9C3B-F50903E282C4@gestosoft.com>
In-Reply-To: <m23bofvvm1.wl%gnn@neville-neil.com>
References:  <W903802119519351126194088@webmail2> <20050908165951.GE31354@odin.ac.hmc.edu> <m2vf1bwj69.wl%gnn@neville-neil.com> <E42CAEEC-0382-44D3-8A9D-38E1B3AE7B4E@gestosoft.com> <m23bofvvm1.wl%gnn@neville-neil.com>

index | next in thread | previous in thread | raw e-mail

the second tool is PTXDist

it's quite nice, and it works 80% of the time


On Sep 08, 2005, at 10:11 PM, gnn@neville-neil.com wrote:

> At Thu, 8 Sep 2005 18:00:45 -0400,
> Sandro Noel wrote:
>
>> I've just had a look at it quickly, and i was going to propose
>> building a database to organize the information but this seems
>> right.
>>
>
> It's not original to me, I have seen whole RTOSs shipped with the
> kernel APIs and docs in the code and then extracted by a similar
> method.
>
>
>> I was thinking of - let me know if you share this vue -  organizing
>> the base system into features, something like
>>
>
> Yes, that's correct approach.
>
> BTW You should use global and cscope to look around the kernel for the
> module declarations to get an idea of the system startup order.  This
> is what I did to write the chapter on system startup in the latest
> "Design and Implementation" book.
>
> To find those tools just start at www.codespelunking.org
>
> Using the parts of the tools that allow you to "find all functions
> calling X" look for:
>
> SYSINIT
>
> which will get you lines like this:
>
> SYSINIT(domain_ ## name, SI_SUB_PROTO_DOMAIN, SI_ORDER_SECOND,  
> net_add_domain, & name ## domain)
>
> This lets you know what is being started, the protocol domains, where
> it should go (SECOND), how it is started (net_add_domain()) etc.
>
> Until you understand the startup sequence you have very little chance
> of understanding the dependencies in the system.  It is not perfect
> but it is a good overall start, at least in my opinion.
>
> We ought to generate a map somehow...  Hmmm.  Have to think about
> that.
>
>
>> now, i guess this brings a question, is it possible to devide the
>> system into smaller blocks like that, while still keeping it
>> functional.  as an example. is it possible to boot the system to a
>> shell without any user files on the system. or any groups for that
>> matter.
>>
>
> It is hard but not impossible.  It requires something most of us hate,
> work ;-) Of course work is easier when shared.
>
> Later,
> George
>
>
>
>

Sandro Noel
snoel@gestosoft.com




help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7CA0DCC7-542A-4A9C-9C3B-F50903E282C4>