Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Windows Mars Space

The Mars Express Spacecraft Is Finally Getting a Windows 98 Upgrade (theverge.com) 40

Engineers at the European Space Agency (ESA) are getting ready for a Windows 98 upgrade on an orbiter circling Mars. The Verge reports: The Mars Express spacecraft has been operating for more than 19 years, and the Mars Advanced Radar for Subsurface and Ionospheric Sounding (MARSIS) instrument onboard has been using software built using Windows 98. Thankfully for humanity and the Red Planet's sake, the ESA isn't upgrading its systems to Windows ME. The MARSIS instrument on ESA's Mars Express was key to the discovery of a huge underground aquifer of liquid water on the Red Planet in 2018. This major new software upgrade "will allow it to see beneath the surfaces of Mars and its moon Phobos in more detail than ever before," according to the ESA. The agency originally launched the Mars Express into space in 2003 as its first mission to the Red Planet, and it has spent nearly two decades exploring the planet's surface.

MARSIS uses low-frequency radio waves that bounce off the surface of Mars to search for water and study the Red Planet's atmosphere. The instrument's 130-foot antenna is capable of searching around three miles below the surface of Mars, and the software upgrades will enhance the signal reception and onboard data processing to improve the quality of data that's sent back to Earth. "We faced a number of challenges to improve the performance of MARSIS," explains Carlo Nenna, a software engineer at Enginium who is helping ESA with the upgrade. "Not least because the MARSIS software was originally designed over 20 years ago, using a development environment based on Microsoft Windows 98!"

This discussion has been archived. No new comments can be posted.

The Mars Express Spacecraft Is Finally Getting a Windows 98 Upgrade

Comments Filter:
  • Clickbait Headline (Score:5, Informative)

    by sconeu ( 64226 ) on Friday June 24, 2022 @08:27PM (#62649104) Homepage Journal

    The DEVELOPMENT ENVIRONMENT was Win98. There's no way ANYONE would use Win98 for a reliable and realtime system.

    I'm sure it ran some RTOS where the dev environment was Win98.

    • by wakeboarder ( 2695839 ) on Friday June 24, 2022 @10:52PM (#62649258)

      Yep, they ran an RTOS, win98 would be way way to resource intensive to run on a satellite

    • by gweihir ( 88907 )

      Obviously. Nobody would use an OS barely fit as a game-launcher on something like this.

    • Re: (Score:1, Informative)

      by Anonymous Coward

      The DEVELOPMENT ENVIRONMENT was Win98. There's no way ANYONE would use Win98 for a reliable and realtime system.

      I'm sure it ran some RTOS where the dev environment was Win98.

      Given the purpose of DEVELOPMENT, I don't even believe anyone would use Win98 for this.

      Sure, DEV can usually be a non-critical environment, but it's usually not utterly pointless. I would assume some other hardened OS (as in NOT Windows-Anything) would be running TEST and PROD.

      • by jmccue ( 834797 )

        Articles written like theverge put out it is no wonder many people in the "Flyover States" in the US are so screwed up. Since it seems these days no one wants to put real facts in their articles, people decided to make up their own. I blame twitter for this.

        Like may people here I could not believe what the verge said, but non-tech people would have no reason not to believe that article. So when people proved the article wrong their heads start spinning, not knowing who to believe. :(

      • by tlhIngan ( 30335 ) <slashdot.worf@net> on Saturday June 25, 2022 @10:13AM (#62649904)

        Given the purpose of DEVELOPMENT, I don't even believe anyone would use Win98 for this.

        Sure, DEV can usually be a non-critical environment, but it's usually not utterly pointless. I would assume some other hardened OS (as in NOT Windows-Anything) would be running TEST and PROD.

        Only someone from DevOps would say that. Anyone with any hint of embedded development experience knows otherwise, and I'm being really generous here - including app developers for iOS, Android, Windows Phone, Windows CE, PocketPC, etc., as well people who have worked with Arduinos, Raspberry Pis, and those who have done it professionally.

        The development environment has nothing to do with the target. It's just the environment the tools run on to build the binary to which you will run in an emulator, simulator, or actual hardware for testing. You can write an Arduino sketch using Arduino studio or VS Code, or whatever, then you build it and upload it to your board and your sketch runs on it. Or you might use Android Studio to write your next Android app, test it on the emulator, deploy to your phone.

        In any case, the machine you run it on (aka "development environment") can run Windows, Linux, or macOS, and it makes absolutely no difference what you use. You run the tool, the tool builds your code, spits out a binary, and you deploy to your hardware.

        Windows 98, although unusual a choice for a dev environment (20 years ago, you might not be running Windows 2000 since it was only available from 1999, but Windows NT 4 was certainly an option at the outset of development), isn't completely unusual a choice - perhaps the necessary tools to deploy the code require DOS programs to interface. Windows support might have been unusual, and things like giveio (allows IO port access for NT processes) might not have been fully developed, or it just didn't exist. So users might have been expected to run a DOS application to deploy the code to the hardware or for debug purposes, and only Win98 at the time could do that.

        NT 4 could run DOS tools just fine - it had a 16 bit environment that was reasonably complete (you could license emulations SoundBlaster for it so you can even do DOS games under NT4 with sound), so running build tools and compilers would be no problem, but tools that needed direct hardware access would've required a driver to be developed for Windows. Given the era, it would've been extremely fluid and a mix of DOS based tools used to getting their way to talk directly to hardware wouldn't be so unusual. Especially debug probes and such which often required an addon board in the PC. Heck, it wouldn't surprise me if many tools used a DOS program to access the hardware and then interfaced with a GUI for easier navigation when debugging.

        So it's entirely possible, likely even, their hardware tools required DOS to be used, which eliminates the use of Windows NT for development, leaving Windows 98 as the likely candidate since many tool vendors had Windows UIs to be all flashy (Windows 95 was it, after all), but were a pretty face on the backend which used the old traditional DOS utilities the tool vendor had.

        These days you don't think about it too much since everything would be over USB. In the past, hardware debug probes used serial, parallel, or more commonly ISA and PCI slots to interface with. And the past if they used Windows 98, would mean development around that time where a lot of tools still were MS-DOS based which made sense - satellite development takes years so if it launched in 2002, software development would've started around the time Win98 came out, and given hardware evolution, the hardware would've been out the early to mid 90s, and hardware development tools were DOS based at the time.

        • (20 years ago, you might not be running Windows 2000 since it was only available from 1999, but Windows NT 4 was certainly an option at the outset of development)

          I agree with your general point, but 20 years ago Windows 2000 was almost obsolete.

    • by saider ( 177166 )

      But what hardware are they using? Can Win98 even work a modern computer?

      I guess it is all in a VM like VirtualBox.

    • According to https://en.wikipedia.org/wiki/... [wikipedia.org] , the MARSIS instrument on the satellite is running EONIC Virtuoso.

  • Ok so Windows 98 did not have a kernel like Windows today does. It ultimately was the desktop environment installed on top of MSDOS, so why would the include a desktop environment on a satellite around mars? Makes you wonder who is using the start menu while orbiting mars.
    • My guess is the developers wanted Visual Studio and Outlook on their PCs but use some Dos stuff in the background as well. Or perhaps the probe had no OS but was a radiation hardened 386. I read a long time ago on slashdot about developers using Borland C for embedded x86 appliances with no OS to create executables. That would be my guess what the win98 machine was doing where compatibility problems would arise from using NT based systems like XP and later.

      I have to wonder why haven't they moved to a VM or

  • Misleading headline (Score:5, Informative)

    by ilotgov ( 637717 ) on Friday June 24, 2022 @09:03PM (#62649150)
    Original HL of the article https://www.esa.int/Enabling_Support/Operations/Software_upgrade_for_19-year-old_martian_water-spotter [esa.int]:
    Software upgrade for 19-year-old martian water-spotter
    Read on... then:
    "Not least because the MARSIS software was originally designed over 20 years ago, using a development environment based on Microsoft Windows 98!"
    Turns out it is not the MARSIS software running on Windows 98 but its development system.
    Most likely it is a compiler upgrade plus a migration to modern development system on a modern OS.
    • by bill_mcgonigle ( 4333 ) * on Friday June 24, 2022 @10:00PM (#62649202) Homepage Journal

      At this point /. depends on "stupid editor" comments to sell ad views.

      This one was a bit too obvious

    • by Waffle Iron ( 339739 ) on Friday June 24, 2022 @11:12PM (#62649274)

      Since Windows 98 seems like little more than a joke today, the first thing that came to my mind was: Why didn't they use Windows NT for the dev environment? Government contractors could certainly afford the overpriced workstation licenses of the time.

      Then I remembered that a lot of embedded tools back then originated in DOS, and expected to be able to directly use whatever PC features they wanted (like parallel ports or custom bus cards) to interface with hardware test platforms, and they almost certainly lacked NT device drivers. In fact, the whole dev software environment might have been 16-bit X86 code, with which early Windows NT was very weak, IIRC.

      So maybe Win98, with its backwards DOS compatibility, made a little more sense than it would seem at first glance. Hopefully they didn't connect the dev boxes directly to the internet, though.

      • actually: At the time of Windows 98, wasn't the supposedly real OS version of Windows already "Windows 2000 based on NT technology"?

        (where NT of course means "new technology", so it was "based on new technology technology")

  • Mar Express could not have been running Windows 98 because it didn't crash when it got there. Misleading headline.
  • So the issue is... (Score:5, Insightful)

    by kenh ( 9056 ) on Friday June 24, 2022 @11:00PM (#62649264) Homepage Journal

    They had to find a Win98 desktop to run the development environment to modify their embedded system?

    What a stupid story.

    It's nice that they figured out how to better take advantage of the hardware they shot into space 20 years ago, but the Win98 part of the story is meaningless. To me the issue is they run the risk of killing the satellite/probe if there's a burp in their remote update process.

  • Antenna (Score:5, Interesting)

    by hackertourist ( 2202674 ) on Saturday June 25, 2022 @02:30AM (#62649450)

    So I wondered how they got an antenna that large onto a small spacecraft (I was assuming it'd be a parabolic dish).
    As it turns out, the antenna is a dipole: 2 hollow booms [esa.int], 20 m long each. It's folded up into a zigzag pattern for launch, and released once in Mars orbit [esa.int].

    Deployment video [nasa.gov]

  • don't fix it. Aside from the Win98 stuff, if the satellite performs the tasks it was designed to do, within specification, why would you risk bricking it in Mars orbit?

    the software upgrades will enhance the signal reception and onboard data processing to improve the quality of data sent back to Earth.

    After 19 years leave it alone and find some terrestrial method to enhance your data. There are more than likely memory and other hardware issues that make this highly dubious. If in-service upgrades were part of the satellite's design, why wait 19 years to upgrade? Better yet, build a new satellite and crash this one on Mars in some place tha

    • Mod up. You are totally correct. The data rate at 80m if 20+20=40M half wave would be slow. So launch a repeater to orbit mars further out, and program the one in orbit, to compress data better , and transmit when the repeater is in range. Any new mars probes can then go light on power/batteries, antenna tracking, and power boost and positioning thruster reserves. Nothing to do with the OS. Think MPEG2 to AC1/H265, which may be tricky if you only have 8 or 16 bits.

An adequate bootstrap is a contradiction in terms.

Working...