Releases: mallardtheduck/osdev
Release 0.1A
- Completely re-written memory manager
- Shared library support; all major libraries now included as shared libraries
- Vastly improved (now actually useful!) debugger
- VESA VBE support using libx86emu (no V86 or switch-to-realmode required!)
- ANSI terminal compatibility library based on libtmt
- Port of ncurses using ANSI library
- Port of "kilo" minimal text editor (also using ANSI)
Release 0.1
First "installable" release. Includes support for ATAPI devices, ISO9660 filesystem, ports of GNU GRUB and GNU Parted and a basic rough-and-ready install application. Has been tested on QEMU, Bochs, VirtualBox and VMWare as well as limited testing on real hardware.
System requirements:
An i686-class CPU, at least 8MB RAM (128MB recommended), ATAPI optical drive and ATA hard drive (~110MB space required for installation), VGA-compatible graphics and PS/2 compatible keyboard and mouse.
Installation instructions:
- Boot from provided "Live CD".
- Use GNU Parted (type: "parted") to create a "msdos" partition table with a FAT/FAT32 partition.
- Reboot.
- Run "install" to install the OS and bootloader to the hard drive.
- Reboot.
(Type "startwm" to start the GUI environment, if desired).
Release 0.0C
Another milestone. Includes "first draft" of the GUI, as well as many other features and improvements.
Release 0.0B
Second milestone release.
Updates and new features:
- Updated memory manager, with support for memory-mapped I/O.
- Terminal driver, with support for multiple virtual terminals.
- C library has full support for standard streams.
- Command-line shell has many new commands, as well as I/O redirection and "faked" pipes.
- "PATH" support (in shell).
- A few external commands (cls, termctl, kill).
- Fixes in FAT driver (multiple handles per file, directory removal).
- ATA driver now has basic, 2MB block-level data cache.
- Various improvements to scheduler and process handling code, several deadlocks resolved, crash bugs fixed, etc.
- Stability improvements.
- Scheduler now attempts to calibrate quantum to CPU speed.
- Several new userspace API calls implemented (including userspace multi-threading).
- Several additions to module API.
- Many more bug fixes and miscellaneous improvements.
Release 0.0A
This is the first "release" of BT/OS. This represents the first "milestone" in development and includes the basic features that define it as an OS.
Features:
- Scheduler and multithreaded kernel.
- Paging memory manager.
- VFS layer
- Device driver system
- Loadable modules that can implement devices or filesystems.
- Basic userspace API (no threading yet)
- INFOFS, DEVFS and INITFS "virtual" filesystems.
- Support for following hardware devices:
- PS/2 keyboard
- ATA hard drive (PIO only)
- Real-time clock (partial)
- VGA 80x25 text mode
- FAT16/32 filesystem support.
- Userspace including command-line shell and support for C and C++ applications.