Skip to content

Draft for Wikipedia

Sergey edited this page May 11, 2015 · 1 revision

Draft of 'RetroBSD' article for Wikipedia

TODO

This a saved draft of an article for Wikipedia.

Add your content here. {{{

{{Article for deletion/dated|page=RetroBSD|timestamp=20121217100311|year=2012|month=December|day=17|substed=yes|help=off}}

{{Use dmy dates|date=December 2012}} {{Infobox OS | name = RetroBSD | developer = The RetroBSD Project | family = Unix-like (Berkeley Software Distribution) | source model = Open source | frequently updated = Yes | kernel type = Monolithic kernel | userland = BSD | supported platforms = PIC32 | working state = Current | website = {{url|http://www.retrobsd.org}} }}

'''RetroBSD''' is a direct port of 2.11BSD to the Microchip PIC32 family of microcontrollers. In is a free software Unix-like operating system descended from American Telephone & Telegraph Unix via Berkeley Software Distribution.{{nbsp}} Although for legal reasons RetroBSD cannot be called "UNIX",'[[USL v. BSDi]] et al.'' as the direct descendant of BSD UNIX, RetroBSD's internals and system APIs are UNIX-compliant.

==History== RetroBSD was started as a hobby project by Serge Vakulenko in 2010, by porting the kernel, C library and a set of basic utilities direct from the 2.11BSD tapes. The aim was to create the most fully featured operating system on the smallest possible resources. There exists a similar system named uCLinux that is widely used for similar purposes, but uCLinux requires ten times more RAM than RetroBSD. It also has a limited multitasking capability (no fork), no memory protection and no C compiler on-board.

==Features== RetroBSD aims to provide all the functionality of a full operating system, whilst also giving easy access to all the peripherals within the PIC32 chip, plus extra common external peripherals. ===Storage=== The core operating system files are typically stored on a SPI connected SD or MMC card. RetroBSD has full support for most common SD cards, with full partitioning of devices (up to 4 partitions per device) with up to 4GB per partition, making a maximum of 16GB per device. Drivers also exist for accessing internal NAND Flash storage as a read-only filesystem, an external RAM memory chips of various types for both file storage and swap space. ===Communications=== Communication with RetroBSD is through any of the 6 built-in UART peripherals in the PIC32 chip, or through UART emulation over USB using the internal USB module. Baud rates up to 4Mbaud are supported.

A basic Telnet proxy system is available allowing multiple telnet sessions to a Linux host machine to be multiplexed through a single serial connection to RetroBSD for remote login support. ===Internal Peripherals=== Currently supported internal peripherals include all 16 channels of the ADC, the SPI bus, UARTs, and GPIO pins. ===External Peripherals=== Communication with external SPI peripherals is supported via an internal SPI bus device. Each device on an SPI bus can easily be configured with its own mode of operation, baud rate and Slave Select signal, and the internal SPI bus driver acts as an arbitrator configuring the communications in the correct way for the currently selected device.

I²C is planned for the near future. ==References== {{Reflist|colwidth=30em}} {{wikipedia-deleted|Ritchie333}} }}}