title: C - Starting a big project. File/Directory structure and names. Good example required
body: <p>Starting a new big C multiplatform project, what rules should one follow to avoid difficulties later? For example, as a new developer, I can have difficulties to navigate myself around Linux Kernel source code - which is a good example of highly evolvable but hard-to-step-in software structure with incosistent directory structure (e.g. <em>sound</em> directory and <em>arch</em> in the same directory level). </p>
  
  <p>As a project-architect, what should I do to avoid later traps? Of course, I need very intuitive and self-consistent naming convention for C lexems and files. But what is the good style and what is not? Should I have one-only directory or tens of them? Should I place all header files in a common <em>include</em> directory?</p>
  
  <p>Can you please give me a reference to a very good example? (any open source C project)</p>