lkml.org 
[lkml]   [2002]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: C++ and the kernel
    * Richard B. Johnson (root@chaos.analogic.com) wrote:
    >
    > I would like to rewrite the kernel in FORTRAN because this was
    > one of the first languages I learned.
    >
    > Seriously, the kernel MUST be written in a procedural language.
    > It is the mechanism by which something is accomplished that defines
    > an operating system kernel.
    >
    > C++ is an object-oriented language, in fact the opposite of a
    > procedural language. It is not suitable.

    Bollox!

    There are many places in the kernel that are actually very OO - look at
    filesystems for example. The super_operations sturcture is in effect a
    virtual function table.

    Sure making every file an object is probably OTT; but large scale things
    like a filesystem, a network device or the like probably actually fit
    very well.

    Sure, there are a lot of features of C++ to stay clear of - exception
    handling probably being one of them, and I wouldn't let the C++ stuff
    anywhere near the memory management code.

    Point being that it is a case of using the write tool for the job. C++
    douesn't add any extra overhead just by calling it C++ and not using any
    of the features; careful use of the features where appropriate does no
    harm and might actually make the code cleaner, and possibly more
    efficient.

    I will agree going head in and just throwing C++ at it is a bad thing.

    Dave

    ---------------- Have a happy GNU millennium! ----------------------
    / Dr. David Alan Gilbert | Running GNU/Linux on Alpha,68K| Happy \
    \ gro.gilbert @ treblig.org | MIPS,x86,ARM, SPARC and HP-PA | In Hex /
    \ _________________________|_____ http://www.treblig.org |_______/
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:22    [W:0.022 / U:4.340 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site