./emulators/sys161, System/161 MIPS emulator

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 2.0.8, Package name: sys161-2.0.8, Maintainer: dholland

System/161 is a machine simulator that provides a simplified but still
realistic environment for OS hacking. It is a 32-bit MIPS system
supporting up to 32 processors, with up to 31 hardware slots each
holding a single simple device (disk, console, network, etc.)

It is used for teaching; the OS/161 instructional OS runs on it.
However, it has also proven useful as a rapid development platform for
bringing up research or experimental kernels.

System/161 supports fully transparent debugging, via remote gdb into
the simulator. It also provides transparent kernel profiling,
statistical monitoring, event tracing (down to the level of individual
machine instructions) and one can connect multiple running System/161
instances together into a network using a "hub" program.


Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: b95f4a827b5ce773a20504dd63e05a2acdc78c8d
RMD160: 0fac2fd650213aa06dcd1b18fab4d548a2d6e7b7
Filesize: 168.591 KB

Version history: (Expand)


CVS history: (Expand)


   2016-03-07 06:53:29 by David A. Holland | Files touched by this commit (2) | Package updated
Log message:
Update to 2.0.8.

Upstream changes:

 - Update copyright years. Noticed by Margo Seltzer.
 - Fix handling of file creation in emufs, again.
 - Fix another issue with dropped input handling, reported by Sam
   Fishman.
 - Print more info with exception traces.
 - Remove obsolete disk sizes from sys161.conf.sample.
 - Reuse emufs handles when the same object is reopened. ".." usage
   now behaves itself. Mostly from Sam Fishman.
 - Remove stray debug print.
   2016-01-18 06:17:56 by David A. Holland | Files touched by this commit (3) | Package updated
Log message:
Update to 2.0.6. New HOMEPAGE and MASTER_SITES.

Upstream changes:

20160117 dholland	System/161 2.0.6 released.
20160117 dholland	util.c needs sys/types.h; from Nikhil Benesch.
20160116 dholland	Don't let the dropped input character messages flood.

20160114 dholland	System/161 2.0.5 released.
20160114 dholland	Fix a bug counting global-idle cycles.
20160114 dholland	Drop redundant columns in stat161 output.
20160114 dholland	Polish previous.
20160113 gwa		Make stat161's reporting interval adjustable.
20160113 gwa		Have stat161 report elapsed clock time per tick.
20160112 dholland	Print a message if the OS drops an input character.
20160108 dholland	Print why if disk geometry initializion fails.
20160105 dholland	Standardize and document the exit codes.
20160105 dholland	Allow K, M, etc. suffixes for disk/memory sizes.
20160105 dholland	Make the trace device reject (vs. ignore) invalid args.
20160105 dholland	Add -C option to supply device config arguments.

20151222 dholland	System/161 2.0.4 released.
20151222 dholland	Improve the way -X works.
20151222 dholland	Make trace161 -h output include the trace flag list.
20151222 dholland	Use shell printf instead of echo -n. Apparently Apple
........		still ships a broken sh whose echo prints literal "-n".
20151222 dholland	Apparently some Linux installs demand _GNU_SOURCE to
........		be allowed to see/use ftruncate.
20150808 dholland	Actually install the new prof.html. Sigh.
........		(issued as patch for 2.0.3)
   2015-11-03 21:31:11 by Alistair G. Crooks | Files touched by this commit (211)
Log message:
Add SHA512 digests for distfiles for emulators category

Problems found with existing digests:
	Package suse131_libSDL
	1c4d17a53bece6243cb3e6dd11c36d50f851a4f4 [recorded]
	da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
	Package suse131_libdbus
	de99fcfa8e2c7ced28caf38c24d217d6037aaa56 [recorded]
	da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
	Package suse131_qt4
	94daff738912c96ed8878ce1a131cd49fb379206 [recorded]
	886206018431aee9f8a01e1fb7e46973e8dca9d9 [calculated]

Problems found locating distfiles for atari800, compat12, compat 13,
compat14, compat15, compat20, compat30, compat40, compat50,
compat50-x11, compat51, compat51-x11, compat60, compat61,
compat61-x11, fmsx, osf1_lib, vice, xbeeb, xm7.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2015-08-08 20:44:32 by David A. Holland | Files touched by this commit (4) | Package updated
Log message:
Update to 2.0.3.

Upstream changes:

20150804 dholland	System/161 2.0.3 released.
20150714 dholland	Fix the serial port FORCE logic meant to prevent
........		interrupt flapping. Thanks to Winnie Wu for a test
........		kernel and workload that reliably repeated the problem.
20150709 dholland	Recognize some obvious aliases for disk161 commands.
20150706 dholland	Add page on profiling to the manual.
20150706 dholland	Add dynamic profiling control to the trace device.
20150703 dholland	If profiling, write the profile out if we die().
20150703 dholland	Include seek times in disk activity trace output.

20150126 dholland	System/161 2.0.2 released.
20150126 dholland	Fix brown paper bag release. Sigh.
20150126 dholland	System/161 2.0.1 released.
20150121 dholland	Fix up some gdb threads issues appearing with gdb 7.8.
20150117 dholland	Update included .hgignore file, from Cary Gray.

20150115 dholland	System/161 2.0 released.
20150115 dholland	Add workaround to make disk rotdelay deterministic.
20150114 dholland	Fix stdint.h-related build problems on Linux.
20150114 dholland	Fix flock-related build problem on Linux.
20150109 dholland	Add software debugger requests to the trace device.
20150105 dholland	Make the testsuite run.
20150105 dholland	Add support for installing into a chroot/DESTDIR.
20150105 dholland	Add man pages for all executables.
   2014-12-10 06:46:00 by David A. Holland | Files touched by this commit (2) | Package updated
Log message:
Update to 1.99.10. Upstream change:
   Add workaround for OpenBSD's srand/srandom breakage.
   2014-10-01 10:11:30 by David A. Holland | Files touched by this commit (3) | Package updated
Log message:
Update to 1.99.09, a 2.0 release candidate.
Upstream changes:
   - Support the CACHE instruction as (for now) a nop.
   - Provide the MIPS32 config0 and config1 registers, and pretend to
     have 4K each L1 I/D caches. The cache remains fully coherent.
   - Don't allow r2000/r3000 (mips-I) style cache flushes.
   - Add a disk161 utility for manipulating disk images, and don't
     keep disk image sizes in sys161.conf any more.
   - Edit/revise the processor docs.
   - Fix build with gcc 4.8.
   - Provide flock() compat for legacy OSes without it. (Hi, Solaris.)
   2014-08-23 08:55:03 by David A. Holland | Files touched by this commit (2) | Package updated
Log message:
Update to 1.99.08.
Changes:
	- use flock() on disk images to avoid accidents
	- improve gdb interface to treat CPUs as "threads"
	- rework tty handling; now behaves when backgrounded
	- change disk image names in sample config to match OS/161 usage
	- rework timing code and fix bug with bogus large idle counts
	- rework and retune main loop; much faster
	- use more gcc warnings
   2014-03-14 05:09:31 by David A. Holland | Files touched by this commit (4)
Log message:
Import sys161-1.99.07.

System/161 is a machine simulator that provides a simplified but still
realistic environment for OS hacking. It is a 32-bit MIPS system
supporting up to 32 processors, with up to 31 hardware slots each
holding a single simple device (disk, console, network, etc.)

It is used for teaching; the OS/161 instructional OS runs on it.
However, it has also proven useful as a rapid development platform for
bringing up research or experimental kernels.

System/161 supports fully transparent debugging, via remote gdb into
the simulator. It also provides transparent kernel profiling,
statistical monitoring, event tracing (down to the level of individual
machine instructions) and one can connect multiple running System/161
instances together into a network using a "hub" program.

I am upstream for this so I'll maintain the package.