Skip to content

a simple homebrew operating system for the Raspberry Pi

License

Notifications You must be signed in to change notification settings

jeremiahsimonsen/vmwos

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The VMWos -- an operating system by Vincent M. Weaver


History:
~~~~~~~~
	This project originated from code written for the
	Spring 2015 ECE598 Advanced Operating System class
	at the University of Maine.

Building:
~~~~~~~~~

	You will either need to build natively on an ARM
	machine or cross compile.

	Quickstart Debian:
		apt-get install genromfs gcc-arm-none-eabi

	To build natively, edit Makefile.inc and make
	the CROSS variable be empty.

	Otherwise, edit Makefile.inc to point to your
	cross compiler.

	It is possible to build this on OSX and Windows,
	I should update with instructions.

	Running "make" should build kernel/kernel.img
	
Installing:
~~~~~~~~~~~
	You need a memory key with an existing OS install
	that you don't care about (raspbian works great).

	Mount the boot directory on that key, and copy
	kernel.img to a safe place.

	Now copy your built kernel/kernel.img overtop
	of the existing kernel.img


Required Hardware:
~~~~~~~~~~~~~~~~~~

	Currently VMWos runs on any Raspberry Pi 
	Model A, B, B+ or A+.

	It will not run on a Raspberry Pi 2 without some
	changes to the OS (but it should be possible).

	It will drive an HDMI screen, but has no support
	for USB input.

	To get full input/output you will need to buy a USB/Serial
	adapter and connect to another machine running a terminal
	program such as minicom.


Using:
~~~~~~
	It is currently fairly limited.
	
	Assuming you have booted properly into the shell, you can
	run "help" to get a list of supported commands.


Compiling user programs:
~~~~~~~~~~~~~~~~~~~~~~~~
	See the examples in ./userspace

	Right now you need to create a binary with -fPIC and use
	objcopy to create a RAW binary.
	I can't seem to find a working ARM binflt toolchain.

	There is a simple C library included ("vlibc")


For more information:
~~~~~~~~~~~~~~~~~~~~~

	See http://www.deater.net/weave/vmwprod/vmwos


Vince Weaver
[email protected]
27 February 2016

About

a simple homebrew operating system for the Raspberry Pi

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 91.0%
  • Makefile 4.2%
  • Assembly 2.6%
  • C++ 2.1%
  • SourcePawn 0.1%