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 ?
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.