TempleOS

Last updated

TempleOS
TempleOS.jpg
VirtualBox TempleOS x64 27 02 2021 20 43 48.png
TempleOS 5.03
Developer Terry A. Davis
Written in Holy C and x86 Assembly
Working stateFinished
Source model Open source
Initial release2005;20 years ago (2005) (as J Operating System)
2013;12 years ago (2013) (as TempleOS)
Latest release 5.03 / November 20, 2017;7 years ago (2017-11-20)
Repository
Platforms x64
Kernel typeMonolithic
Userland UserCmdLine using HolyC,
Adam
Default
user interface
640x480 16 Color Graphics, specifically created for TempleOS
License Public domain
Official website templeos.org

TempleOS (formerly J Operating System, LoseThos, and SparrowOS) is a biblical-themed lightweight operating system (OS) designed to be the Third Temple prophesized in the Bible. It was created by American programmer Terry A. Davis, who developed it alone over the course of a decade after a series of manic episodes that he later described as a revelation from God.

Contents

The system was characterized as a modern x86-64 Commodore 64, using an interface similar to a mixture of DOS and Turbo C. Davis proclaimed that the system's features, such as its 640x480 resolution, 16-color display, and single-voice audio, were designed according to explicit instructions from God. [1] It was programmed with an original variation of C/C++ (named HolyC) in place of BASIC, and included an original flight simulator, compiler, and kernel.

First released in 2005 as J Operating System, TempleOS was renamed in 2013 and was last updated in 2017.

Background

Terry A. Davis Terry A. Davis (cropped).jpg
Terry A. Davis

Programmer Terry A. Davis (1969–2018) began experiencing regular manic episodes in 1996, leading him to numerous stays at mental hospitals. Initially diagnosed with bipolar disorder, he was later declared schizophrenic and remained unemployed for the rest of his life. [1] He suffered from delusions of space aliens and government agents that left him briefly hospitalized for his mental health issues. [1] [2] After experiencing a self-described "revelation", he proclaimed that he was in direct communication with God, and that God told him the operating system was for God's third temple. [1]

Davis began developing TempleOS circa 2003. [3] One of its early names was the "J Operating System" before renaming it to "LoseThos", a reference to a scene from the 1986 film Platoon . [1] In 2008, Davis wrote that LoseThos was "primarily for making video games. It has no networking or Internet support. As far as I'm concerned, that would be reinventing the wheel". [4] Another name he used was "SparrowOS" before settling on "TempleOS". [5] In mid-2013, his website announced: "God's temple is finished. Now, God kills CIA until it spreads [ sic ]." [6]

Davis died after being hit by a train on August 11, 2018. [7]

System overview

TempleOS is a 64-bit, non-preemptive multi-tasking, [8] multi-cored, public domain, open source, ring-0-only, single address space, non-networked, PC operating system for recreational programming. [9] The OS runs 8-bit ASCII with graphics in source code and has a 2D and 3D graphics library, which run at 640x480 VGA with 16 colors. [5] Like most modern operating systems, it has keyboard and mouse support. It supports ISO 9660, FAT32 and RedSea file systems (the latter created by Davis) with support for file compression. [10] According to Davis, many of these specifications—such as the 640x480 resolution, 16-color display and single audio voice—were instructed to him by God. He explained that the limited resolution was to make it easier for children to draw illustrations for God. [1]

The operating system includes an original flight simulator, compiler, and kernel. [3] One bundled program, "After Egypt", is a game in which the player travels to a burning bush to use a "high-speed stopwatch". The stopwatch is meant to act as an oracle that generates pseudo-random text, something Davis likened to a Ouija board and glossolalia. [5] An example of generated text follows:

among consigned penally result perverseness checked stated held sensation reasonings skies adversity Dakota lip Suffer approached enact displacing feast Canst pearl doing alms comprehendeth nought [5]

TempleOS was written in a programming language developed by Davis as a middle ground between C and C++, originally called "C+" (C Plus), later renamed to "Holy C", possibly a reference to the Holy See. [5] It doubles as the shell language, enabling the writing and execution of entire applications from within the shell. The IDE that comes with TempleOS supports several features, such as embedding images in code. It uses a non-standard text format (known as DolDoc) which has support for hypertext links, images, and 3D meshes to be embedded into what are otherwise standard ASCII files; for example, a file can have a spinning 3D model of a tank as a comment in source code. Most code in the OS is JIT-compiled, and it is generally encouraged to use JIT compilation as opposed to creating binaries. [11] [ unreliable source? ] Davis ultimately wrote over 100,000 lines of code for the OS. [3]

Holy C

Holy C
HolyC Logo.svg
The unofficial logo of Holy C
Paradigm Imperative, Compiled
Designed by Terry A. Davis
OS TempleOS
Website templeos.org
Influenced by
C, C++

Holy C (formerly C+) is a variant of the C and C++ programming Languages designed by Terry A. Davis [12] specifically for the TempleOS. It functions as both a general-purpose language for application development and a scripting language for automating tasks within TempleOS. [13]

Design and features

Holy C's primary use case lies within the TempleOS ecosystem. Due to TempleOS's niche position, Holy C adoption remains limited outside of that specific operating system. [14]

However, some programmers find Holy C's unique features and its connection to TempleOS intriguing. Online resources exist for those interested in learning more about Holy C, including tutorials and a standalone compiler that facilitates experimentation independent of TempleOS. [15]

Critical reception

TempleOS received mostly "sympathetic" reviews. Tech journalist David Cassel opined that "programming websites tried to find the necessary patience and understanding to accommodate Davis". [3] TechRepublic and OSNews published positive articles on Davis's work, even though Davis was banned from the latter for hostile comments targeting its readers and staff. [3] In his review for TechRepublic, James Sanders concluded that "TempleOS is a testament to the dedication and passion of one man displaying his technological prowess. It doesn't need to be anything more." [5] OSNews editor Kroc Camen wrote that the OS "shows that computing can still be a hobby; why is everybody so serious these days? If I want to code an OS that uses interpretive dance as the input method, I should be allowed to do so, companies like Apple be damned." [3] In 2017, the OS was shown as a part of an outsider art exhibition in Bourgogne, France. [16]

Legacy

After Davis' death, OSNews editor Thom Holwerda wrote: "Davis was clearly a gifted programmer – writing an entire operating system is no small feat – and it was sad to see him affected by his mental illness". [17] One fan described Davis as a "programming legend", while another, a computer engineer, compared the development of TempleOS to a one-man-built skyscraper. [7] He added that it "actually boggles my mind that one man wrote all that" and that it was "hard for a layperson to understand what a phenomenal achievement" it is to write an entire operating system alone. [7]

TempleOS is in the public domain. Davis' family has wished for fans to donate to the National Alliance for Mental Illness and other organizations "working to ease the pain and suffering caused by mental illness". [6]

Forks

See also

Related Research Articles

<span class="mw-page-title-main">BeOS</span> Discontinued operating system for personal computers

BeOS is a discontinued operating system for personal computers that was developed by Be Inc. It was conceived for the company's BeBox personal computer which was released in 1995. BeOS was designed for multitasking, multithreading, and a graphical user interface. The OS was later sold to OEMs, retail, and directly to users; its last version was released as freeware.

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.

<span class="mw-page-title-main">Plan 9 from Bell Labs</span> Research distributed operating system

Plan 9 from Bell Labs is a distributed operating system which originated from the Computing Science Research Center (CSRC) at Bell Labs in the mid-1980s and built on UNIX concepts first developed there in the late 1960s. Since 2000, Plan 9 has been free and open-source. The final official release was in early 2015.

<span class="mw-page-title-main">Syllable Desktop</span> Operating system

Syllable Desktop is a discontinued free and open-source lightweight hobbyist operating system for Pentium and compatible processors. Its purpose was to create an easy-to-use desktop operating system for the home and small office user. Its development began in 2002 as a fork of AtheOS Another version of Syllable OS is the Syllable Server, which is based on Linux core.

The development of a hobbyist operating system is one of the more involved and technical options for a computer hobbyist. The definition of a hobby operating system can sometimes be vague. It can be from the developer's view, where the developers do it just for fun or learning; it can also be seen from the user's view, where the users are only using it as a toy; or it can be defined as an operating system which doesn't have a very big user base.

<span class="mw-page-title-main">MorphOS</span> Amiga-compatible computer operating system

MorphOS is an AmigaOS-like operating system designed for Power and PowerPC based computers. The core, based on the Quark microkernel, is proprietary, although several libraries and other parts are open source, such as the Ambient desktop.

SPIM is a MIPS processor simulator, designed to run assembly language code for this architecture. The program simulates R2000 and R3000 processors, and was written by James R. Larus while a professor at the University of Wisconsin–Madison. The MIPS machine language is often taught in college-level assembly courses, especially those using the textbook Computer Organization and Design: The Hardware/Software Interface by David A. Patterson and John L. Hennessy (ISBN 1-55860-428-6).

<span class="mw-page-title-main">ReactOS</span> Free incomplete Windows NT-like operating system

ReactOS is a free and open-source operating system for i586/amd64 personal computers intended to be binary-compatible with computer programs and device drivers developed for Windows Server 2003 and later versions of Microsoft Windows. ReactOS has been noted as a potential open-source drop-in replacement for Windows and for its information on undocumented Windows APIs.

Systems programming, or system programming, is the activity of programming computer system software. The primary distinguishing characteristic of systems programming when compared to application programming is that application programming aims to produce software which provides services to the user directly, whereas systems programming aims to produce software and software platforms which provide services to other software, are performance constrained, or both.

<span class="mw-page-title-main">Haiku (operating system)</span> Computer operating system

Haiku, originally OpenBeOS, is a free and open-source operating system for personal computers. It is a community-driven continuation of BeOS and aims to be binary-compatible with it, but is largely a reimplementation with the exception of certain components like the Deskbar. The Haiku project began in 2001, supported by the nonprofit Haiku Inc., and the operating system remains in beta.

In computing, gettext is an internationalization and localization system commonly used for writing multilingual programs on Unix-like computer operating systems. One of the main benefits of gettext is that it separates programming from translating. The most commonly used implementation of gettext is GNU gettext, released by the GNU Project in 1995. The runtime library is libintl. gettext provides an option to use different strings for any number of plural forms of nouns, but this feature has no support for grammatical gender. The main filename extensions used by this system are .POT, .PO and .MO.

<span class="mw-page-title-main">DTrace</span> Dynamic tracing framework for kernel and applications

DTrace is a comprehensive dynamic tracing framework originally created by Sun Microsystems for troubleshooting kernel and application problems on production systems in real time. Originally developed for Solaris, it has since been released under the free Common Development and Distribution License (CDDL) in OpenSolaris and its descendant illumos, and has been ported to several other Unix-like systems.

<span class="mw-page-title-main">Unix</span> Family of computer operating systems

Unix is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others. Initially intended for use inside the Bell System, AT&T licensed Unix to outside parties in the late 1970s, leading to a variety of both academic and commercial Unix variants from vendors including University of California, Berkeley (BSD), Microsoft (Xenix), Sun Microsystems (SunOS/Solaris), HP/HPE (HP-UX), and IBM (AIX).

Mbed TLS is an implementation of the TLS and SSL protocols and the respective cryptographic algorithms and support code required. It is distributed under the Apache License version 2.0. Stated on the website is that Mbed TLS aims to be "easy to understand, use, integrate and expand".

<span class="mw-page-title-main">Red Star OS</span> North Korean Linux-based operating system

Red Star OS is a North Korean Linux distribution, with development first starting in 1998 at the Korea Computer Center (KCC). Prior to its release, computers in North Korea typically used Red Hat Linux, and later switched to modified versions of Microsoft Windows with North Korean language packs installed.

LiveCode is a cross-platform rapid application development runtime system inspired by HyperCard. It features the LiveCode Script programming language which belongs to the family of xTalk scripting languages like HyperCard's HyperTalk.

<span class="mw-page-title-main">Terry A. Davis</span> American programmer and creator of TempleOS

Terrence Andrew Davis was an American electrical engineer and computer programmer best known for creating and designing TempleOS, an operating system in the public domain, by himself.

ToaruOS is a hobby operating system and kernel developed largely independently by K. Lange. Despite a 1.0 version being released, Lange has stated that it is still 'incomplete', and may not be 'suitable for any purpose you might have for an operating system'. It is released under the permissive UIUC License, and supports 64-bit computer hardware with SMP.

<span class="mw-page-title-main">Visopsys</span> 32-bit operating system for PC

Visopsys, is an operating system, written by Andy McLaughlin. Development of the operating system began in 1997. The operating system is licensed under the GNU GPL, with the headers and libraries under the less restrictive LGPL license. It runs on the 32-bit IA-32 architecture. It features a multitasking kernel, supports asynchronous I/O and the FAT line of file systems. It requires a Pentium processor.

References

  1. 1 2 3 4 5 6 Hicks, Jesse (November 25, 2014). "God's Lonely Programmer". VICE Motherboard . Archived from the original on May 3, 2015. Retrieved April 21, 2015.
  2. Bruet-Ferréol, Quentin (May 13, 2014). "Temple OS, un système d'exploitation pour parler à Dieu codé par un fou génial". Slate.fr (in French). Archived from the original on December 21, 2014. Retrieved April 21, 2015.
  3. 1 2 3 4 5 6 Cassel, David (September 23, 2018). "The Troubled Legacy of Terry Davis, 'God's Lonely Programmer'". The New Stack. Archived from the original on September 28, 2018. Retrieved September 28, 2018.
  4. Davis, Terry A. (2008). "The LoseThos IBM PC Operating System". LoseThos. Archived from the original on December 16, 2008. Retrieved July 18, 2021.
  5. 1 2 3 4 5 6 Sanders, James (January 21, 2014). "TempleOS: an educational tool for programming experiments". TechRepublic . Archived from the original on April 16, 2015. Retrieved April 21, 2015.
  6. 1 2 Davis, Terry A. (2013). "The Temple Operating System". TempleOS. Archived from the original on July 3, 2013. Retrieved April 22, 2015.
  7. 1 2 3 Cecil, Neita (September 7, 2018). "Man killed by train had tech following". The Dalles Chronicle. Archived from the original on November 8, 2020. Retrieved November 24, 2020.(subscription required)
  8. Davis, Terry A. (n.d.). "Scheduler". The TempleOS Source Code. Archived from the original on June 1, 2016. Retrieved June 16, 2018.
  9. Mathieu, Bruno (November 28, 2014). "TempleOS : le système d'exploitation qui parle à Dieu" [TempleOs: The operating system that talks to God]. Tom's Guide (in French). Archived from the original on July 2, 2015. Retrieved April 21, 2015.
  10. Davis, Terry A. (n.d.). "The Temple Operating System". www.templeos.org. Archived from the original on March 31, 2017. Retrieved March 30, 2017.
  11. Mitton, Richard (June 8, 2015). "A Constructive Look At TempleOS". www.codersnotes.com. Archived from the original on March 26, 2017. Retrieved March 30, 2017.
  12. "A Language Design Analysis of HolyC – Harrison Totty". harrison.totty.dev. Retrieved July 2, 2024.
  13. "HolyC Lang". holyc-lang.com. Retrieved July 2, 2024.
  14. Gómez, Ramiro. "HolyC Programming Language Information & Resources • programminglanguages.info". programminglanguages.info. Retrieved July 2, 2024.
  15. "TempleOS". www.templeos.org. Retrieved July 2, 2024.
  16. Godin, Philippe (January 13, 2017). "la Diagonale de l'art – ART BRUT 2.0". Libération (in French). Archived from the original on March 11, 2017. Retrieved March 22, 2021.
  17. Holwerda, Thom (September 8, 2018). "Creator of TempleOS, Terry Davis, has passed away". OSNews . Archived from the original on January 17, 2019. Retrieved January 6, 2019.
  18. 1 2 "Zeal-Operating-System/ZealOS". github.com. October 6, 2024. Retrieved October 7, 2024.
  19. tinkeros (September 27, 2024). "tinkeros/TinkerOS". github.com. Retrieved October 7, 2024.
  20. "minexew/Shrine". github.com. September 30, 2024. Retrieved October 7, 2024.