How did OS worked for early "Smart" devices

Ziggurat@sh.itjust.works to No Stupid Questions@lemmy.world – 26 points –

The question on the OS got me thinking.

How did OS worked on "intermediate device". by that I mean stuff that are too advanced to be just a few logical gates and EPROM, but before the time where most electronic devices are a computer running Linux

Stuff like phone from the 00's before android, digital camera, washing machine and other devices which were already quite advanced (Some could already run java) but not at the point to be "just an embedded computer running some hardware" Did they already had an OS ? Was it a minimalist home-made one bought to a third party ? Or was it still mostly working by counting bytes and drawing truth table ?

8

In certain cases, are you confusing operating system with firmware?

Especially back in the day before “smart” washing machines, they would run a specific firmware rather than a more general OS

The firmware will have all the logic and functionality for the given device but isn’t designed to be extended or have additional software added to it, like an OS would.

There are then much smaller OSs which run on more modern devices where software extensibility and more complex tasks are desired.

Actually, firmware is the Word I was looking for. Thx for the clarification

There are low-level real time operating systems (RTOS) that are designed for embedded devices (which are basically what you're describing). They're an operating system, but not a full-blown one like most people imagine (Android, iOS, Windows, etc).

Those RTOS usually handle things like task/thread management, hardware abstraction, memory management, etc to relieve the application developer somewhat -- all low level stuff. The user interfaces on those devices aren't a general purpose GUI like X.Org or the Windows shell but is more a set of graphics libraries the system software and applications all use.

Whether they used something off the shelf like FreeRTOS or vxWorks or if they developed something in house varies from manufacturer to manufacturer.

In some cases, the firmware is just written directly for the microcontroller powering the device.

Further back, those may have been programmed directly in assembly.

The ruling cellphone OS before Android and iOS was Symbian. Java was often used for apps. But when smartphones got more and more popular Symbian couldn't keep up.

Apart from that there was Blackberry's OS, Windows Mobile and Palm OS. And probably some others.

Just to add- Symbian didn’t rule in the same way android and ios do these days. There were more overall OSs on the market

You could write C or assembly and it would be compiled to something that would run on an embedded chip. They may or may not be running an RTOS.

Back in 1994, there was once a company called General Magic that tried to make a smart device and OS. It was a colossal failure due to the limitations of hardware at the time, but it heavily influenced everything that came afterwards.

Check out an article about it and the trailer to a documentary about it here: https://www.generalmagicthemovie.com/