Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
Estimating Linux

By retinaburn in MLP
Thu Mar 29, 2001 at 02:25:53 AM EST
Tags: Software (all tags)
Software

Found an interesting paper on Estimating RedHat's size. The author looks at the number of lines in RH 6.2 by what language they were written in. Also the number of lines per language by component.


Interesting numbers:
  • 4,500 person-years of development time
  • $600 million to develop in the U.S.
  • fortran - 1707 lines
  • lisp - 565861.
  • Sponsors

    Voxel dot net
    o Managed Hosting
    o VoxCAST Content Delivery
    o Raw Infrastructure

    Login

    Related Links
    o Estimating RedHat's size
    o Also by retinaburn


    Display: Sort:
    Estimating Linux | 15 comments (15 topical, editorial, 0 hidden)
    Lisp has 565861 lines. (4.00 / 2) (#1)
    by wiredog on Wed Mar 28, 2001 at 10:14:03 AM EST

    Most, if not all, of which is in emacs.

    The idea of a global village is wrong, it's more like a gazillion pub bars.
    Phage

    IIRC (none / 0) (#2)
    by retinaburn on Wed Mar 28, 2001 at 10:16:36 AM EST

    It was 80% in emacs.

    He comments: emacs (editor, and far more).

    Emacs is the operating system, linux is the driver.


    I think that we are a young species that often fucks with things we don't know how to unfuck. -- Tycho


    [ Parent ]
    80% (none / 0) (#7)
    by wiredog on Wed Mar 28, 2001 at 11:19:52 AM EST

    Certainly qualifies as "most". But then,so does 51%. So it's a degree of "mostness".

    The idea of a global village is wrong, it's more like a gazillion pub bars.
    Phage
    [ Parent ]

    EmacsOS (none / 0) (#11)
    by Elendale on Wed Mar 28, 2001 at 12:38:30 PM EST

    RMS is working (as we speak) on getting Emacs its own device drivers. Then he will make it bootable with the Hurd kernel :)

    -Elendale (its only funny because its true)
    ---

    When free speech is outlawed, only criminals will complain.


    [ Parent ]
    Emacs 21: 657292 lines of Lisp (none / 0) (#5)
    by Per Abrahamsen on Wed Mar 28, 2001 at 11:00:16 AM EST

    I just did a wc on the CVS version.

    [ Parent ]
    Umm (none / 0) (#6)
    by jabber on Wed Mar 28, 2001 at 11:16:30 AM EST

    How many of those contain only a single parenthesis?

    [TINK5C] |"Is K5 my kapusta intellectual teddy bear?"| "Yes"
    [ Parent ]

    1575 lines with a single parantheses (5.00 / 1) (#8)
    by Per Abrahamsen on Wed Mar 28, 2001 at 11:35:59 AM EST

    % egrep '^[ ]*[()][ ]*$' *.el */*.el */*/*.el | wc
    1575 2999 36617

    Other strange questions?


    [ Parent ]
    pretty interesting stuff (none / 0) (#3)
    by alprazolam on Wed Mar 28, 2001 at 10:31:54 AM EST

    But hard to get a lot of insight from it. I guess he said he was going to look into doing this for FreeBSD, etc, but I would have liked a little bit of comparison, maybe from other company's documents, if such things exists. For instance I'm guessing windows is huge, FreeBSD would be similar in size, and I have no idea about Be. I wonder what happens when you switch to the Hurd kernel.

    There is some comparison (none / 0) (#4)
    by retinaburn on Wed Mar 28, 2001 at 10:58:32 AM EST

    I'm not sure if you saw it but in section 3.6 he compares it to NASA Control Centre, Solaris and various flavs of Windows.


    I think that we are a young species that often fucks with things we don't know how to unfuck. -- Tycho


    [ Parent ]
    Comparison is silly (4.00 / 1) (#9)
    by ucblockhead on Wed Mar 28, 2001 at 11:55:25 AM EST

    It is silly to compare the SLOC of two different OSes as there is no concrete definition of what is "OS" and what is not "OS". For example, the Windows "OS" includes no programming tools other than a simple batch language, while the RedHat Linux "OS" includes C/C++, Python, Perl, etc.

    No two OSes really do the same thing. The capabilities in the shipped version are wildly divergent.
    -----------------------
    This is k5. We're all tools - duxup

    No COBOL? (3.66 / 3) (#10)
    by gmlongo on Wed Mar 28, 2001 at 12:25:28 PM EST

    What no COBOL? What kind of distro is this...

    And no MacOS (none / 0) (#12)
    by weirdling on Wed Mar 28, 2001 at 12:51:43 PM EST

    Wonder how many lines MacOS is...
    I'm not doing this again; last time no one believed it.
    [ Parent ]
    Nor any Smalltalk (none / 0) (#14)
    by retinaburn on Wed Mar 28, 2001 at 03:33:30 PM EST

    Im sensing a conspiracy ...anyone seen Rusty ?? :)

    I think that we are a young species that often fucks with things we don't know how to unfuck. -- Tycho


    [ Parent ]
    The real question is.... (none / 0) (#13)
    by scriptkiddie on Wed Mar 28, 2001 at 03:18:35 PM EST

    The real question is, How much of that code is necessary? I was recently looking at the AtheOS operating system, which is UNIX-ish but includes its own GUI and threading model. The whole thing weighs in at about 70,000 lines. It's so small that an average Joe like myself can read through the kernel source and understand more or less what it's doing.

    If operating systems were smaller by two orders of magnitude, bugs would be far easier to find, and the system would be far simpler to keep reliable. Sure, some 'hard' features like fancy 3D graphics and extensive driver support couldn't fit in a small OS, but it would avoid the vast majority of engineering complexity associated with 20 and 30 million line systems.

    Another thing - having a good interpeted language integrated into the OS could reduce complexity a lot as well. Developing in an interpreted language is often five or ten times faster, and it's often easier to modify interpreted code. I've never seen an OS that does a good job of this, however....

    Go read the article (ie, all the code is needed) (none / 0) (#15)
    by Dacta on Wed Mar 28, 2001 at 09:39:03 PM EST

    This was for the entire distribution, not just the OS (including ALL the developement tools, Emacs, TeX, etc).

    The kernel itself is 1526722 lines of code, and XFree86 is 1291745 loc. SO yes, it is large, but that's what happens when you support every imaginable bit of hardware on the planet. It would be simple to trim that down if Linux/XFree86 supported say five network cards, five video cards, no USB etc.

    Essentially you are comparing a real world operating system and all it's applications to an experimental system that works on a limited set of hardware.



    [ Parent ]
    Estimating Linux | 15 comments (15 topical, 0 editorial, 0 hidden)
    Display: Sort:

    kuro5hin.org

    [XML]
    All trademarks and copyrights on this page are owned by their respective companies. The Rest 2000 - Present Kuro5hin.org Inc.
    See our legalese page for copyright policies. Please also read our Privacy Policy.
    Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
    Need some help? Email help@kuro5hin.org.
    My heart's the long stairs.

    Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!