Anzeige:
Ergebnis 1 bis 11 von 11

Thema: <sys/*> - Sinn und Zweck?

  1. #1
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113

    <sys/*> - Sinn und Zweck?

    Hey Amigos, wie geht's?

    Nach der Lektüre von diesem frage ich mich nun: Warum werden teilweise recht wichtige Funktionen/Funktionalitäten nicht direkt unter /usr/include, sondern unter sys/ definiert?

    Vielen Dank für eure Antworten!
    Gruß,
    /dev

  2. #2
    Registrierter Benutzer Avatar von SeeksTheMoon
    Registriert seit
    22.02.2002
    Beiträge
    762
    in sys befinden sich systemabhängige Sachen, bzw Sachen zur Systemprogrammierung. Die befinden sich nicht im Standard-include, weil es weder Standard-C Header, noch Header von irgendeinem einem Zusatz-Programm sind.
    socket.h, mount.h, elf.h usw wirst Du bestimmt nicht auf anderen Systemen finden (zumindest nicht unter Unix-Systemen)
    I haven't lost my mind - It's somewhere on a backup-disc

  3. #3
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Zitat Zitat von SeeksTheMoon
    in sys befinden sich systemabhängige Sachen, bzw Sachen zur Systemprogrammierung. Die befinden sich nicht im Standard-include, weil es weder Standard-C Header, noch Header von irgendeinem einem Zusatz-Programm sind.
    Soweit kann ich es noch unterschreiben, jedoch
    socket.h, mount.h, elf.h usw wirst Du bestimmt nicht auf anderen Systemen finden (zumindest nicht unter Unix-Systemen)
    Warum nicht? Sowohl Sockets wie erst recht das Mounten dürften doch UNIX-weit gültig sein?

    Gruß,
    /dev
    Geändert von Deever (25-04-2005 um 17:19 Uhr)

  4. #4
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    da war wohl entweder ein nicht zuwenig

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  5. #5
    Registrierter Benutzer Avatar von SeeksTheMoon
    Registriert seit
    22.02.2002
    Beiträge
    762
    ja, da habe ich mich vertippt; es sollte jetzt klar sein was ich gemeint habe
    I haven't lost my mind - It's somewhere on a backup-disc

  6. #6
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Ich hab jetzt eine Zwischenfrage: Warum eigentlich bietet die GNU libc eine Funktion mount()? Das Mounten ist ja sowieso kernelspezifisch und hat daher in der libc doch nix verloren, oder irre ich da?

    Gruß,
    /dev

  7. #7
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Zitat Zitat von Deever
    Ich hab jetzt eine Zwischenfrage: Warum eigentlich bietet die GNU libc eine Funktion mount()?
    Weil das irgendjemand mal gebraucht und eingebaut hat...

    Das Mounten ist ja sowieso kernelspezifisch und hat daher in der libc doch nix verloren, oder irre ich da?
    Naja, das steht ja auch so dort:
    These functions are Linux-specific and should not be used in programs intended to be portable.

    Wo sollte die Funktion denn sonst hin? Gibts irgendwo einen Library für kernelspezifisches Zeugs?

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  8. #8
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Du hast eigentlich Recht. Man kann die libc als "kernelspezifischen Teil" für Programme sehen.
    Mit Obigem habe ich nun auch eine Dokumentation gefunden, die das "Standard-C" abdeckt. Gibt es so etwas Ähnliches auch für die Funktionalität unter sys/?

    Gruß,
    /dev

  9. #9
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Zitat Zitat von Deever
    Gibt es so etwas Ähnliches auch für die Funktionalität unter sys/?
    Also 'zgrep "<sys/" /usr/man/man2/* | awk '{print substr($0,15,index($0,"."));}' | cut -f1 -d. | sort | uniq' liefert mir schon mal die Funktionen, ich glaub, weiter schaff ichs schon selber!
    Außer: Hat jemand hier ein anderes Unix als Linux? Die Kompatibilität bzw. Ähnlichkeit würde mich mal interessiern.

    Gruß,
    /dev

  10. #10
    Registrierter Benutzer Avatar von panzi
    Registriert seit
    04.05.2001
    Ort
    Kottingbrunn
    Beiträge
    609
    Naja, für die POSIX API gibts das hier:
    http://www.opengroup.org/onlinepubs/009695399/

    Alle POSIX kompatieblen Betriebssysteme sollten das unterstützen. (Zumindest zu einen Teil.)
    Intel Core 2 Duo CPU 2.66GHz; Nvidia GeForce 8 8800 GTS; 4GB RAM; Fedora 12; KDE-testing

  11. #11
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Jo, danke! Sieht aus, als ließe sichs parsen...

    Gruß,
    /dev

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •