Browse Source

Plan 9 from Bell Labs 2012-05-26

David du Colombier 12 years ago
parent
commit
241d357e6e
3 changed files with 140 additions and 548 deletions
  1. 18 8
      sys/doc/port.ms
  2. 122 37
      sys/doc/port.ps
  3. 0 503
      sys/man/8/old9load

+ 18 - 8
sys/doc/port.ms

@@ -278,13 +278,10 @@ Finally, it's important to have a three-button mouse with Plan 9.
 The system currently works only with mice on the PS/2 port or USB.
 Serial mouse support should return before long.
 .PP
-Once you have Plan 9 installed (see the wiki's installation document)
-run the program
-.CW ld
-from DOS
-or use a boot disk.  See
+Once you have Plan 9 installed (see the wiki's installation document),
+use PXE or a boot disk to load the system.  See
 .I booting (8),
-.I 9load (8),
+.I 9boot (8),
 and
 .I prep (8)
 for more information.
@@ -370,7 +367,6 @@ There are many features of the system-on-a-chip
 that it does not exploit.
 There are currently drivers for
 a Fast Ethernet interface,
-.\" USB
 and the console serial port;
 we hope to add crypto acceleration, and a video driver.
 .SH
@@ -386,7 +382,21 @@ Initially, there are drivers for the SMSC 9221 100Mb/s Ethernet
 interface in the IGEPv2 and Overo,
 and the console serial port;
 we hope to add USB, flash memory and video drivers.
-.
+.SH
+The Nvidia Tegra2 operating system
+.PP
+This is an ARM kernel for the dual Cortex-A9 processors
+in the Nvidia Tegra2 system-on-a-chip
+and it emulates pre-VFPv3 floating-point and
+CAS (compare-and-swap) instructions
+(the hardware has VFP3 floating-point but
+.CW 5l
+doesn't generate the new opcodes yet).
+It runs on the Compulab Trimslice.
+There are many features of the system-on-a-chip that it does not exploit.
+Initially, there are drivers for the Ethernet interface
+and the console serial port;
+we hope to add USB, flash memory and video drivers.
 .
 .ig
 .SH

+ 122 - 37
sys/doc/port.ps

@@ -5523,51 +5523,48 @@ mark
 (should) 4712 2628 w
 (return before long.) 720 2748 w
 (Once) 970 2904 w
-(you) 1259 2904 w
-(have) 1476 2904 w
-(Plan) 1743 2904 w
-(9) 1986 2904 w
-(installed) 2091 2904 w
-(\(see) 2544 2904 w
-(the) 2782 2904 w
-(wiki) 2979 2904 w
+(you) 1255 2904 w
+(have) 1468 2904 w
+(Plan) 1731 2904 w
+(9) 1970 2904 w
+(installed) 2071 2904 w
+(\(see) 2520 2904 w
+(the) 2754 2904 w
+(wiki) 2947 2904 w
 10 /LucidaSansUnicode20 f
-(\031) 3172 2904 w
+(\031) 3140 2904 w
 10 /LucidaSansUnicode00 f
-(s) 3204 2904 w
-(installation) 3297 2904 w
-(document\)) 3875 2904 w
-(run) 4436 2904 w
-(the) 4644 2904 w
-(pro\255) 4842 2904 w
-(gram) 720 3024 w
-10 /LucidaTypewriter f
-(ld) 1013 3024 w
-10 /LucidaSansUnicode00 f
-(from) 1199 3024 w
-(DOS) 1473 3024 w
-(or) 1722 3024 w
-(use) 1866 3024 w
-(a) 2077 3024 w
-(boot) 2174 3024 w
-(disk.) 2438 3024 w
-(See) 2745 3024 w
+(s) 3172 2904 w
+(installation) 3261 2904 w
+(document\),) 3836 2904 w
+(use) 4425 2904 w
+(PXE) 4633 2904 w
+(or) 4844 2904 w
+(a) 4985 2904 w
+(boot) 720 3024 w
+(disk) 986 3024 w
+(to) 1231 3024 w
+(load) 1373 3024 w
+(the) 1625 3024 w
+(system.) 1824 3024 w
+(See) 2272 3024 w
 10 /LucidaSans-Italic f
-(booting) 2953 3024 w
+(booting) 2482 3024 w
 10 /LucidaSansUnicode00 f
-(\(8\),) 3318 3024 w
+(\(8\),) 2847 3024 w
 10 /LucidaSans-Italic f
-(9load) 3521 3024 w
+(9boot) 3052 3024 w
 10 /LucidaSansUnicode00 f
-(\(8\),) 3792 3024 w
-(and) 3995 3024 w
+(\(8\),) 3328 3024 w
+(and) 3533 3024 w
 10 /LucidaSans-Italic f
-(prep) 4216 3024 w
+(prep) 3757 3024 w
 10 /LucidaSansUnicode00 f
-(\(8\)) 4439 3024 w
-(for) 4609 3024 w
-(more) 4789 3024 w
-(information.) 720 3144 w
+(\(8\)) 3980 3024 w
+(for) 4153 3024 w
+(more) 4335 3024 w
+(informa\255) 4629 3024 w
+(tion.) 720 3144 w
 10 /LucidaSans-Demi f
 (The Alpha PC operating system) 720 3384 w
 10 /LucidaSansUnicode00 f
@@ -6082,6 +6079,94 @@ mark
 (USB,) 4547 3708 w
 (flash) 4806 3708 w
 (memory and video drivers.) 720 3828 w
+10 /LucidaSans-Demi f
+(The Nvidia Tegra2 operating system) 720 4068 w
+10 /LucidaSansUnicode00 f
+(This) 970 4224 w
+(is) 1230 4224 w
+(an) 1365 4224 w
+(ARM) 1537 4224 w
+(kernel) 1810 4224 w
+(for) 2167 4224 w
+(the) 2361 4224 w
+(dual) 2571 4224 w
+(Cortex-A9) 2835 4224 w
+(processors) 3405 4224 w
+(in) 3987 4224 w
+(the) 4133 4224 w
+(Nvidia) 4343 4224 w
+(Tegra2) 4700 4224 w
+(system-on-a-chip) 720 4344 w
+(and) 1671 4344 w
+(it) 1905 4344 w
+(emulates) 2025 4344 w
+(pre-VFPv3) 2518 4344 w
+(floating-point) 3078 4344 w
+(and) 3813 4344 w
+(CAS) 4046 4344 w
+(\(compare-and-) 4291 4344 w
+(swap\)) 720 4464 w
+(instructions) 1044 4464 w
+(\(the) 1662 4464 w
+(hardware) 1895 4464 w
+(has) 2390 4464 w
+(VFP3) 2603 4464 w
+(floating-point) 2885 4464 w
+(but) 3612 4464 w
+10 /LucidaTypewriter f
+(5l) 3819 4464 w
+10 /LucidaSansUnicode00 f
+(doesn) 4008 4464 w
+10 /LucidaSansUnicode20 f
+(\031) 4301 4464 w
+10 /LucidaSansUnicode00 f
+(t) 4333 4464 w
+(generate) 4415 4464 w
+(the) 4885 4464 w
+(new) 720 4584 w
+(opcodes) 957 4584 w
+(yet\).) 1405 4584 w
+(It) 1688 4584 w
+(runs) 1795 4584 w
+(on) 2052 4584 w
+(the) 2216 4584 w
+(Compulab) 2412 4584 w
+(Trimslice.) 2948 4584 w
+(There) 3495 4584 w
+(are) 3814 4584 w
+(many) 4007 4584 w
+(features) 4310 4584 w
+(of) 4746 4584 w
+(the) 4885 4584 w
+(system-on-a-chip) 720 4704 w
+(that) 1663 4704 w
+(it) 1900 4704 w
+(does) 2012 4704 w
+(not) 2289 4704 w
+(exploit.) 2495 4704 w
+(Initially,) 2941 4704 w
+(there) 3370 4704 w
+(are) 3668 4704 w
+(drivers) 3867 4704 w
+(for) 4247 4704 w
+(the) 4433 4704 w
+(Ethernet) 4635 4704 w
+(interface) 720 4824 w
+(and) 1199 4824 w
+(the) 1433 4824 w
+(console) 1642 4824 w
+(serial) 2067 4824 w
+(port;) 2382 4824 w
+(we) 2670 4824 w
+(hope) 2857 4824 w
+(to) 3153 4824 w
+(add) 3305 4824 w
+(USB,) 3540 4824 w
+(flash) 3807 4824 w
+(memory) 4095 4824 w
+(and) 4545 4824 w
+(video) 4779 4824 w
+(drivers.) 720 4944 w
 cleartomark
 showpage
 saveobj restore

+ 0 - 503
sys/man/8/old9load

@@ -1,503 +0,0 @@
-.TH OLD9LOAD 8
-.SH NAME
-old9load: 9load, 9pxeload, 9loadusb, 9loadask, ld \- old PC bootstrap program
-.SH SYNOPSIS
-.I "(Under MS-DOS)
-.br
-.RI [ drive\f(CW:\fP ][ path ] ld
-[
-.I 9load
-]
-.SH DESCRIPTION
-.I 9load
-and
-.I ld
-are programs that reside in a FAT file system and bootstrap Plan 9.
-.I 9load
-loads a
-.B 386
-.\" or
-.\" .B amd64
-kernel, but it cannot be run from DOS; use
-.I ld
-to bootstrap (by starting
-.IR 9load )
-if DOS is running.
-.I 9load
-is run automatically by the boot procedures described below;
-it cannot be run directly by hand.
-.I 9pxeload
-is a version of
-.I 9load
-that can be booted using the PXE download (BOOTP/DHCP followed by TFTP)
-found in any reasonable ethernet card's BIOS.
-.I 9loadusb
-is a version that will use only the BIOS's device drivers,
-and thus can load from USB devices.
-In contrast,
-.I 9load
-will
-.I not
-use BIOS device drivers.
-.I 9loadask
-is a version that asks on the console (too early for serial ports, alas)
-if you want to use BIOS drivers to boot.
-There are four bootstrap sequences:
-.IP \- 3
-PXE BIOS,
-.IR 9pxeload ,
-kernel
-.IP \-
-BIOS, MBR, disk partition PBS,
-.IR 9load ,
-kernel
-.IP \-
-BIOS, floppy PBS,
-.IR 9load ,
-kernel
-.IP \-
-BIOS, MBR, DOS,
-.IR ld ,
-.IR 9load ,
-kernel.
-.PP
-Details follow.
-.PP
-.I 9load
-is a bootstrap program that loads and starts a program,
-typically the kernel, on a PC.
-It is run by the PC partition boot sector program (PBS),
-which usually resides in the first
-sector of the active partition.
-A copy of the Plan 9 PBS is kept in
-.BR /386/pbs ,
-but due to the ``cylinder-head-sector'' (CHS) addressing mode of old BIOSes, it can only
-operate up to 8.5GB into the disk.
-Plan 9 partitions further into the disk
-can only be booted using
-.BR /386/pbslba ,
-and then only if the machine's BIOS supports
-linear block addressing (LBA) mode for disk transfers.
-.PP
-When booting from disk or floppy, the BIOS loads the
-first sector of the medium at location
-.BR 0x7C00 .
-In the case of a disk, it is the master boot record (MBR).
-In the case of a floppy, this is the PBS.
-The MBR copies itself to address
-.BR 0x600 ,
-finds the active partition and loads its PBS at address
-.BR 0x7C00 .
-A copy of the Plan 9 MBR is kept in
-.BR /386/mbr ;
-some commercial MBRs cannot read sectors
-past 2GB.
-The Plan 9 MBR can read sectors up to 8.5GB into
-the disk, and further if the BIOS supports LBA.
-The single file
-.B /386/mbr
-detects whether the BIOS supports LBA and
-acts appropriately, defaulting to CHS mode
-when LBA is not present.
-The PBSs cannot do this due to code size considerations.
-The Plan 9 MBR is suitable for booting non-Plan 9
-operating systems,
-and (modulo the large disk constraints just described)
-non-Plan 9 MBRs are suitable for booting Plan 9.
-.PP
-Thus the default sequence when booting from disk is: BIOS, MBR, PBS,
-.IR 9load ,
-kernel.
-.PP
-Because it contains many device drivers for different
-disks and networks,
-.I 9load
-is larger than 64K and cannot be run as a DOS
-.RB `` .com ''
-executable.
-A stripped-down version that knows about disks but not networks,
-called
-.I ld
-(really
-.BR ld.com ),
-fits in 64K and can be used under DOS to load and start a program (default
-.IR 9load )
-from the FAT16 partition.
-Its command line argument is of the same format as the
-.I bootfile
-specifiers described below.
-This profusion of loaders is unfortunate, but at least
-.I ld
-and
-.I 9load
-are compiled from the same source.
-.PP
-.I 9load
-begins execution at virtual address
-.B 0x80010000
-(64K) and
-loads the
-.I bootfile
-at the entry address specified by the header,
-usually virtual
-.BR 0xF0100020 .
-After loading, control is passed to the entry location.
-.PP
-In summary,
-Plan 9 can be booted on a PC three different ways:
-either
-by using a PXE-capable BIOS to boot
-.I 9pxeload
-directly over the ethernet,
-by booting directly from a Plan 9 disk partition
-or boot floppy
-prepared using
-.B format
-to install the appropriate files and bootstrap sectors
-(see
-.IR prep (8)),
-or rarely
-by booting MS-DOS and using
-.I ld
-to start
-.I 9load
-in the appropriate directory.
-.br
-.ne 4
-.SS Bootfile
-The
-.IR bootfile ,
-which may be compressed with
-.IR gzip (1),
-can be specified to
-.I 9load
-as a
-.B bootfile=
-entry in
-.IR plan9.ini ,
-or if booting from the ethernet, by a BOOTP server
-(see
-.B "Kernel loading"
-below).
-If the
-.B plan9.ini
-file contains multiple
-.B bootfile=
-entries,
-.I 9load
-will present a numerical menu of the choices; type
-the corresponding number to select an entry.
-.PP
-The format of the
-.I bootfile
-name is
-.IB device ! file
-or
-.IB device ! partition ! file\f1.
-If
-.BI ! file
-is omitted, the default for the particular
-.I device
-is used.
-Supported
-.I devices
-are
-.TF \fLethern
-.PD
-.TP
-.BI ether n
-Ethernet.
-.I N
-specifies the Ethernet device number.
-If a
-.I partition
-is specified, it is taken to be the name of a host machine
-from which to load the kernel.
-.I file
-is determined by the
-.B /lib/ndb
-(see
-.IR ndb (6))
-entry for this PC.
-.TP
-.BI sd Cn
-Normal disk.
-The device name format is described in
-.IR sd (3).
-A
-.I partition
-must be given and must
-name a partition containing a FAT file system.
-The name
-.B dos
-refers to the first DOS partition on a given device.
-It is common for Plan 9 partitions to contain a small
-FAT file system for configuration.
-By convention, this partition is called
-.BR 9fat .
-There is no default partition or pathname.
-.TP
-.BI fd n
-An MS-DOS floppy disk.
-.I N
-specifies the floppy drive, either
-0 or 1.
-The
-.I bootfile
-is the contents of the MS-DOS
-.IR file .
-There is no default file.
-For compatibility with normal disks, a
-.I partition
-may be given, but only
-.B dos
-is recognized:
-.BI fd0!dos! file\f1.
-.TP
-.B bios0
-(Not in
-.IR 9pxeload .)
-.I 9load
-loads from a FAT file system on
-the first LBA device
-in the BIOS's list of devices to try to boot from,
-using the BIOS INT 13 calls also used by
-.IR pbslba .
-It does not understand any form of partition table;
-see the
-.B EXAMPLES
-in
-.IR prep (8)
-for how to format such a device.
-This has been mostly useful for booting from USB devices so far.
-.TP
-.B sdB0
-(Not in
-.IR 9pxeload .)
-A special case of
-.BI sd Cn
-that uses
-.B bios0
-to read from a FAT file system.
-Partitions are understood.
-.SS Kernel loading
-When
-.I 9load
-starts running at physical address
-.BR 0x10000 ,
-it switches to 32-bit mode.
-It then double maps the first 16Mb of physical memory to
-virtual addresses
-.B 0
-and
-.BR 0x80000000 .
-Physical memory from
-.B 0x300000
-upwards is used as data space.
-.PP
-.I 9pxeload
-differs slightly in operation from
-.IR 9load .
-It is initially loaded by the PXE BIOS at physical address
-.BR 0x7C00 .
-Only devices which can be automatically configured,
-e.g. most PCI ethernet adapters,
-will be recognised.
-If the file
-.BI /cfg/pxe/ ether
-can be located via a DHCP server,
-where
-.I ether
-is the lower-case MAC address of a recognised ethernet adapter,
-the contents are obtained and used as a
-.IR plan9.ini .
-.PP
-Next, in order to find configuration information,
-.I 9load
-searches all units on devices
-.BR fd
-and
-.BI sd Cn \fR,
-in that order, for a file called
-.B plan9\eplan9.ini
-or
-.B plan9.ini
-(see
-.IR plan9.ini (8))
-on a partition named
-.B dos
-or
-.BR 9fat .
-If one is found, searching stops and the file is read into memory
-at physical address
-.B 0x1200
-where it can be found later by any loaded
-.IR bootfile .
-Some options in
-.B plan9.ini
-are used by
-.IR 9load :
-.TF bootfile=manual
-.TP
-.B console
-.TP
-.B baud
-Specifies the console device and baud rate if not a display.
-.TP
-.BI ether n
-Ethernet interfaces. These can be used to load the
-.I bootfile
-over a network.
-Probing for Ethernet interfaces is too prone to error.
-.TP
-.BI bootfile= bootfile
-Specifies the
-.IR bootfile .
-This option is overridden by a command-line argument.
-.TP
-.B bootfile=auto
-Default.
-.TP
-.B bootfile=local
-Like
-.IR auto ,
-but do not attempt to load over the network.
-.TP
-.B bootfile=manual
-After determining which devices are available for loading from,
-enter prompt mode.
-.PD
-.PP
-When the search for
-.B plan9.ini
-is done,
-.I 9load
-proceeds to determine which bootfile to load.
-If there was no
-.I bootfile
-option,
-.I 9load
-chooses a default
-from the following prioritized device list:
-.EX
-	fd sd ether
-.EE
-.I 9load
-then attempts to load the
-.I bootfile
-unless
-the
-.B bootfile=manual
-option was given, in which case prompt mode is entered immediately.
-If the default device is
-.BR fd ,
-.I 9load
-will prompt the user for input before proceeding with the
-default bootfile load after 5 seconds;
-this prompt is omitted if
-a command-line argument or
-.I bootfile
-option
-was given.
-.PP
-.I 9load
-prints the list of available
-.IR device s
-and
-enters prompt mode on encountering any error
-or if directed to do so by a
-.B bootfile=manual
-option.
-In prompt mode, the user is required to type
-a
-.IB bootfile
-in response to the
-.L "Boot from:
-prompt.
-.SS Other facilities and caveats
-.I 9load
-parses the master boot record and Plan 9 partition tables
-(see
-.IR prep (8)),
-leaving partitioning information appended to the
-in-memory contents of
-.I plan9.ini
-for the
-.IR bootfile .
-This is used by
-.IR sd (3)
-to initialize partitions so that
-.IR fossil (4)
-or
-.IR kfs (4)
-file systems can be mounted as the root file system.
-A more extensive partitioning is typically done by
-.I fdisk
-and
-.I prep
-as part of
-.I termrc
-or
-.I cpurc
-(see
-.IR cpurc (8)).
-.PP
-A
-control-P
-character typed at any time on the console causes
-.B 9load
-to perform a hardware reset
-(Ctrl-Alt-Del can also be used on a PC keyboard).
-.PP
-When loaded from a PBS (rather than from
-.IR ld.com ),
-.I 9load
-must be contiguously allocated on
-the disk.
-See
-.IR dossrv (4)
-for information on ensuring this.
-.SH FILES
-.RI [ drive\f(CW:\fP ][ path ]\c
-.B 9load
-.br
-.RI [ drive\f(CW:\fP ][ path ]\c
-.B ld
-.br
-.IB "FAT-filesystem" :\eplan9\eplan9.ini
-.br
-.IB "FAT-filesystem" :\eplan9.ini
-.TF /cfg/pxe
-.TP
-.B /386
-most of these binaries reside here
-.TP
-.BI /cfg/pxe
-directory of
-.I plan9.ini
-files on your TFTP server
-.SH SOURCE
-.B /sys/src/boot/pc
-.SH "SEE ALSO"
-.IR booting (8),
-.IR dhcpd (8),
-.IR plan9.ini (8),
-.IR prep (8)
-.SH BUGS
-Much of the work done by
-.B 9load
-is duplicated by the loaded kernel.
-.PP
-If
-.I ld
-detects an installed MS-DOS Extended Memory Manager,
-it attempts to de-install it, but the technique
-used may not always work.
-It is safer not to install the Extended Memory Manager before running
-.IR ld .
-.PP
-BIOS bugs force some limitions on reading via the BIOS.
-.B bios0
-and
-.B sdB0
-only work on the first LBA device in the BIOS's list of boot devices.