Redox Summer of Code 2023 Wrapup

This year’s Redox Summer of Code program has seen us add some exciting capabilities to Redox. Our three interns each came up with their own project proposals, and delivered major new functionality. In addition to our paid internships, our volunteer contributors also made major strides this summer. This year’s projects include VirtIO drivers, the project to use Linux drivers on Redox that we talked about earlier, and on-demand paging and other memory management improvements. There’s also a long list of other improvements outside of SoC.

Amiga systems programming in 2023

I’ve always loved building tools and platforms, and have long been fascinated with the world of operating systems. Apart from reading through the source code (where that’s legally available, of course…) I think there’s no better way to explore and understand a system – and the mindset that produced it – than to develop for it. What follows is a brain-dump of what I’ve learned about developing for the AmigaOS, both on classic 68k-powered hardware to modern PowerPC systems like the X5000. I’ll cover development environments, modern workflows like CI builds on containerised infrastructure, distribution of packages and even a look back in time before C existed, thanks to AmigaDOS’s odd heritage. If you want to develop for Amiga OS – and you should, because the more people develop for alternative and classic platforms, even if only as an occassional side project, the better – this is a great place to start.

Apple and Microsoft fight Brussels over ‘gatekeeper’ label for iMessage and Bing

Apple and Microsoft have argued with Brussels that some of their services are insufficiently popular to be designated as “gatekeepers” under new landmark EU legislation designed to curb the power of Big Tech. Brussels’ battle with the two US companies over Apple’s iMessage chat app and Microsoft’s Bing search engine comes ahead of Wednesday’s publication of the first list of services to be regulated by the Digital Markets Act. Microsoft’s argument seems to make sense. Microsoft was unlikely to dispute the designation of its Windows operating system, which dominates the PC industry, as a gatekeeper, these people said. But it has argued that Bing has a market share of just 3 per cent and further legal scrutiny would put it at a greater disadvantage. I guess the validity of Microsoft’s argument hinges on if that 3% equates to the number of users requirements set by the European Union, but I guess we’ll find out tomorrow. Apple’s argument, though, seems more precarious. Separately, Apple argued that iMessage did not meet the threshold of user numbers at which the rules applied and therefore should not comply with obligations that include opening the service to rival apps such as Meta’s WhatsApp, said the two people. Analysts have estimated that iMessage, which is built into every iPhone, iPad and Mac, has as many as 1bn users globally, but Apple has not disclosed any figures for several years. The decision is likely to hinge on how Apple and the EU define the market in which iMessage operates. One billion users worldwide is most definitely going to mean it exceeds the minimums set by the DSA. Apple, you’re going to have to open up iMessage, and allow competitors and newcomers to interoperate with it. Using messaging services as lock-in is outdated, anti-consumer, and harmful to competition. And if you don’t like it – as they say on the Isle of Man, a boat leaves in the morning.

Former Huawei executive claims that HarmonyOS for PC will release next year

In 2019, the US Department of Commerce put Huawei on an “Entity List”, which banned it from dealing with any US company. The move led Google to revoke Huawei’s Android license, among other repercussions. Then, Huawei developed its own OS, HarmonyOS, for phones, tablets. Wang Chenglu, former Huawei executive and now CEO of Shenzhen Kaihong Digital Industry Development, recently revealed on Weibo (Chinese social media) that HarmonyOS will be coming to PCs. When someone had asked if a PC version of Hongmeng will be released next year, Chenglu responded with a “Yes” to indicate that a HarmonyOS PC variant is planned for 2024. It is worth noting that HarmonyOS is called Hongmeng in China, and OpenHarmony for PC is available to some testers. HarmonyOS is an interesting beast in that it’s much more than just “a modified Android”, as its Wikipedia page details. Even if it never gains a foothold in the west, its potential in China is massive, and big enough to become a serious contender regardless of what we here in the west think of it. I love the gusto of bringing it to the PC, too, and aside from reservations I have about using an operating system developed by one of the many extensions of the Chinese government, I’m actually quite interested in using one of the HarmonyOS smartphones.

SiFive’s P870 takes RISC-V further

ARM had a slow start on its way to move beyond microcontrollers and enter the high performance market. ARM Ltd made the Cortex A9, their first out-of-order core, in 2007. Throughout the 2010s, they gradually made bigger, higher power, and higher performance cores. Pushing performance boundaries isn’t easy, but today, ARM’s cores can be a viable alternative to Intel and AMD’s offerings in the server market. RISC-V started much later, but has seen faster growth. Berkerly’s BOOM core had grown into a sizeable out-of-order design by 2016. Now, SiFive’s P870 looks a lot like ARM’s Cortex X series in terms of reordering capacity, core width, and execution units. It might not be a match for ARM’s best, since the load/store queues look a bit small and vector execution throughput is a bit weak. But from looking at P870, SiFive’s ambitions are clear. They want a chunk of ARM’s pie. RISC-V is getting better and better at a rapid pace. The software side of the story still has a long way to go, but that, too, is getting better. Exciting.

Is macOS’s new XProtect behavioural security preparing to go live?

A third XProtect was discovered in Ventura, this time observing potentially malicious behaviour such as attempts to access private data for browsers and messaging apps. This XProtect Behaviour Service (XBS) has used a set of Bastion rules embedded in the strings in syspolicyd to record behaviours in a new database, but so far has been an observer and hasn’t blocked such behaviours. Security researchers have already been able to discover its records of novel malicious code, and Chris Long has documented how to access its database, but so far syspolicyd has only watched and recorded. Recent descriptions of Bastion rules have identified four, last updated in syspolicyd in macOS 13.5 on 24 July 2023. Those changed on 8 August, when Apple released its first update to the Bastion rules, and again a month later on 1 September, when they changed again. There’s now a fifth Bastion rule, and XBS appears to be getting ready to fly for the first time. If you had told me in 2005 or so, when I was a fervent Mac user, that one day, macOS would come with an extensive set of antivirus and antimalware tools that ran silently in the background, checking everything you do on your computer – I’d have thought you were crazy. But here we are.

I think Ubuntu 23.10 is making a mistake

The next version of the world’s most popular desktop Linux operating system (that’s Ubuntu, for those playing dumb) comes with fewer apps available out-of-the-box. Daily builds of Ubuntu 23.10 now ship with just a super-slim set of default software. These are designed to cover basic computing needs only. For anything else, the idea is that we, the user, fire up the Software Store (though the new one isn’t included in daily builds yet) and install what we want for ourselves. As an idea, it’s not without merit. But in practice, I think it’s a potential misstep. Basically, Ubuntu will no longer ship with LibreOffice, an email client, Shotwell, or a host of other applications and tools. While there’s certainly a market for slim distributions that install a lean and mean base installation for the user to expand into exactly the installation they desire, I doubt users opting for such an approach are interested in using Ubuntu, of all distributions (use Void. It’s the only Linux distribution with the official OSNews Seal of Approval™). In other words, this seems like an odd choice for a distribution aimed at relative newcomers to the Linux world. But then again, Fedora is a better choice for those people anyway.

Wayland and screen savers

Adding screen savers to Wayland is not simply a matter of “port the XScreenSaver daemon”, because under the Wayland model, screen blanking and locking should not be a third-party user-space app; much of the logic must be embedded into the display manager itself. This is a good thing! It is a better model than what we have under X11. But that means that accomplishing that task means not just writing code, but engaging with whatever passes for a standards body or design committee in the Wayland world, and that is… how shall I put this… not something that I personally feel highly motivated to do. However, as I am the world’s foremost expert on screen savers on Unix-like operating systems, here are a few simple admonitions for young and old. Jamie Zawinski imparts his wisdom.

AHA-154xB and ASPI4DOS.SYS

The other day I had a pressing “need” to examine the behavior of Adaptec 154x and compatible SCSI HBAs and their DOS drivers. I found the hard way that the AHA-154xB does not work with Adaptec’s last DOS drivers from circa 1999. That includes the drivers still available for download (ASPI4DOS.SYS version 3.36), as well as the driver shipped with OEM versions of Windows 98SE (ASPI4DOS.SYS version 3.36S). The error message is far from enlightening; effectively the driver acts as if there were no HBA at all. It turns out it’s an incredibly interesting story.

GNOME 45 to break extensions more than usual

GNOME is going to change the way extensions are loaded in GNOME 45, and that’s going to be a bit of a nuisance for both users and developers. Extensions that target older GNOME versions will not work in GNOME 45. Likewise, extensions that are adapted to work with GNOME 45 will not work in older versions. You can still support more than one GNOME version, but you will have to upload different versions to extensions.gnome.org for pre- and post-45 support. I guess the upgrade from GNOME 44 to 45 is going to be even more of a hassle than GNOME upgrades normally are due to broken extensions. Outstanding.

Everything I know about floppy disks

Floppy disk drives are curious things. We know them as the slots that ingest those small almost-square plastic “floppy disks” and we only really see them now in Computer Museums. But there’s a lot going on in that humble square of plastic and I wanted to write down what I’ve learned so far. Exactly what it says on the tin.

Hacking the Timex m851

Take a look at this watch, it’s just some boring watch for runners, right? Nope, I think this might be the best ultra-low power consumer digital watch ever produced! Let me explain… This device certainly should entice some of you.

The Mystery of the Bloomfield Bridge

This pedestrian bridge crosses I-494 just west of the Minneapolis Airport. It connects Bloomington to Richfield. I drive under it often and I wondered: why is it there? It’s not in an area that is particularly walkable, and it doesn’t connect any establishments that obviously need to be connected. So why was it built? There’s no possible way to tie this to OSNews, but it’s such a fun and well-written story it’s worth breaking character for. I’m not even making a smug comment about being Dutch and being used to the world’s best infrastructure and… Damnit. I failed.

The history of Windows NT 3.1

Cutler and his team had nearly zero experience with either OS/2 or with PCs. They did, however, have ample experience with both portable code and with varied hardware platforms. Similar to his experience at DEC, Cutler was very quickly placed as the lead of the NT project. NT needed to have some compatibility with MS-DOS, OS/2, and UNIX (all systems Microsoft supported, sold, and developed at some level at the time ). As a result, NT was a fully 32 bit microkernel operating system with paged virtual memory and the win32 API operating in protected mode with fully pre-emptive multitasking. It also had the NTVDM for MS-DOS compatibility, the win16 WOW system for older Windows compatibility, an OS/2 compatibility subsystem, and a POSIX subsystem for UNIX compatibility. For Cutler and his team, “WNT” was the working name for the OS (increment each letter by one from VMS). The similarities between VMS and NT are striking. The VMS Interrupt Priority Level became the Interrupt Request Level in NT, the Asynchronous System Trap became the Asynchronous Procedure Call, a Fork Procedure became the Deferred Procedure Call, while some other terminology was copied verbatim. NT and VMS share similarities in many ways, but unlike VMS, NT processes can contain more than one thread of execution, NT uses access control lists for object security, NT uses its own NTFS, and NT uses the registry (a centralized hierarchical configuration database) allowing the configuration of computers over a network, among many other major differences. Dave Cutler has had such a massive impact on the world of computing, yet relatively few people know his name or are aware of his accomplishments. He still works at Microsoft today, and has worked on both Azure and Xbox One’s hypervisor.

Linux from Scratch 12.0 released

The Linux From Scratch community is pleased to announce the release of LFS Version 12.0, LFS Version 12.0 (systemd), BLFS Version 12.0, and BLFS Version 12.0 (systemd). This release is a major update to both LFS and BLFS. The LFS release includes updates to binutils-2.41, gcc-13.2.0, and glibc-2.38. In total, 38 packages were updated since the last release. The Linux kernel has also been updated to version 6.4.12. One day, after I’m done with learning Nix and NixOS, I’ll perform a Linux from Scratch installation.

Microsoft deprecates WordPad

Are you a fervent user of WordPad? Are your company’s finances run through a document only WordPad can deal with? Do you run your Kinder egg smuggling side hustle through WordPad? You better find an alternative, because WordPad has just been deprecated. WordPad is no longer being updated and will be removed in a future release of Windows. We recommend Microsoft Word for rich text documents like .doc and .rtf and Windows Notepad for plain text documents like .txt. A moment of silence for WordPad. It has been included in Windows since Windows 95, as a replacement for Microsoft Write, which was included in Windows from Windows 1.0 until Windows NT 3.51. Definitely a long history, but one has to wonder if this deprecation will actually affect anyone.

Nix Flake architecture in practice

Getting into Nix & Nix flakes can be a challenge. You may have have heard of Nix’s fame for reproducibility or Nix flake’s composability, but weren’t sure where or how to start. While some folks seem to settle for a devShell when it comes to Nix, going just a bit deeper, Nix can fulfill more project architecture requirements than merely delivering tooling. In this post we will follow journey of requirements from environment setup, to building, testing, & distributing a “Hello World” Vim plugin as the guide for learning the Nix flakes’s API. One day, when my kids moved out, I’ll dive into NixOS.

The technical merits of Wayland are mostly irrelevant

Today I read Wayland breaks your bad software, which is in large part an inventory of how Wayland is technically superior to X. I don’t particularly disagree with Wayland’s general technical merits and improvements, but at this point I think that they are mostly irrelevant. As such, I don’t think that talking about them will do much to shift more people to Wayland. (Of course, people have other reasons to talk about Wayland’s technical merits. But a certain amount of this sort of writing seems to be aimed at persuading people to switch.) I say that the technical merits are irrelevant because I don’t believe that they’re a major factor any more in most people moving or not moving to Wayland. There’s always multiple angles to things like this, and I would prefer to highlight them when I can.

Why is .US being used to phish so many of us?

Domain names ending in “.US” — the top-level domain for the United States — are among the most prevalent in phishing scams, new research shows. This is noteworthy because .US is overseen by the U.S. government, which is frequently the target of phishing domains ending in .US. Also, .US domains are only supposed to be available to U.S. citizens and to those who can demonstrate that they have a physical presence in the United States. The answer is GoDaddy.

A deep dive into Single Pair Ethernet

Having used a wide range of field device communications busses from simple 4-20mA, classic serial busses like UART and Modbus, and more modern CAN bus, native USB, and Ethernet options I’m always playing with different transports and protocols to see what solutions make sense in my grab-bag of designs for hardware projects. I first became aware of Single Pair Ethernet when I was mindlessly browsing Sparkfun’s new products announcements a while ago, but didn’t jump in because I felt the real utility was the ability to power devices over the same cable. More than a year later, Sparkfun’s Single Pair Ethernet Design Challenge gave me the excuse to create the hardware I originally wanted, offering a power budget that can handle non-trivial hardware with data rates to match. Some light reading for the weekend.