Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
MenuetOS
Operating system

MenuetOS is an operating system with a monolithic preemptive, real-time kernel written in FASM assembly language. The system also includes video drivers. It runs on 64-bit and 32-bit x86 architecture computers. Its author is Ville M. Turjanmaa. It has a graphical desktop, games, and networking abilities (TCP/IP stack). One distinctive feature is that it fits on one 1.44 MB floppy disk.

Related Image Collections Add Image
We don't have any YouTube videos related to MenuetOS yet.
We don't have any PDF documents related to MenuetOS yet.
We don't have any Books related to MenuetOS yet.
We don't have any archived web articles related to MenuetOS yet.

History

32-bit

MenuetOS was originally written for 32-bit x86 architectures and released under the GPL-2.0-only license, thus many of its applications are distributed under the GPL.1

64-bit

The 64-bit MenuetOS, often referred to as Menuet 64, remains a platform for learning 64-bit assembly language programming. The 64-bit Menuet is distributed without charge for personal and educational use only, but without the source code, and the license includes a clause that prohibits disassembly.2

Multi-core support was added on 24 Feb 2010. lindbs-os/ ├── boot.asm ├── kernel.c ├── linker.ld ├── Makefile [bits 16] [org 0x7c00]

start:

cli xor ax, ax mov ds, ax mov es, ax  ; Carrega o kernel (supondo que esteja logo após o bootloader) mov si, msg call print  ; Pula para o kernel jmp 0x0000:0x7e00

print:

mov ah, 0x0E

.next_char:

lodsb cmp al, 0 je .done int 0x10 jmp .next_char

.done:

ret

msg db "LindBS: Iniciando kernel...", 0

times 510-($-$$) db 0 dw 0xAA55 void print_char(char c) {

volatile char* video = (volatile char*)0xb8000; video[0] = c; // caractere video[1] = 0x07; // cor (cinza claro em fundo preto)

}

void kernel_main() {

const char* message = "Bem-vindo ao LindBS!"; volatile char* video = (volatile char*)0xb8000; for (int i = 0; message[i] != '\0'; i++) { video[i * 2] = message[i]; video[i * 2 + 1] = 0x07; } while (1); // loop infinito

} OUTPUT_FORMAT("elf32-i386") ENTRY(kernel_main)

SECTIONS {

. = 0x7e00; .text : { *(.text) } .data : { *(.data) } .bss : { *(.bss) }

} make run

Features

MenuetOS development has focused on fast, simple, efficient implementation. MenuetOS has networking abilities, and a working TCP/IP stack. Most of the networking code is written by Mike Hibbett.

The main focus of Menuet has been on making an environment for easy assembly programming, but it is still possible to run software written in high-level programming languages on the assembler core. The biggest single effort towards high-level language support is Jarek Pelczar's work in porting C libraries to Menuet.

The GUI at version 0.99 supports display resolutions up to 1920 x 1080 (16 million colours) with window transparency. The OS has support for several classes of USB 2.0 peripherals. MenuetOS ships with the shareware versions of Quake and Doom.3

For disk access, MenuetOS supports the FAT32 file system.4 Write support is only possible to USB connected devices.

As of version 1.49.60, MenuetOS can be booted on UEFI machines as well using Easyboot.

Distributions

32-bit

  • Menuet32
  • GridWorks "EZ" distribution (comprehensive 32-bit archive packages) (CD/HD Boots)

64-bit

The 64-bit main distribution is now proprietary. Several distributions of the 32-bit GPL MenuetOS still exist, including translations in Russian, Chinese, Czech, and Serbian.

See also

Bibliography

Wikimedia Commons has media related to MenuetOS.

References

  1. (in German) MenuetOS: In Assembler geschriebenes Betriebssystem, golem.de, 2009-08-10 http://www.golem.de/0908/69201.html

  2. "License (MenueOS)". menuetos.net. Retrieved 27 December 2023. http://www.menuetos.net/m64l.txt

  3. (in German) MenuetOS: In Assembler geschriebenes Betriebssystem, golem.de, 2009-08-10 http://www.golem.de/0908/69201.html

  4. (in Russian) Яков Уваров (30 August 2005) Мал золотник, да дорог, Computerra https://old.computerra.ru/softerra/224752/