What is the smallest amount of memory a OS has used?

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
Post Reply
NunoLava1998
Member
Member
Posts: 273
Joined: Sun Oct 09, 2016 4:38 am
Libera.chat IRC: NunoLava1998

What is the smallest amount of memory a OS has used?

Post by NunoLava1998 »

I want to know the smallest amount of memory whatever OS has to use.

Mine needs 16.77747 MB (not MiB) of RAM to function, as my IDT is stored around 16.77746 MB. There is a lot of unused space.
Developing TRIODIUM OS. Or call it Dixium if you want. It doesn't matter.

https://github.com/NunoLava1998/DixiumOS
User avatar
hgoel
Member
Member
Posts: 89
Joined: Sun Feb 09, 2014 7:11 pm
Libera.chat IRC: hgoel
Location: Within a meter of a computer

Re: What is the smallest amount of memory a OS has used?

Post by hgoel »

:|
I could write an OS that uses 1 byte of memory, it'd be a single opcode: 0xF4
Now is that useful? No. An OS is ideally supposed to be able to use all of the memory on the system while satisfying the needs of applications running under it, as such, the smallest amount of memory used is a useless metric. You use enough memory to work well on the platform you're targeting, which varies from platform to platform.

Or in other words, less memory used != useful OS
"If the truth is a cruel mistress, than a lie must be a nice girl"
Working on Cardinal
Find me at [url=irc://chat.freenode.net:6697/Cardinal-OS]#Cardinal-OS[/url] on freenode!
User avatar
Love4Boobies
Member
Member
Posts: 2111
Joined: Fri Mar 07, 2008 5:36 pm
Location: Bucharest, Romania

Re: What is the smallest amount of memory a OS has used?

Post by Love4Boobies »

I think he means the kernel's memory footprint, not how much of the system's memory is utilized. But the answer to that question doesn't hide too much useful information. Operating systems come in many flavours and run on many types of machines, as they are part of solutions to all sorts of different problems. An OS running on a smart card (e.g., on a credit card or on your mobile phone's SIM card) has different requirements and constraints than an OS running on a mainframe or on a sensor network. Sometimes, budget is a constrained and machines are small, sometimes there is emphasis on real-time tasks, other times on I/O, sometimes performance takes precedence, sometimes security takes precedence, etc. A design is a collection of trade-offs and you have to figure which ones to make in order to solve your problem. If you have no goal (e.g., "I want to make an OS") then you'll end up with a hodgepodge---something for which there is always a better alternative.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: What is the smallest amount of memory a OS has used?

Post by Brendan »

Hi,
NunoLava1998 wrote:Mine needs 16.77747 MB (not MiB) of RAM to function, as my IDT is stored around 16.77746 MB. There is a lot of unused space.
If my computer happens to have 1 TiB of RAM but the firmware knows that a 64 KiB area at "16.77746 MB" is faulty and reports that area as unusable in the memory map; then 1 TiB of RAM is not enough to run your OS. However; if my computer happens to have 4 MiB of RAM where 3 MiB is at 0x0000000 and the other MiB is at "16.77746 MB", then maybe that is enough to run your OS.

To determine how much RAM your OS actually needs, find the minimum value of x that satisfies "1 TiB < x < 4 MiB".


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
SpyderTL
Member
Member
Posts: 1074
Joined: Sun Sep 19, 2010 10:05 pm

Re: What is the smallest amount of memory a OS has used?

Post by SpyderTL »

What is the smallest amount of memory a "modern" OS has "required"?

MS-DOS was 16-bit, and was pretty happy with 1 MB of RAM, but it had no graphics, no sound, no threads, and no internet support.

Windows 3.x had all of this, and required up to 3 MB of RAM, depending on version and CPU.

You may find some OS out there that has better functionality and lower system requirements, but probably not by much.
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
User avatar
Sik
Member
Member
Posts: 251
Joined: Wed Aug 17, 2016 4:55 am

Re: What is the smallest amount of memory a OS has used?

Post by Sik »

SpyderTL wrote:MS-DOS was 16-bit, and was pretty happy with 1 MB of RAM, but it had no graphics, no sound, no threads, and no internet support.
The original 1.0 release had to be able to run on machines with only 64KB of RAM (ouch). Actually looking at the way the BIOS and DOS do things, they were seriously trying to squeeze as much as possible from just about every byte.
User avatar
Schol-R-LEA
Member
Member
Posts: 1925
Joined: Fri Oct 27, 2006 9:42 am
Location: Athens, GA, USA

Re: What is the smallest amount of memory a OS has used?

Post by Schol-R-LEA »

There are so many variables in an open-ended question like this that it cannot be meaningfully answered. What constitutes a working operating system? Do operating systems that don't have a true memory-resident kernel (such as MS-DOS) count, and if not, why not? What about embedded systems - does it have to be a general-purpose OS to count, or does anything that drives the hardware's functions qualify? Which services does the hardware platform provide in hardware, which can be in firmware, and which need to be in the kernel? If implementing a given service (done entirely in software) requires more code in one instruction set than in another (which is not at all uncommon), is the smaller implementation 'better' than the other, or does it even matter?

There have been operating systems as small as 1K in the past (e.g., the KIM-1 monitor), and many systems have run with nothing that could be called an operating system at all - including most early mainframes, in the days before batch processing was developed. You can't really compare these systems to a modern one in any real way, though.

So the answer is 'mu' - the question itself is faulty.
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.
User avatar
Solar
Member
Member
Posts: 7615
Joined: Thu Nov 16, 2006 12:01 pm
Location: Germany
Contact:

Re: What is the smallest amount of memory a OS has used?

Post by Solar »

SpyderTL wrote:MS-DOS was 16-bit, and was pretty happy with 1 MB of RAM, but it had no graphics, no sound, no threads, and no internet support.
PC DOS 1.0 (the IBM-branded version of MS-DOS) took up about 12kByte of memory.

The ZX-81 (contemporary to IBM-PC's and MS-/PC-DOS) ran a text interface and BASIC interpreter off a 8kByte ROM chip and 1kByte of RAM.
Windows 3.x had all of this, and required up to 3 MB of RAM, depending on version and CPU.

You may find some OS out there that has better functionality and lower system requirements, but probably not by much.
LOL...

AmigaOS 1.x ran off 256kByte of RAM and a 256kByte ROM. 32bit, GUI, 8bit color, 4x8bit stereo sound, preemptive multitasking. (That's about contemporary to Windows 1.0 by the way.)
Every good solution is obvious once you've found it.
User avatar
bauen1
Member
Member
Posts: 29
Joined: Sun Dec 11, 2016 3:31 am
Libera.chat IRC: bauen1
Location: In your computer
Contact:

Re: What is the smallest amount of memory a OS has used?

Post by bauen1 »

256 bytes of code (actually 3 bytes are unused) and a few other bytes of temporary variables, the WOZ monitor for the apple-i (6502)
:P
myunix (version 3) (name suggestions are welcome!)
GPG Key fingerprint: 5ED6 D826 ACD4 3F8E D9D4 FBB2 FF0A AF5E 0812 BA9C
Post Reply