NetBSD/alpha Frequently Asked Questions

Hier sind einige oft gestellte Fragen (und oft gegebene Antworten) zu NetBSD/alpha

Konsole und Konsolen Firmware

Kompilieren und Programmierung

Verschiedenes


Konsole und Konsolen Firmware


Was hat es mit seriellen Konsolen auf sich? (zurück)

Alle Versionen der SRM Konsole kommen hervorragend mit seriellen Konsolen klar. Dies ist sehr vorteilhaft, da man so die Maschine entfernt administrieren kann, während sie in einem kalten Serverraum steht und dort Krach macht.

Dies bedeutet auch, dass man jedes System, selbst mit Grafikhardware die von NetBSD nicht unterstützt wird, booten kann. Und tatsächlich konzentriert sich das NetBSD/alpha Team auf allgemeine Server und X Clients und nicht darauf X Server auf Desktops laufen zu lassen, so dass die serielle Konsole manchmal die einzige Möglichkeit ist eine Alpha zu booten. Auf einigen älteren Systemen ist die Grafikhardware komplett undokumentiert, so dass eine serielle Konsole hier den Tag retten kann.

Auf fast allen Alphasystemen schaltet die SRM Konsole automatisch in den Konsolenmodus, wenn keine Tastatur angeschlossen ist. An einigen Modellen der 3000er Serie gibt es einen Schalter auf der Rückseite des Gehäuses, der den Konsolenmodus einstellt. Ich glaube, dass es eine entsprechende nicht-temporäre SRM Variable gibt, aber es ist wahrscheinlich besser diese nicht zu setzen, da man im Falle eines Fehlers die Tastatur nicht mehr benutzen kann.

Die meisten Alphas haben COM-Anschlüsse, wie PCs, so dass es sehr offensichtlich ist wie man einen anderen Rechner anschließt und ihn mit tip(1) oder einem anderen Programm als Terminal verwenden kann.

Wenn Sie Pech haben und an Ihrer Alpha der technisch gute, aber extrem inkompatible, DEC MMJ Stecker sitzt, müssen Sie sich ein MMJ Adapter besorgen oder selber machen. Um selber ein Adapter zu machen, lesen Sie die NetBSD Hardware Documentation - Misc Seite und durchsuchen Sie Tommy's Pinout Collection, nach MMJ. Dort erhalten Sie Informationen zur DEC MMJ Belegung und zum DB9, den PCs und Workstations für gewöhnlich nutzen. Um ein Adapter zu bauen, schneiden Sie an einem gewöhnlichen seriellen Kabel einen Stecker ab und passen Sie die Adern an einen MMJ Stecker wie folgt an:

Wenn Sie nicht sicher sind was TX+ und was RX+ ist, Sie aber ein Voltmeter oder eine LED zur Verfügung haben, können Sie TX+ bestimmen, da es die höhere Spannung führt und somit die LED zum leuchten bringt. Ich bin mir nicht sicher ob TX- und RX- wie in der Pinout Collection beschrieben, verbunden werden sollten. Wenn Wie keine Signalerdung anschließen, werden Sie trotzdem Strom durch die Schutzerdung bekommen, was eigentlich funktioniert, wenn das Terminal oder der Terminalemulator einen Stromkreis mit der 3000 teilt und sie nahe beisammen stehen.


Eine andere Möglichkeit wäre es, den DEC MMJ an einen Mac oder eine SUN anzuschließen, die ebenfalls eine andere serielle Schnittstelle haben.

Weiterführende Informationen finden Sie in NetBSD Serial Port Primer.

Warum benötigt NetBSD/alpha Firmware? (zurück)

Es ist möglich auf der nackten Hardware zu arbeiten, aber es gibt ein paar Dinge die der PALcode modellabhängig regelt:

um nur einige zu nennen.

Dies beinhaltet noch nicht die CPU-abhängigen Aktionen

Und auch hier ist die Liste länger ...

Also im Grunde bietet der PALcode eine gute abstrahierte Schnittstelle zu den Eigenheiten der Hardware - das Betriebssystem auf der blanken Hardware laufen zu lassen wäre die reinste Qual.

Beachten Sie, dass die SRM Konsole nicht unbedingt benötigt wird. NetBSD/alpha läuft aber nur auf einer Plattform ohne SRM Konsole, einem parallelen Multicomputer namens Avalon A12. Dies ist keine DEC Maschine und sie hat keine DEC Konsolensoftware. Die installierte Konsolensoftware bietet aber den OSF/1 PALcode und ist kompatibel zur Alpha Konsolenarchitektur (genau wie die SRM Konsole). Die AlphaBIOS Konsolensoftware ist ARC-kompatibel (ARC ist ursprünglich eine Konsole für MIPS Systeme und nicht für Alphas)

Wenn jemand eine freie Konsolensoftware schreiben möchte, sollte er aufmerksam der Konsolenbeschreibung im Green Book und Red Book folgen, denn die Konsolenarchitekur ist nicht schlecht designed.

Genauer gesagt sind die Konsolensoftware und der PALcode eigenständige Einheiten. Wenn NetBSD den PALcode aufruft, ruft es eben nicht die Konsole auf. Es gibt einen PALcode Standardbefehl namens "swppal" welcher es ermöglicht ein anderes PALcode Image zu laden (der NetBSD/alpha Bootlader tut dies, SRM kommt standardmäßig im OpenVMS PALcode vor).

Der PALcode wird also buchstäblich ständig aufgerufen. Nehmen Sie einen NetBSD Kernel, lassen Sie ihn durch objdump --disassemble laufen und per grep nach dem "call_pal" Befehl suchen.

bishop:thorpej 53$ pwd
/sys/arch/alpha/compile/GENERIC
bishop:thorpej 54$ objdump --disassemble netbsd | grep -c call_pal
4807
bishop:thorpej 55$ 
Einige dieser Befehle kommen an Schlüsselpositionen vor, z. B. bei Systemaufrufen, Interrupts oder Speicherfehlern, des Weiteren nutzt die C Bibliothek diese Funktion.

Kann NetBSD/alpha auf Maschinen mit nur NT (ARC) Firmware laufen? (zurück)

Zur Zeit nicht. NetBSD/alpha benötigt die SRM Konsolenfirmware (die ebenfalls von OSF/1 und OpenVMS verwendet wird). Dafür gibt es zwei Gründe: Die Bootkonsole ist dafür zuständig den Bootlader des Betriebssystems zu starten und bietet zusätzlich den PALcode (NetBSD nutzt den Digital Unix Code) des Systems, welcher Speichermanagement und Interruptverwaltung auf Systembasis zur Verfügung stellt.

Der NT PALcode ist sehr gut im Green Book und wahrscheinlich noch besser im Red Book beschrieben. Es ist nicht aussichtslos über NetBSD/arcalpha nachzudenken, der NT PALcode hat aber ein paar Tücken:

Kann NetBSD/alpha MILO nutzen um auf einem System ohne SRM zu laufen? (zurück)

Der Alphaport von Linux kann Maschinen mit NT Firmware booten, allerdings nutzt er dazu eigenen PALcode, anstatt des NT PALcodes. Dies heißt, dass man auch einen eigenen Lader für jedes System benötigt. Probleme des MILO PALcodes:

Ross Harvey war kurz davor einige der schweren Fehler zu bereinigen, aber er bekam den echten SRM PALcode für das Projekt an dem er arbeitete, so dass er die Fehler nicht bereinigte. Es ist wahrscheinlich erfolgreicher HP/Compaq darauf zu drängen, die aktuellen SRM PALcode Quellen freizugeben, als den MILO PALcode zu reparieren, besonders da Linux ebenfalls auf SRM PALcode für moderne Systeme zurückgreift.

Wo bekomme ich die SRM Konsole für meine Maschine her? (zurück)

Wenn Sie eine AlphaStation, AlphaServer, AlphaPC164, Multia oder AXPpci besitzen kann die SRM Konsole entweder mit der Alpha Systems Firmware Update CD (Teilenummer QZ-003AA-E8) oder von http://ftp.digital.com/pub/DEC/Alpha/firmware/ bezogen werden.

Besitzer von älteren Alpha Testboards oder älteren AlphaPC Motherboards sollten das Alpha EBSDK and Firmware Update Kit (Teilenummer QR-21B02-03) bestellen. Dieses kann direkt bei DEC für $75 + S&H bezogen werden.

Wie kann man automatisches Multiuser booten einstellen bzw. verhindern? (zurück)

Es gibt zwei nichtflüchtige SRM Umgebungsvariablen die das Konsolenverhalten beeinflussen:

BOOT_OSFLAGS
Wenn auf A oder a gesetzt, wird NetBSD automatisch in den Multiusermodus booten. Mit der -fl Option im boot Konsolenbefehlt kann dies überschrieben werden (dies ist aus kompatibilitätsgründen zu Digital Unix enthalten).
AUTO_ACTION
Diese Option gibt an was die SRM Konsole tun soll wenn sie die Kontrolle übernimmt. Möglichkeiten sind BOOT oder HALT. HALT bringt sie an den >>> Prompt.
BOOTDEF_DEV
Dies gibt das Bootgerät für die SRM an. show config kann ihnen die Möglichkeiten anzeigen. Um beispielsweise von Diskette zu booten übergeben Sie: set bootdef_dev dva0.

Beispiele:

Warum hat meine Firmware die Datei srm_fw nicht? (zurück)

Wenigstens der AlphaServer 1000 hat Probleme, wenn die Firmware per CDROM upgedatet werden soll. Die Datei srm_fw kann nicht gefunden werden, dieser Fehler wird vermieden indem der AlphaServer vom Netzwerk abgeklemmt wird.

Update der 3000/400 Firmware (zurück)

Die Firmware auf einer 3000/400 upzudaten kann gefährlich werden, da ein ausreichend neuer SROM Chip benötigt wird. Anderenfalls wird das Update fehlschlagen und die Maschine wird beim Neustart einen Maschinencheck durchführen.

Lesen Sie daher unbedingt die Upgradeanleitung die auf der tru64-unix-managers Mailingliste gepostet wurde.


Kompilieren und Programmierung


Ein i386 Programm das auf einer Alpha kompiliert wird, gibt merkwürdige Fehler aus (zurück)

wie z. B.
foo.c:91: cast from pointer to integer of different size.
(Umwandlung vom Zeiger zum Integer hat unterschiedliche Größe)
Eine Alpha ist eine 64 bittige Maschine, anders als ein Pentium oder Mac, welche beide 32 bittig sind. Viele Programmierer setzen voraus das z. B. Zeiger 32 bittig sind, deshalb erzeugen diese Programme Unmengen von Fehlermeldungen. Allgemein kann man sagen das diese Fehlermeldungen ignoriert werden können, da NetBSD diese Probleme in der Regel automatisch löst (aber *nicht* für Kernelcode!). Sollte das Programm trotzdem schwere Fehler zeigen müssen Sie den Code von 32 Bit / 64 Bit Fehlern bereinigen.

Fehlermeldung "initializer element... is not computable" (zurück)

Eine Fehlermeldung
foo.c:192: initializer element for `foo' is not computable at load time
wird ausgegeben und der Kompilerlauf bricht ab. Der fragliche Code ist meistens: int foo=(int)"string";

Dies liegt meistens daran, das "foo" 32 bittig ist und die Adresse von "string" 64 bittig. Also wird der Compiler angewiesen die niederwertigen Bits der Adresse zu speichern, was im ELF Format nicht vorgesehen ist. Manchmal hilft es den int auf long zu setzen oder char * zu benutzen.

Probleme beim kompilieren von Programmen mit Makefiles die cpp nutzen (zurück)

In älteren Releases und Snapshots wurde die Toolchain nach /usr/local installiert, so dass Programme wie /usr/libexec/cpp nicht gefunden wurden, daher mussten symbolische Links auf die GNU toolchain Pakete zeigen, die z. B. unter

/usr/local/lib/gcc-lib/alpha-unknown-netbsd1.3/2.7.2.2/cpp

lagen. Seit NetBSD 1.3.2 wird die toolchain in den gängigen Pfad installiert, so dass von dieser Seite keine Probleme mehr herrühren sollten. Wenn Sie Probleme mit der Toolchain haben und keine NetBSD Version größer 1.3.2 laufen haben, sollten sie unbedingt upgraden.

Wie schreibe ich ein Assembler-Programm? (zurück)

Unten ist "Hello, world" als Beispiel. Achtung : wie andere RISC Archikturen kann die Alpha eine Adresse oder willkürlich große Konstante nicht in einem Befehl laden. Die untenstehenden Beispiele nutzen ein paar eingebaute Assemblermakros, die an entsprechender Stelle ausgeführt werden.
/*
 *      hw.S
 *
 *      cc hw.S
 *      ./a.out
 */

#include <machine/asm.h>
#include <sys/syscall.h>

.text
.globl  main
main:
        ldgp    gp,0(pv)
        ldi     a0, 1
        lda     a1, hwstring
        ldi     a2, hwlen
        ldi     v0, SYS_write
        call_pal 0x83
        addq    zero, zero, a0
        ldi     v0, SYS_exit
        call_pal 0x83
1:      br      1b

hwstring:
        .ascii  "Hello, world\n"
        hwlen = . - hwstring

Wie schreibe ich ein echtes selbständiges Assemblerprogramm? (zurück)

Selbständig bedeutet hier ein Programm das keinen C Laufzeitmechanismus benötigt. Es folgt Code der direkt durch den Linker geschickt werden kann, ohne Bibliothekscode zu benötigen.
/*
 *      Completely standalone assembly Hello, world demo. Has the magic
 *      NetBSD .note section which tells our ELF from generic ELF.
 *
 *      hwsa.S
 *
 *      cc -c hw.S
 *      ld hw.o
 *      ./a.out
 */

#include <machine/asm.h>
#include <sys/syscall.h>

        .set noat
        .set noreorder

        .section ".note.netbsd.ident", "a"
        .long   2f-1f
        .long   4f-3f
        .long   1
1:      .asciz "NetBSD"
2:      .p2align 2
3:      .long   199905
4:      .p2align 2

.text
.globl  __start
__start:
        ldgp    gp,0(pv)
        ldi     a0, 1
        lda     a1, hwstring
        ldi     a2, hwlen
        ldi     v0, SYS_write
        call_pal 0x83
        addq    zero, zero, a0
        ldi     v0, SYS_exit
        call_pal 0x83
1:      br      1b

hwstring:
        .ascii  "Hello, world\n"
        hwlen = . - hwstring

Verschiedenes


Kann Netscape unter NetBSD/alpha laufen (zurück)

Es gibt drei 'Netscape' Browser in pkgsrc:

Sowohl das Communicator als auch das Navigator Paket laufen zwar schneller als Mozilla, welches jedoch eine höhere Funktionsvielfalt bietet. Erstere benötigen zusätzlich auch OSF1/Digital UNIX/Tru64 Bibliotheken in /emul/osf1.

Welche Grafikkarten werden von X11 unterstützt? (zurück)

Zur Zeit werden fologende Grafikkarten unterstützt:

Bus Treiber Karte Produktcode Speicher Max. Auflösung Farbtiefe
PCI tga ZLXp-E1 PBXGA-AA 2 1280x1024 8
PCI tga ZLXp-E2 PBXGA-BA 8 1280x1024 32
PCI tga ZLXp-E3 PBXGA-CA 16 1280x1024 32
PCI tga PowerStorm 3d30 PBXGB-AA 2 1280x1024 8
PCI tga PowerStorm 4d20 PBXGB-BA 16 1600x1200 32

Dies betrifft allerdings nur den X Server, X Programme laufen hervorragend.

Ich habe einen Kernelfehler aber meine Maschine läuft noch! (zurück)

 > fatal user trap:
 >  
 >     trap entry = 0x2 (memory management fault)
 >     a0         = 0xffffffffc8000004
 >     a1         = 0x1
 >     a2         = 0x1
 >     pc         = 0x1200205b0
 >     ra         = 0x12001a8d4
 >     curproc    = 0xfffffe0000229c00
 >         pid = 22188, comm = make
Dies bedeutet das auf dem System ein DEBUG Kernel läuft und ein Programm oder Benutzer hat einen Coredump bekommen. NetBSD/alpha gibt in diesem Falle die Fehlermeldungen auf der Konsole aus, um damit Entwickler bei der Fehlersuche zu unterstützen. Eine große Menge von PC Programmen hat interne LP64 Fehler, die nur auf einer 64 bittigen Architektur zum Tragen kommen. (Nun ja, manchmal sogar wenn sie für irgendeine Architektur kompiliert werden, aber das ist eine andere Geschichte.)

Sie können diese Fehler ignorieren (es sei denn Sie wollen sie bereinigen). Wenn es in einem Teilprogramm von NetBSD auftritt sollten Sie uns Informieren.

Wenn Ihre Maschine während des Checks abstürzt oder stecken bleibt, hat dies wahrscheinlich nichts mit diesem Problem zu tun.

Hilfe! Meine Maschine ist mit einem machine check abgestürzt. (zurück)

Der PALcode hat den machine check interrupt an den abgestürzten Kernel geschickt. Es gibt einen Logoutschirm (machine check information) der vom PALcode generiert wird und ausgewertet werden muss um die Fehler zurückzuverfolgen. Die Informationen sind CPU (ev4, ev5, etc.) und Speicher (ALCOR, Pyxis, APECS, etc) abhängig.

Wir haben nur den Code für einige Serversysteme in NetBSD 1.4, da DEC die Codes nicht dokumentiert hat und wir mittels verschiedener Headerdateien und verfügbaren Quellcodes einige rekonstruieren konnten.

Ein '660' Vektor bedeutet meistens `ECC Speicherfehler'.

Ein guter Anteil der Machinechecks wird durch defekte Hardware hervorgerufen. Diese FAQ ist zu kurz um hier weiter auf diese Problematik einzugehen. Das beste ist wahrscheinlich wenn Sie den machine check kopieren und an die freundlichen Leute auf port-alpha@NetBSD.org schicken.

Fehlermeldungen des Kernels über nichtlineare Zugriffe (zurück)

Es gibt keine Probleme mit der Maschine, dies geschieht wenn Programme illegalerweise Variablentypen umwandeln oder andere typenunsichere Aktionen durchführen. Anders als i386 oder VAX erwarten RISC Prozessoren Daten linear. Normalerweise lösen die Compiler dieses Problem automatisch, aber einige Programme sind so schlecht geschrieben, das die Compilerinstruktionen überschrieben werden und der Compiler so typenunsichere Konstrukte zulässt.

Der NetBSD Kernel repariert diese Probleme während der Laufzeit, obwohl es die Anwendung verlangsamen kann. Jeden nichtlinearen Zugriff zu reparieren erzeugt:

  1. Last um nichtlineare Zugriffe abzufangen
  2. Last um den Fehler zu reparieren
  3. Noch mehr Last falls die Fehlerbehebung über eine Schutzgrenze läuft

Mit sysctl(8) kann die Reaktion eingestellt werden:

  1. Den nichtlinearen Zugriff stillschweigend reparieren.
  2. Den nichtlinearen Zugriff reparieren und eine Meldung ausgeben.
  3. Dem Prozess das Signal SIGBUS senden.
  4. Eine Meldung ausgeben und dem Prozess das Signal SIGBUS senden.

Die Standardreaktion ist:

	sysctl -w machdep.unaligned_print=1
	sysctl -w machdep.unaligned_fix=1
	sysctl -w machdep.unaligned_sigbus=0
Ein nichtlinearer Zugriff im Kernel wird immer einen Absturz hervorrufen.

Kann NetBSD/alpha plattenlos booten? (zurück)

NetBSD 1.2 und früher:
Fast. Der Kernel unterstützt den Bootprozess mit NFS root und swap Partitionen die über Bootparameter eingebunden wurden. Unglücklicherweise gibt es keinen netzwerkfähigen Bootlader, dies bedeutet das ein NetBSD Kernel von einer Digital UNIX Platte geladen werden muss, z. B. mit dem Konsolenbefehl boot -fi "Kernel"

NetBSD 1.2 und später:
Ja. Beginnend mit NetBSD 1.2 unterstützt NetBSD/alpha plattenloses booten mit bootp. Sie benötigen dazu eine aktuelle Version der SRM Konsole. Für eine nähere Dokumentation lesen Sie bitte Netbooting NetBSD/alpha (englisch) .

Wenn Sie ein Digital UNIX 3.x (früher DEC OSF/1) System als NFS Server mit NetBSD root-Partitionen einsetzen wollen, bekommen Sie Probleme. Digital UNIX 3.x kommt nicht mit den NetBSD Partitionen klar, wahrscheinlich hat Digital beim Übergang von 16 bittigen zu 32 bittigen Device Nodes Laufzeitcode in den Kernel eingefügt. Unglücklicherweise werden diese Partitionen aber von einem plattenlosen NetBSD System nicht korrekt erkannt. Das einzige Gegenmittel ist ein patchen des Digital UNIX Kernels im Binärformat oder in den Quellen, so dass die meisten Nutzer wohl stattdessen auf Digital UNIX als NFS Server verzichten sollten. Gerüchteweise soll Digital UNIX 4.x dieses Problem nicht mehr haben.

Wie mache ich meine Festplatte bootbar? (zurück)

Um eine Festplatte bootbar zu machen, muss die zweite Phase des NetBSD/alpha Bootstraps /usr/mdec/boot in das Wurzelverzeichnis der a Partition der Platte kopiert und danach mit installboot(8) die erste Phase des Bootstraps installiert werden.

Auf NetBSD Versionen kleiner als 1.4 ist es notwendig installboot(8) aufzurufen um die Anzahl der Blöcke von /boot in die erste Phase des Bootstraps einzutragen und den betreffenden Bootstrap an den Beginn der Festplatte zu installieren. Dies muss wiederholt werden, wenn die zweite Phase des Bootstraps oder des Dateisystems upgedated oder zurückgesichert wird.

Ab NetBSD 1.4 a gibt es ein anderes Primäres Bootstrapprogramm für jedes unterschiedliches root-fähiges Dateisystem, welches /boot automatisch lokalisiert und installiert.

sd1 als Beispiel:

NetBSD 1.3.x
    # mounten des Dateisystems 
    mount /dev/sd1a /mnt

    # Installation des Bootstrapprogramms
    cd /usr/mdec
    cp boot /mnt
    sync
    sync
    ./installboot /mnt/boot /usr/mdec/bootxx /dev/rsd1c
NetBSD 1.4 und spätere
    # mounten des Dateisystems 
    mount /dev/sd1a /mnt
    
    # Installation des Bootstrapprogramms
    cd /usr/mdec
    cp boot /mnt
    ./installboot /dev/rsd1c bootxx_ffs

Dieses Beispiel (selbst wenn es an die entsprechenden Pfad- und Plattenbezeichnungen angepasst wird) funktioniert nicht unbedingt in allen Situation. Sie sollten aufmerksam die installboot(8) man Page lesen um mehr Details über eine entsprechende Konfiguration zu erhalten.

Zusätzlich zu Festplatten funktioniert dieses Prozedere auch mit SCSI Wechselmedien (wie ZIP und JAZ Disketten) so sie denn BSD Disklabels enthalten.

Wie brenne ich das cdhdtape Installationsimage unter MS Windows auf (zurück)

eine CD? Von Colin <CaptnZilog@aol.com>:

Für diejenigen, die eine bootbare NetBSD/Alpha CD aus dem cdhdtape Image unter einem MS Windows System erstellen wollen, sei hier ein Weg beschrieben.

Besorgen Sie sich die freie "Nero" Demo von AHEAD Software und starten Sie das Programm. Gehen sie nach Datei/Image brennen, wählen Sie die cdhdtape Datei aus.

Setzen Sie die Optionen folgendermaßen:

	Imagetyp: data mode 1
	Blockgröße: 2048
	Image Header (bytes): 0
	Image Trailer (bytes): 0
und lassen Sie "Raw Data", "Scrambled" und "Swapped" unausgewählt.

Ich habe von der CD, gleich nach dem "NetBSD/Alpha 1.4 Primary Boot +" ein paar "dka400.4.0.6.0 is not ready" Fehlermeldungen erhalten, der Bootvorgang hat aber wie gewünscht funktioniert (auf einem AlphaServer 400 4/166).

AlphaStation Kernel panics (zurück)

Wenn Sie nach dem Upgrade von NetBSD 1.3.3 auf eine neuere Version Kernelabstürze bekommen, sollten Sie auch die SRM Konsolenfirmware auf die aktuellste Version updaten. Es gab zwei Berichte das auf auf einer AlphaStation 200 4/100 mit der Firmwareversion 6.9 diese Probleme gelöst haben.

Alpha Firmware Updates gibt es unter: http://ftp.digital.com/pub/DEC/Alpha/firmware/.

Einige Digital Unix Programme stürzen mit SIGSYS ab (zurück)

Vorausgesetzt das sie das Programm mit ktrace(1) verfolgen und die Ausgabe ähnlich aussieht:
(-10 kann auch irgendeine andere negative Zahl sein)
	pid prog CALL  [-10]
	pid prog PSIG  SIGSYS SIG_DFL
	pid prog NAMI  "prog.core"
versucht das Programm ein Mach Systemaufruf abzusetzen. Die Datei /sys/compat/osf1/README.mach-traps beschreibt das Problem.

Im Großen und Ganzen machen Programme die gegen libpthreads.so oder libpthread.so gelinkt sind Mach Systemaufrufe. Glücklicherweise sind das nicht besonders viele Programme, Acroread ist bisher das einzig produktive.

Koexistenz mit Tru64 Unix (bzw. Digital Unix, bzw. OSF/1) (zurück)

Es scheint so das Tru64 Unix ein Dateisystem benutzt, das von NetBSD als "altes ffs" erkannt wird. Es besteht also die Möglichkeit ein Tru64 Dateisystem unter NetBSD zu mounten. Ein NetBSD Dateisystem unter Tru64 zu mounten kann gefährlich werden, da ein fsck das NetBSD Dateisystem zerstören würde. Es gibt die Möglichkeit ein mit "newfs -o" erstelltes Dateisystem von beiden Systemen mounten zu lassen, um so Daten auszutauschen.

Es gibt einen Bericht, dass solch ein Dateisystem mit zu vielen Datein als leer angezeigt wurde.

Was immer Sie auch ausprobieren, nehmen Sie unbedingt unwichtige Daten und lassen Sie uns wissen wenn Sie neue Erkenntnisse gewinnen.


Zurück zur NetBSD/alpha Portseite
Home page
Zurück zu Dokumentation

Ihre Meinung $NetBSD: faq.html,v 1.14 2005/09/28 17:24:43 mishka Exp $
Copyright © 1994-2003 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.