Hi Saifi

Thanx Saifi.Your description gives a good description on how to move
forward to familiarise ourself with a new platform.
With no doubts your steps along with valuable suggestion others have given will 
help .

With Regards
Varunjith


>
> Hi Varunjith:
>
> When travelling to a new city it is important to carry a map !
>
> So we know the main landmarks, the intersections, transit points,
> tourist attractions, eat outs, localities and other road details
> at a glance.
>
> First time visitors will also go for local sight-seeing tours
> that help understand the city better and develop an appreciation.
> Additionally, one may make choice of mode of travel to spend more
> time on some visits.
>
> There is also a lot of difference between "sight seeing" and "roaming" !
>
> The above highlighted "common sense" using a tour analogy is also
> "required" when looking a large, professionally written code base
> like FreeBSD OS, Linux kernel, Open Office, Firefox, KDE, QT, PostgreSql
> etc.
>
> Here are some things that i would do everytime i had to work with
> a large code base:
>
> 1. get the code base
>
> 2. get a top level functional view of the various components
>
> 3. get familiarized with the module names
>
> 4. identify the task or goal to achieve
>
> 5. if the task maps to hardware, read up the specs
>
> 6. make use of search database creation tools
>
> 7. use the tool to look at the code
>
> 8. establish the sequence of inovacations in a framework
>
> 9. try and build the select module or the code base
>
> 10. refine the goal and goto step 4.
>
> 11. if task accomplished, exit by documenting what i did.
>
> It would help a lot to look at very specific situations or cases
> or even better, start with a bug, so that the goal is always very
> clear !
>
> Most kernel code bases also require you to discern between
> . normal function calls
> . call backs
> . and very importantly trampolines
>
> This kind of approach when iterated over few specific situations
> will lead to better understanding of some of the parts of the code
> base.
>
> The knowledge you gain is the new platform on which you can base
> your further explorations.
>
> Hope this helps. Good luck.
>
> thanks
> Saifi.

Reply via email to