24 votes

Topic deleted by author

5 comments

  1. [4]
    MeckiSpaghetti
    Link
    Impressive! (It surprised me that the modem runs its own Linux kernel, is this common for today's hardware?)

    Impressive!

    (It surprised me that the modem runs its own Linux kernel, is this common for today's hardware?)

    2 votes
    1. [3]
      pseudolobster
      Link Parent
      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.

      10 votes
      1. [2]
        babypuncher
        Link Parent
        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.

        6 votes
        1. pseudolobster
          Link Parent
          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.

          2 votes
  2. Toric
    Link
    Im surprised it uses linux... Id have expected a smaller kernel, such as minix, RIOT, or an RTOS...

    Im surprised it uses linux... Id have expected a smaller kernel, such as minix, RIOT, or an RTOS...