[hydrixOS] : Re: HydrixOS API - Kritik die 2.

  • From: "Maximilian Marx" <EvilHRDIrector@xxxxxx>
  • To: <hydrixos@xxxxxxxxxxxxx>
  • Date: Sun, 1 Sep 2002 19:39:59 +0200

> glb_privat
wäre glb_private nicht besser?

----- Original Message -----
From: "Friedrich Gräter" <webmaster@xxxxxxxxxxx>
To: "Mailingliste" <hydrixos@xxxxxxxxxxxxx>
Sent: Sunday, September 01, 2002 6:01 PM
Subject: [hydrixOS] : HydrixOS API - Kritik die 2.


>
> Hallo,
> hier ist nun die erste Übersicht über die HydrixOS-API.
>
> Vom Funktionsumfang ist alles enthalten, was im Moment nützlich ist.
> Dinge, die in die Lib-C gehören (Bildschirmausgabe über die Datei stdin)
> sind nicht enthalten. Ebenso gibt es keine Unterstützung für Dinge,
> deren Implementierung im jetzigen HydrixOS-Handbuch noch nicht geplant
> sind (Netzwerke z.B.).
> Funktionen die hingegen für die Implementierung einer
> Standard-C-Bibliothek von Nöten sind (Prozessinterne Speicherverwaltung
> z.B.) oder für den Aufbau von Systemprozessen (z.B. Speicheroperationen)
> oder Funktionen für Sachen, die im HydrixOS Handbuch bereits geplant
> aber noch nicht implementiert sind (Dateiverwaltung), sind ebenfalls
> enthalten.
>
> Die Namensgebung habe ich so organisiert, dass sie nicht mit der
> Standard-Lib-C in konflikt gerät, andererseits kurz (also nicht wie
> unter win32 mit KeDasIstEinEllenLangerNameFürEineWindowsFunktion) und
> leicht einprägbar. Vorne ist ein Prefix, das ungefähr über die Kategorie
> der Funktion etwas aussagt (fs_ für Dateisystemoperationen).
>
> Die API, das ist noch wichtig zu sagen, ist nicht gleich der
> Kernel-Schnittstelle - sondern sie baut nur darauf auf.
>
> Wie auch immer, hier ist die API - fällt ein Urteil :-)
>
> cu
>
> FG
>
> --------------------------------------------------------------------------
-
> I. Speicherverwaltung
> --------------------------------------------------------------------------
-
> mem_alloc
> Reserviert einen Speicherbereich.
> --------------------------------------------------------------------------
-
> mem_free
> Gibt einen Speicherbereich frei.
> --------------------------------------------------------------------------
-
> mem_realloc
> Reallokiert einen Speicherbereich.
> --------------------------------------------------------------------------
-
> glb_publish
> Veröffentlich einen Speicherbereich zu einem
> globalen Segment
> --------------------------------------------------------------------------
-
> glb_privat
> Hebt die Veröffentlichung eines globalen
> Segmentes wieder auf.
> --------------------------------------------------------------------------
-
> glb_read
> Liest aus einem globalen Segment Daten in den
> lokalen Speicher.
> --------------------------------------------------------------------------
-
> glb_write
> Schreibt aus einem globalen Segment Daten aus
> dem lokalen Speicher.
> --------------------------------------------------------------------------
-
> glb_enter
> Sperrt ein globales Segment für den Zugriff.
> --------------------------------------------------------------------------
-
> glb_leave
> Gibt ein globales Segment für den Zugriff frei.
> --------------------------------------------------------------------------
-
> shr_mem
> Gibt Speicher über den Pageing-Dämon zum Teilen
> mit anderen Prozessen frei.
> --------------------------------------------------------------------------
-
> shr_free
> Hebt die gemeinsame Speichernutzung wieder auf.
> --------------------------------------------------------------------------
-
> shr_use
> Nutzt Speicher, der über den Pageing-Dämon zum
> Teilen mit anderen Prozessen freigegeben worden
> ist.
> --------------------------------------------------------------------------
-
> shr_let
> Entfernt gemeinsamen Speicher aus dem
> Prozessadressraum.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> II. Speicherzugriff
> --------------------------------------------------------------------------
-
> mem_copy
> Kopiert einen Speicherbereich mit Überlappung.
> --------------------------------------------------------------------------
-
> mem_ccopy
> Kopiert einen Speicherbereich bis ein Zeichen
> angetroffen wurde.
> --------------------------------------------------------------------------
-
> mem_fill
> Füllt einen Speicherbereich.
> --------------------------------------------------------------------------
-
> mem_chf
> Sucht nach dem ersten vorkommen eines Zeichens.
> --------------------------------------------------------------------------
-
> mem_find
> Sucht nach dem ersten vorkommen eines Strings.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> III. Prozessverwaltung
> --------------------------------------------------------------------------
-
> prc_abort
> Bricht den aktuellen Prozess ab.
> --------------------------------------------------------------------------
-
> prc_execm
> Erzeugt einen neuen Prozess anhand eines
> globalen Speichersegmentes.
> --------------------------------------------------------------------------
-
> prc_execf
> Erzeugt einen neuen Prozess anhand einer Datei.
> --------------------------------------------------------------------------
-
> prc_exece Erzeugt einen leeren Prozess.
> --------------------------------------------------------------------------
-
> prc_destroy
> Vernichtet einen Prozess.
> --------------------------------------------------------------------------
-
> prc_duplicate
> Kopiert den aktuellen Prozess.
> --------------------------------------------------------------------------
-
> prc_exit
> Beendet den aktuellen Prozess.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> IV. Threadverwaltung
> --------------------------------------------------------------------------
-
> thr_create
> Erzeugt einen neuen Thread.
> --------------------------------------------------------------------------
-
> thr_fork
> Verzweigt den aktuellen Thread.
> --------------------------------------------------------------------------
-
> thr_kill
> Beendet einen Thread.
> --------------------------------------------------------------------------
-
> thr_yield
> Gibt die CPU-Zeit ab.
> --------------------------------------------------------------------------
-
> thr_finish
> Beendet den aktuellen Thrad.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> V. Synchronisation
> --------------------------------------------------------------------------
-
> wq_create
> Erzeugt eine Warteliste.
> --------------------------------------------------------------------------
-
> wq_enter
> Lässt den aktuellen Thread die Warteliste
> betreten.
> --------------------------------------------------------------------------
-
> wq_leave
> Lässt den aktuellen Thread die Warteliste
> verlassen und übergibt dem nächsten Thrad der
> Warteliste die CPU-Zeit.
> --------------------------------------------------------------------------
-
> wq_next
> Übergibt dem nächsten Thread der Warteliste die
> CPU-Zeit.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> VI. Nachrichtensystem
> --------------------------------------------------------------------------
-
> msg_send
> Sendet eine Nachricht an ein Port.
> --------------------------------------------------------------------------
-
> msg_wait
> Wartet auf eine neue Nachricht.
> --------------------------------------------------------------------------
-
> msg_downl
> Lädt eine Nachricht herunter.
> --------------------------------------------------------------------------
-
> msg_del
> Löscht eine Nachricht
> --------------------------------------------------------------------------
-
> msg_receive
> Wartet auf eine neue Nachricht, lädt sie falls
> erhalten runter und löscht sie anschließend.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> VII. Signalerweiterung
> --------------------------------------------------------------------------
-
> sig_handler
> Installiert einen Signaltypbehandlungsroutine.
> --------------------------------------------------------------------------
-
> sig_router
> Startet nach erhalten eines Signals die
> entsprechende Signaltypbehandlungsroutine.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> VIII. RPC-System
> --------------------------------------------------------------------------
-
> rpc_handler
> Installiert eine RPC-Behandlungsroutine.
> --------------------------------------------------------------------------
-
> rpc_call
> Führt einen entfernten Prozeduraufruf durch.
> --------------------------------------------------------------------------
-
> rpc_receive
> Wartet auf neue entfernte Prozeduraufrufe und
> ruft - falls erhalten - den nötigen Handler auf.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> IIX. Client/Serverunterstützung
> --------------------------------------------------------------------------
-
> cls_wait
> Wartet auf neue An-/Abmelde-Befehle
> (Serverseitig).
> --------------------------------------------------------------------------
-
> cls_dologon
> Führt eine Standard-Anmeldung durch
> (Serverseitig).
> --------------------------------------------------------------------------
-
> cls_dologoff
> Führt einen Standard-Abmeldung durch
> (Serverseitig).
> --------------------------------------------------------------------------
-
> cls_logonc
> Meldet einen Client bei einem Server an.
> --------------------------------------------------------------------------
-
> cls_logoffc
> Meldet einen Client von einem Server ab.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> IX. Systemzugang
> --------------------------------------------------------------------------
-
> sa_info
> Gibt Systeminformationen zurück.
> --------------------------------------------------------------------------
-
> sa_syscall
> Führt einen Systemaufruf durch.
> --------------------------------------------------------------------------
-
> sa_shell
> Führt einen Shell-Befehl aus.
> --------------------------------------------------------------------------
-
> sa_convert
> Konvertiert einen Datentyp.
> --------------------------------------------------------------------------
-
> hy_*
> Systemaufrufsfunktionen.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> X. Dateizugriff
> --------------------------------------------------------------------------
-
> fc_create
> Erstellt eine Datei.
> --------------------------------------------------------------------------
-
> fc_open
> Öffnet eine Datei.
> --------------------------------------------------------------------------
-
> fc_close
> Schließt eine Datei.
> --------------------------------------------------------------------------
-
> fc_read
> Liest aus einer Datei.
> --------------------------------------------------------------------------
-
> fc_write
> Schreibt in eine Datei.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> XI. Dateiverwaltung
> --------------------------------------------------------------------------
-
> fs_copy
> Kopiert eine Datei.
> --------------------------------------------------------------------------
-
> fs_delete
> Löscht eine Datei.
> --------------------------------------------------------------------------
-
> fs_mkdir
> Erstellt ein Verzeichnis.
> --------------------------------------------------------------------------
-
> fs_rmdir
> Löscht ein Verzeichnis.
> --------------------------------------------------------------------------
-
> fs_list
> Listet ein Verzeichnis.
> --------------------------------------------------------------------------
-
> fs_access
> Prüft die Zugriffsrechte auf eine Datei.
> --------------------------------------------------------------------------
-
> fs_attrib
> Ändert oder lädt die Attribute einer Datei.
> --------------------------------------------------------------------------
-
> fs_getacl
> Lädt die ACL einer Datei.
> --------------------------------------------------------------------------
-
> fs_chgacl
> Ändert Benutzerrechte in der ACL einer Datei.
> --------------------------------------------------------------------------
-
> fs_server
> Prüft ob ein Server an den Vermittlungsserver
> angemeldet ist.
> --------------------------------------------------------------------------
-
> fs_mount
> Mountet ein Dateisystem.
> --------------------------------------------------------------------------
-
> fs_unmount
> Unmountet ein Dateisystem
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
> XII. Sicherheit
> --------------------------------------------------------------------------
-
> se_acl
> Erzeugt eine ACL.
> --------------------------------------------------------------------------
-
> se_check
> Prüft Zugriffsrechte eines Benutzers in einer
> ACL.
> --------------------------------------------------------------------------
-
> se_change
> Ändert die Zugriffsrechte eines Benutzer in
> einer ACL.
> --------------------------------------------------------------------------
-
> se_get
> Lädt die Zugriffsrechte ines Benutzers in einer
> ACL.
> --------------------------------------------------------------------------
-
>
###########################################################################
> --------------------------------------------------------------------------
-
>
> --
> HydrixOS Developers Mailing List
>
> Administration: webmaster@xxxxxxxxxxx
> Archive: http://www.freelists.org/archives/hydrixos

-- 
HydrixOS Developers Mailing List

Administration: webmaster@xxxxxxxxxxx 
Archive: http://www.freelists.org/archives/hydrixos

Other related posts: