Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ filehdr(4) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

time(2)

fseek(3S)

a.out(4)

filehdr(4)                                                       filehdr(4)

NAME
     filehdr - Dateikopf für gemeinsame Objektdateien

SYNTAX
     #include <filehdr.h>

BESCHREIBUNG
     Jede gemeinsame Objektdatei beginnt mit einem Dateikopf mit einer
     Länge von 20 Byte. Dabei wird die folgende C-struct-Deklaration
     benutzt:

          struct filehdr
          {
              unsigned short fmagic ;       /* Dateiformatkennung */
              unsigned short fnscns ;       /* Anzahl der Abschnitte */
              long           ftimdat ;      /* Zeit- und Datumsstempel */
              long           fsymptr ;      /* Dateizeiger auf Symboltabelle */
              long           fnsyms ;       /* Anzahl der Einträge in symtab */
              unsigned short fopthdr ;      /* Größe von opt und header */
              unsigned short fflags ;       /* Flags */
          };

     fsymptr ist der Zeiger auf den Datensatz in der Datei, in dem die
     Symboltabelle beginnt. Der Wert dieses Flags kann in fseek(3S) als
     Offset zur Positionierung eines E/A-Stroms in der Tabelle benutzt wer-
     den. Der optionale Dateikopf von Reliant UNIX hat eine Länge von 28
     Byte. Die zulässigen Dateiformatkennungen ("magic numbers") sind nach-
     folgend aufgeführt:

          #define I386MAGIC    0514    /* i386-Rechner */
          #define WE32MAGIC    0560    /* 3B2-, 3B5- und 3B15-Rechner */
          #define N3BMAGIC     0550    /* 3B20-Rechner */
          #define NTVMAGIC     0551    /* 3B20-Rechner */
          #define VAXWRMAGIC   0570    /* Durch VAX änderbare Textsegmente */
          #define VAXROMAGIC   0575    /* Für VAX schreibgeschützte, gemeinsam
                                          nutzbare Textsegmente */
          #define MIPSEBMAGIC  0x0160
          #define MIPSELMAGIC  0x0162
          #define SMIPSEBMAGIC 0x6001
          #define SMIPSELMAGIC 0x6201
          #define MIPSEBUMAGIC 0x0180
          #define MIPSELUMAGIC 0x0182

     Der Wert von ftimdat ist das Ergebnis des Systemaufrufs time(2). Der-
     zeit sind folgende Flag-Bits für F-Flags definiert:

          #define FRELFLG  0000001  /* Relokations-Einträge gestrichen */
          #define FEXEC    0000002  /* Datei ist ausführbar */
          #define FLNNO    0000004  /* Zeilennummern gestrichen */
          #define FLSYMS   0000010  /* Lokale Symbole gestrichen */
          #define FMINIMAL 0000020
          #define FUPDATE  0000040



Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

filehdr(4)                                                       filehdr(4)

          #define FSWABD   0000100
          #define FPATCH   0002000
          #define FNODF    0002000
          #define FCPIC    0004000
          #define FPIX     0010000

SIEHE AUCH
     time(2), fseek(3S), a.out(4).














































Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026