Interface between a C library and board support package

Discussion in 'C Programming' started by Bilgehan.Balban@gmail.com, Aug 18, 2005.

  1. Guest

    Hi,

    A simple question - it's not completely clear for me the interface
    between a generic C library (such as glib or newlib) and a board
    support package that implements it.

    I've looked at newlib source code, and it is clear how it is done for
    syscalls such as sys_open, sys_read, sys_write, the bsp supplies the
    corresponding _open _read _write etc. in it's own implementation.

    But how about malloc or printf? Could you briefly explain main points
    of entry between a bsp and a C library in general?

    Thanks,
    Bahadir
     
    , Aug 18, 2005
    #1
    1. Advertising

  2. Jack Klein Guest

    On 18 Aug 2005 08:28:23 -0700, wrote in
    comp.lang.c:

    > Hi,
    >
    > A simple question - it's not completely clear for me the interface
    > between a generic C library (such as glib or newlib) and a board
    > support package that implements it.


    The C language does not define any interface between the standard C
    library and any operating system, BSP, BIOS, or anything else. It
    defines an abstract API with defined properties and does not even
    specify how it is implemented at that API level, let alone levels
    beyond that.

    > I've looked at newlib source code, and it is clear how it is done for
    > syscalls such as sys_open, sys_read, sys_write, the bsp supplies the
    > corresponding _open _read _write etc. in it's own implementation.


    This level of "under the hood" detail is actually off-topic here,
    because it is not defined by the language and much of it can't be
    implemented in standard C.

    > But how about malloc or printf? Could you briefly explain main points
    > of entry between a bsp and a C library in general?


    Actually, no we can't, not here. The places you want to ask about
    this are groups like news:comp.arch.embedded, support groups for your
    particular compiler, such as news:gnu.*, support groups for your
    particular OS, if you use one (news:comp.os.linux.embedded if you are
    using Linux in an embedded system, which is becoming popular these
    days), and finally support groups for your particular embedded
    processor, if there are any, such as for example news:comp.sys.arm.

    The C language literally does not specify how the library interfaces
    to anything else, that is entirely up to the library provider.

    --
    Jack Klein
    Home: http://JK-Technology.Com
    FAQs for
    comp.lang.c http://www.eskimo.com/~scs/C-faq/top.html
    comp.lang.c++ http://www.parashift.com/c -faq-lite/
    alt.comp.lang.learn.c-c++
    http://www.contrib.andrew.cmu.edu/~ajo/docs/FAQ-acllc.html
     
    Jack Klein, Aug 19, 2005
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. anthony260
    Replies:
    1
    Views:
    3,430
  2. Mythran
    Replies:
    0
    Views:
    2,431
    Mythran
    Aug 24, 2004
  3. Krivenok Dmitry
    Replies:
    3
    Views:
    743
  4. Vijay
    Replies:
    0
    Views:
    920
    Vijay
    Dec 30, 2009
  5. Dan Janowski

    Ruby job board, community support

    Dan Janowski, May 11, 2005, in forum: Ruby
    Replies:
    4
    Views:
    119
    Dibya Prakash
    May 12, 2005
Loading...

Share This Page