Dogestories — Promoting Dawn OS

DailyPriyab
CRYPT BYTES TECH
Published in
3 min readAug 10, 2017

Background

While checking out the dogecoin subeddit, I came across the a link on a good Samaritan dogecoin donator, who is sending 33 doge donations every day to GeriGeriGeri for his Dawn OS project. And since I like to explore more about new operating systems I checked out about Dawn OS and really felt I should promote a new take on how Operating systems are built for open hardware.

Dawn OS

Dawn operating system is the first high-level operating system built for URISC computers. It is a modern graphics operating system that supports the following features:

  • Big-endian 64-bit SUBLEQ CPU
  • Mouse
  • Keyboard
  • Virtual keyboard
  • Touchscreen
  • Multitouch
  • 64-bit sound input and output on 8 channels
  • 4 force-feedback joysticks
  • 16 RGB cameras
  • up to 32-bit RGBA graphics output, transparent screens are also supported
  • An own p2p wireless networking protocol based on geolocation and requiring no external network provider
  • CPU hotplug
  • Disk drive hotplug
  • Up to 100 individual disk-drive
  • Basic tools like document reader, paint, wave player, process explorer, etc
  • Some simple games like chess, amoeba
  • C/C99 compiler that is capable of compiling codes written for the C programming language
  • SMP support, up to basically unlimited CPU cores
  • Very simple IO system that will stay constant for all future versions
  • Memory and disk size support up to 2⁶³ bytes
  • Battery, and power-saving features
  • UTF8, unicode, ASCII
  • Fast boot and shutdown

What is URISC?

A one instruction set computer (OISC), sometimes called an ultimate reduced instruction set computer (URISC), is an abstract machine that uses only one instruction — obviating the need for a machine language opcode thereby making the design of OS much simpler and pushing the abstraction of providing standardized feature set to the hardware.

What is SUBLEQ CPU

Subleq (SUBtract and branch if Less-than or EQual to zero) is an assembly extension to the OISC instruction .Subleq is a simple one instruction language. The execution of one instruction subtracts the value in memory address A from the value in memory address B, assigning the result into memory address B. If the subtraction result assigned into memory address B is less than or equal to zero, the execution jumps to the memory address C; otherwise it continues to the next instruction. Each value has its own address so each instruction is three addresses long.

The advantage of SUBLEQ is that you only need to have one instruction for the entire ISA.It is a teaching aid that can be easily emulated on a normal computer without complex software, you wouldn’t build hardware using it. All the complexity that real hardware includes isn’t actually needed in a mathematical sense, but it does tend to make things slightly faster.

Why was Dawn built on SEBLEQ?

While x86, mips and arm cpus are manufactured to execute dozens instructions, work in special cpu modes, io and memory hardware, subleq goals to keep the things simple. The problem was that there were no operating system for that architecture, so Dwan OS was created.

Challenges

While the creator of Dawn is putting his effort for the OS to be used on FPGA-s and native hardware cpu projects to liberate computing but the work is hard and the hardware people are extremely rejecting to create compatible hardware, so somehow the OS is finding difficulties and stuck at just creating emulators from platform to platform.

Conclusion

The aim behind developing Dawn which is a new approach to developing a simple OS and with lesser code and that is something hopefully will make OS simple and project like these will generate more interest in rediscovering the OS technology and its amalgamation to open hardware through community support. And projects like these are a best fit for Dogecoin community ethos. Even as a moon shot someday one can make a Blockchain Virtual Machine on Dwan or SEBLEQ architecture.

Reference

--

--

DailyPriyab
CRYPT BYTES TECH

Data Engineering | Data Governance | Azure | Spark | Python | Manager