intro

INTRO(2)                    Linux-Programmierhandbuch                   INTRO(2)



BEZEICHNUNG
       Intro - Einführung in die Systemaufrufe

BESCHREIBUNG
       Abschnitt 2 des Handbuches beschreibt die Linux-Systemaufrufe. Ein
       Systemaufruf ist ein Eintrittspunkt in den Linux-Kernel. Normalerweise
       werden Systemaufrufe nicht direkt durchgeführt; stattdessen haben die
       meisten Systemaufrufe passende Wrapper-Funktionen in der C-Bibliothek,
       welche die für einen Systemaufruf nötigen Schritte ausführen (z. B.
       Umschalten in den Kernelmodus). Daher sehen Systemaufrufe genauso wie
       normale Bibliotheksfunktionen aus.

       In vielen Fällen führt die C-Bibliotheks-Wrapper-Funktion nur folgendes
       aus:

       *  Kopieren der Argumente und der eindeutigen Systemaufrufnummer in die
          Register, in denen der Kernel sie erwartet,

       *  Verbinden in den Kernelmodus; an diesem Punkt führt der Kernel die
          eigentliche Arbeit des Systemaufrufs durch,

       *  Setzen von errno, falls der Systemaufruf eine Fehlernummer
          zurückliefert, wenn der Kernel die CPU in den Benutzermodus
          zurückbringt.

       Allerdings kann in einigen Fällen eine Wrapper-Funktion mehr als das
       erledigen. Beispielsweise kann sie einige Argumente vorverarbeiten, bevor
       die Verbindung zum Kernelmodus hergestellt wird, oder einige vom
       Systemaufruf zurückgelieferte Werte nachbearbeiten. Wenn dies der Fall
       ist, wird üblicherweise auf den Handbuchseiten in Abschnitt 2 auf Details
       der C-Bibliotheks-API-Schnittstelle (normalerweise der GNU-Variante) und
       des rohen Systemaufrufs hingewiesen. Oft wird sich die BESCHREIBUNG auf
       die Schnittstelle der C-Bibliothek konzentrieren und Unterschiede zum
       Systemaufruf befinden sich im Abschnitt ANMERKUNGEN.

       Eine Liste der Linux-Systemaufrufe finden Sie unter syscalls(2).

RÜCKGABEWERT
       Bei Fehlern geben die meisten Systemaufrufe eine negative Zahl zurück
       (den negativen Wert einer der in errno(3) beschriebenen Konstanten). Der
       Wrapper der C-Bibliothek versteckt dieses Detail vor dem Aufrufenden:
       Wenn ein Systemaufruf eine negative Zahl ergibt, kopiert der Wrapper den
       Absolutwert in die Variable errno und gibt als Rückgabewert -1 aus.

       Der Wert, der von einem erfolgreichen Systemaufruf ausgegeben wird, hängt
       vom Aufruf ab. Viele Systemaufrufe geben bei Erfolg 0 zurück, aber einige
       können im selben Fall Werte ungleich Null ausgeben. Details dazu stehen
       in den zugehörigen Handbuchseiten beschrieben.

       In einigen Fällen muss der Programmierer ein Feature-Test-Makro
       definieren, um die Deklaration eines Systemaufrufs aus der im Abschnitt
       ÜBERSICHT genannten Header-Datei zu erhalten (Dort, wo es erforderlich
       ist, müssen diese Feature-Test-Makros vor dem Einbinden irgendeiner
       Header-Datei definiert werden). Für solche Fälle ist in der Handbuchseite
       das benötigte Makro beschrieben. Weitere Infos zu Feature-Test-Makros
       liefert Ihnen feature_test_macros(7).

KONFORM ZU
       Bestimmte Ausdrücke und Abkürzungen dienen der Kennzeichnung von
       UNIX-Varianten und -Standards, zu denen die Aufrufe in diesem Abschnitt
       konform sind. Siehe auch: standards(7).

ANMERKUNGEN
   Direkter Aufruf
       Meistens ist es nicht nötig, einen Systemaufruf direkt vorzunehmen, aber
       manchmal bietet die Standard-C-Bibliothek keine passende
       Wrapper-Funktion. Dann muss der Programmierer den Systemaufruf via
       syscall(2) per Hand erledigen. Früher war dies auch mit einem der
       _syscall-Makros aus _syscall(2) möglich.

   Autoren und Copyright-Bedingungen
       Den oder die Verfasser und die Copyright-Bedingungen finden Sie im Kopf
       des Quelltextes der englischen Ausgabe der Handbuchseite. Beachten Sie,
       dass sie sich von Seite zu Seite unterscheiden können! Hinweise zu den
       Copyright-Bedingungen der Übersetzung finden Sie weiter unten.

SIEHE AUCH
       _syscall(2), syscall(2), syscalls(2), errno(3), intro(3),
       capabilities(7), credentials(7), feature_test_macros(7), mq_overview(7),
       path_resolution(7), pipe(7), pty(7), sem_overview(7), shm_overview(7),
       signal(7), socket(7), standards(7), symlink(7), system_data_types(7),
       sysvipc(7), time(7)

KOLOPHON
       Diese Seite ist Teil der Veröffentlichung 5.13 des Projekts
       Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie
       Fehler gemeldet werden können sowie die aktuelle Version dieser Seite
       finden sich unter https://www.kernel.org/doc/man-pages/.


ÜBERSETZUNG
       Die deutsche Übersetzung dieser Handbuchseite wurde von Erik Pfannenstein
       <debianignatz@gmx.de> und Helge Kreutzmann <debian@helgefjell.de>
       erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General
       Public License Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder
       neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
       Sie bitte eine E-Mail an die Mailingliste der Übersetzer ⟨debian-l10n-
       german@lists.debian.org⟩.



Linux                            27. August 2021                        INTRO(2)