Yes and no. Most devices we think of as peripherals are what we would describe 20 years ago as their own computer, with their own CPU, RAM, storage, etc, running a software stack which may or may...
Yes and no. Most devices we think of as peripherals are what we would describe 20 years ago as their own computer, with their own CPU, RAM, storage, etc, running a software stack which may or may not be sufficiently complex to call it an OS. For example my mind was kinda blown when I realized the microcontroller on a hard drive was actually running VXWorks, and if you plug a serial port into some unused pin headers you can listen in on the hard drive's own internal bootup process.
It was at that moment it clicked and I realized that for the last 15 years devices have been largely whole computers. The device isn't "natively" speaking SATA. It's a whole computer booting up and using SATA as its networking interface to talk to the host system. This was cemented when I ran into this article where legendary hacker SpriteTM installed linux on a hard drive. Like I mean, he installed linux, on a hard drive... As in, he managed to boot the linux kernel on the hard drive's internal microcontroller.
But no, linux isn't common for these things, or if it is we don't know because the mfgr hasn't documented it or complied with the GPL license. Often they'll use closed-source proprietary realtime operating systems like VXWorks, or maybe they'll use the Mach kernel and BSD userspace in order to avoid releasing their source code. Security by obscurity is the name of the game in the embedded devices world.
Linux is common on settop boxes, routers, NASes, etc, but not so much on tightly integrated cellular baseband modem chips, hard drive controllers, etc.
This wasn't even that uncommon 20 years ago, or earlier for that matter. The disk drive sold for the Commodore VIC-20 (and later the C64 and C128) had its own 6502 CPU and ROM chip containing a...
Exemplary
This wasn't even that uncommon 20 years ago, or earlier for that matter.
The disk drive sold for the Commodore VIC-20 (and later the C64 and C128) had its own 6502 CPU and ROM chip containing a disk operating system for interfacing with the drive. This was certainly an unusual and expensive arrangement in 1982 though.
Haha, it's like you read my mind. I've been watching a lot of Adrain's Digital Basement on youtube lately, so oldschool hardware has been on my mind recently. Shortly after writing this I actually...
Haha, it's like you read my mind. I've been watching a lot of Adrain's Digital Basement on youtube lately, so oldschool hardware has been on my mind recently. Shortly after writing this I actually thought about the 1541 and how it technically had more processing power than the C64 itself and ran its own OS, and thought about how I'd edit that into my comment. I ended up saying "fuck it" and hoped someone would come along mentioning that.
Impressive!
(It surprised me that the modem runs its own Linux kernel, is this common for today's hardware?)
Yes and no. Most devices we think of as peripherals are what we would describe 20 years ago as their own computer, with their own CPU, RAM, storage, etc, running a software stack which may or may not be sufficiently complex to call it an OS. For example my mind was kinda blown when I realized the microcontroller on a hard drive was actually running VXWorks, and if you plug a serial port into some unused pin headers you can listen in on the hard drive's own internal bootup process.
It was at that moment it clicked and I realized that for the last 15 years devices have been largely whole computers. The device isn't "natively" speaking SATA. It's a whole computer booting up and using SATA as its networking interface to talk to the host system. This was cemented when I ran into this article where legendary hacker SpriteTM installed linux on a hard drive. Like I mean, he installed linux, on a hard drive... As in, he managed to boot the linux kernel on the hard drive's internal microcontroller.
But no, linux isn't common for these things, or if it is we don't know because the mfgr hasn't documented it or complied with the GPL license. Often they'll use closed-source proprietary realtime operating systems like VXWorks, or maybe they'll use the Mach kernel and BSD userspace in order to avoid releasing their source code. Security by obscurity is the name of the game in the embedded devices world.
Linux is common on settop boxes, routers, NASes, etc, but not so much on tightly integrated cellular baseband modem chips, hard drive controllers, etc.
This wasn't even that uncommon 20 years ago, or earlier for that matter.
The disk drive sold for the Commodore VIC-20 (and later the C64 and C128) had its own 6502 CPU and ROM chip containing a disk operating system for interfacing with the drive. This was certainly an unusual and expensive arrangement in 1982 though.
Haha, it's like you read my mind. I've been watching a lot of Adrain's Digital Basement on youtube lately, so oldschool hardware has been on my mind recently. Shortly after writing this I actually thought about the 1541 and how it technically had more processing power than the C64 itself and ran its own OS, and thought about how I'd edit that into my comment. I ended up saying "fuck it" and hoped someone would come along mentioning that.
Im surprised it uses linux... Id have expected a smaller kernel, such as minix, RIOT, or an RTOS...