System call and library call

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • leoman730

    System call and library call

    This is one of the interview question this morning, hope someone can
    help out with this. Thanks.
    What is the different between System call and library call?

  • jg

    #2
    Re: System call and library call

    On May 3, 3:32 pm, leoman730 <leoman...@gmai l.comwrote:
    What is the different between System call and library call?
    A system call is a call to OS, whereas a library call is a call
    to a library.

    JG

    Comment

    • red floyd

      #3
      Re: System call and library call

      leoman730 wrote:
      This is one of the interview question this morning, hope someone can
      help out with this. Thanks.
      What is the different between System call and library call?
      >
      Here's another question. What's your C++ *language* question?

      As to your first, try Google or Wikipedia.

      Comment

      • blytkerchan

        #4
        Re: System call and library call

        On May 3, 6:32 pm, leoman730 <leoman...@gmai l.comwrote:
        This is one of the interview question this morning, hope someone can
        help out with this. Thanks.
        What is the different between System call and library call?
        C++ doesn't know about a "system". It knows about an abstract machine,
        though, and as such knows about volatile variables and I/O operations.
        In that sense, you could call "something that has an effect on the
        abstract machine" (i.e reading or writing a volatile variable or
        performing an I/O operation) a "system call", whereas any other
        function call could be coined "library call" assuming the function in
        question is implemented in a library of some sort.
        For one thing, as the effects of a program are defined in terms of
        effects on the abstract machine, "system" calls as described above
        cannot be optimized away whereas anything else could.

        rlc

        Comment

        • Jim Langston

          #5
          Re: [OT answer] System call and library call


          "leoman730" <leoman730@gmai l.comwrote in message
          news:1178231577 .159315.62880@l 77g2000hsb.goog legroups.com...
          This is one of the interview question this morning, hope someone can
          help out with this. Thanks.
          What is the different between System call and library call?
          A system call is calling a function or API that interfaces with the
          operating system.
          A library call is calling a function or API that interfaces with a library.
          The library itself may make system calls.


          Comment

          • James Kanze

            #6
            Re: System call and library call

            On May 5, 11:16 pm, "Jim Langston" <tazmas...@rock etmail.comwrote :
            "leoman730" <leoman...@gmai l.comwrote in message
            news:1178231577 .159315.62880@l 77g2000hsb.goog legroups.com...
            This is one of the interview question this morning, hope someone can
            help out with this. Thanks.
            What is the different between System call and library call?
            A system call is calling a function or API that interfaces with the
            operating system.
            A library call is calling a function or API that interfaces with a library.
            The library itself may make system calls.
            As far as the application programmer is concerned, there is no
            difference. He links against a "system library" (integrated
            with the C runtime in libc under Unix, one of four or more
            different variants under Windows). How that library achieves
            what it achieves is really an implementation detail. On the
            systems I've worked on, that actual system interface involved a
            hardware level trap or interrupt, and couldn't be directly
            called from C++; some of the functions in the "system library"
            did nothing more than map the C++ (or C) calling sequence to
            these conventions; others did more.

            It's possible that something like that is what the interviewer
            was looking for; that a system call went through some special
            hardware mechanism, e.g. to change context, pass into system
            mode, etc., where as other library calls don't. Then again,
            it's possible that he was looking for something else. Unless
            the job was for some sort of kernel level work, it's a worthless
            question.

            --
            James Kanze (Gabi Software) email: james.kanze@gma il.com
            Conseils en informatique orientée objet/
            Beratung in objektorientier ter Datenverarbeitu ng
            9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

            Comment

            • Jim Langston

              #7
              Re: System call and library call

              "James Kanze" <james.kanze@gm ail.comwrote in message
              news:1178410987 .112141.136540@ h2g2000hsg.goog legroups.com...
              On May 5, 11:16 pm, "Jim Langston" <tazmas...@rock etmail.comwrote :
              "leoman730" <leoman...@gmai l.comwrote in message
              news:1178231577 .159315.62880@l 77g2000hsb.goog legroups.com...
              This is one of the interview question this morning, hope someone can
              help out with this. Thanks.
              What is the different between System call and library call?
              A system call is calling a function or API that interfaces with the
              operating system.
              A library call is calling a function or API that interfaces with a
              library.
              The library itself may make system calls.
              As far as the application programmer is concerned, there is no
              difference. He links against a "system library" (integrated
              with the C runtime in libc under Unix, one of four or more
              different variants under Windows). How that library achieves
              what it achieves is really an implementation detail. On the
              systems I've worked on, that actual system interface involved a
              hardware level trap or interrupt, and couldn't be directly
              called from C++; some of the functions in the "system library"
              did nothing more than map the C++ (or C) calling sequence to
              these conventions; others did more.

              It's possible that something like that is what the interviewer
              was looking for; that a system call went through some special
              hardware mechanism, e.g. to change context, pass into system
              mode, etc., where as other library calls don't. Then again,
              it's possible that he was looking for something else. Unless
              the job was for some sort of kernel level work, it's a worthless
              question.

              -------------

              Which may of been exactly the answer the interviewer was looking for.
              General computer/os/program/compiler knowledge.


              Comment

              Working...