GrapheneOS: an Android-based, security-hardened, open source OS

There’s a new(ish) smartphone operating system aimed at folks who want to be able to run Android apps, but want additional security and privacy features. It’s called GrapheneOS, and it comes from Daniel Micay, the former lead developer of another security-based Android fork called CopperheadOS. After the founders of Copperhead had a falling out last year, Micay turned his attention to the Android Hardening Project, which he recently renamed GrapheneOS to better reflect what the project has become. Official images are currently available for Google Pixel 2 and Pixel 3, but source code is available if you’re interested in installing it on another device with an unlocked bootloader.

Remembering Heartbleed

Colm MacCárthaigh, who was Principal Engineer for Amazon Web Services Elastic Load Balancer five years ago, posted an interesting recollection of his experience the day the Heartbleed bug went public. OpenSSL was in use widely across AWS, and the team there basically dropped everything to hot patch millions of deployments, then over the next hours and days took many other steps to mitigate the damage. It’s a fascinating story if you’re familiar with information security, or even just minimally familiar with the infrastructure that keeps the internet going.

Iconic consoles of the IBM System/360 mainframes

The IBM System/360 was a groundbreaking family of mainframe computers announced on April 7, 1964. Designing the System/360 was an extremely risky “bet-the-company” project for IBM, costing over $5 billion. Although the project ran into severe problems, especially with the software, it was a huge success, one of the top three business accomplishments of all time. System/360 set the direction of the computer industry for decades and popularized features such as the byte, 32-bit words, microcode, and standardized interfaces. The S/360 architecture was so successful that it is still supported by IBM’s latest z/Architecture mainframes, 55 years later. Although the S/360 models shared a common architecture, internally they were completely different to support the wide range of cost and performance levels. Low-end models used simple hardware and an 8-bit datapath while advanced models used features such as wide datapaths, fast semiconductor registers, out-of-order instruction execution, and caches. These differences were reflected in the distinctive front panels of these computers, covered with lights and switches. This article describes the various S/360 models and how to identify them from the front panels. I’ll start with the Model 30, a popular low-end system, and then go through the remaining models in order. Conveniently IBM assigned model numbers rationally, with the size and performance increasing with the model number, from the stripped-down but popular Model 20 to the high-performance Model 195. This is an incredibly detailed article on this – relatively speaking – arcane topic, filled with beautiful photography. A delight to read.

HermiTux: a unikernel that’s binary-compatible with Linux

HermiTux is a unikernel: a minimal operating system with low memory/disk footprint and sub-second boot time, executing an application within a single address space on top of an hypervisor. Moreover, HermiTux is binary-compatible with Linux: it can run native Linux executables. Although being a proof-of-concept, HermiTux supports multiple compiled (C, C++, Fortran) and interpreted (Python, LUA) languages. It provides binary analysis and rewriting techniques to optimize system call latency and modularize a kernel in the presence of unmodified binaries. It supports statically and dynamically linked programs, different compilers and optimization levels. HermiTux also provides basic support for multithreading, debugging and profiling. HermiTux is a research project at Virginia Tech.

The story of the Rendition Vérité 1000

Regrettably, there is little to read about the hardware invented around 1996 to improve 3D rendering and in particular id Software’s ground-breaking title. Within the architecture and design of these pieces of silicon lies the story of a technological duel between Rendition’s V1000 and 3dfx Interactive’s Voodoo. With the release of vQuake in early December 1996, Rendition seemed to have taken the advantage. The V1000 was the first card able to run Quake with an hardware acceleration claiming a 25 Mpixel/s fill-rate. Just in time for Christmas, the marketing coup allowed players to run the game at a higher resolution with a higher framerate and 16-bit colors. But as history would have it, a flaw in the design of the Vérité 1000 was to be deadly for the innovative company. I had never heard of Rendition or its V1000, and this story illustrates why. An absolutely fascinating and detailed read, and be sure to also read the follow-up article, which dives into the 3Dfx Voodoo 1 and Quake.

Running Android next to Wayland

It’s now possible to run Android applications in the same graphical environment as regular Wayland Linux applications with full 3D acceleration. Running Android has some advantages compared to native Linux applications, for example with regard to the availability of applications and application developers. For current non-Android systems, this work enables a path forward to running Android applications in the same graphical environment as traditional non-Android applications are run. Running Android applications safely – as in, containerised, like this approach achieves – inside a regular Linux distribution seems like such an obvious feature. I would love to run a proper Twitter client and the YouTube application on my Linux desktop.

Making video games is not a dream job

The video game industry is richer than it has ever been. Its revenue in 2018 was $43.8 billion, a recent report estimated, thanks in large part to hugely popular games like Fortnite and Call of Duty. These record-breaking profits could have led one to think that the people who develop video games had it made. But then the blood bath began. The video games industry is a cesspool.

European Commission demands Valve stop geo-blocking games inside the EU

The European Commission (EC) has been looking into how PC video games are bought and sold within EU Member States, and it doesn’t like what it’s seen. Issuing an official statement of objections today, directed at Valve, whose Steam online portal is the biggest store for PC games in the world, and five game publishers — Bandai Namco, Capcom, Focus Home, Koch Media, and ZeniMax — the Commission takes the view that they’ve all engaged in antitrust violations by putting geographic restrictions on the games they sell. Good. Geofencing digital goods is clearly not allowed, but a lot of companies still try and get away with it.

Microsoft’s Windows 10 May 2019 Update rollout to begin next week

Microsoft is planning to start rolling out its Windows 10 May 2019 Update next week to testers before it’s more broadly available in late May. The new update is the next major version of Windows 10, codenamed “19H1,” and it’s a relatively light update in terms of features. Microsoft’s big visual change is a new light theme for Windows 10, alongside Kaomoji support, a Windows sandbox feature, and the separation of Cortana and Windows search. As Ars Technica further details, Microsoft is giving users a lot more control over Windows feature updates, and with this one, you can opt to skip the feature update while still receiving security updates.

Adventures of putting 16 GB of RAM in a motherboard that doesn’t support it

Here’s the interesting part. This motherboard doesn’t officially support 16 GB of RAM. The specs on the page I linked indicate that it supports a maximum of 8 GB. It only has 2 slots, so I had a suspicion that 8 GB sticks just weren’t as common back when this motherboard first came out. I decided to try anyway. In a lot of cases, motherboards do support more RAM than the manufacturer officially claims to support. I made sure the BIOS was completely updated (version 946F1P06) and put in my two 8 gig sticks. Then, I booted it up into my Ubuntu 16.04 install and everything worked perfectly. I decided that my theory about the motherboard actually supporting more RAM than the documentation claimed was correct and forgot about it. I enjoyed having all the extra RAM to work with and was happy that my gamble paid off. Then, a few months later, I tried to boot into Windows 10. I mostly use this computer in Linux. I only occasionally need to boot into Windows to check something out. That’s when the fun really started. A deeply technical exploration into this particular issue, and definitely worth a read.

The future of undersea internet cables: are big tech companies forming a cartel?

Think of the undersea cable network as the new economic trade routes and the commodity in transit as data — arguably the most important commodity of the Information Age. Amazon, Microsoft and Google own close to 65% market share in cloud data storage. This makes them major exporters and importers of data. Imagine them forming an oligopoly to own the routes used to transfer any data. Of course, end consumers would benefit from reduced prices that are passed on by the content providers, who now enjoy large economies of scale from owning cables. But smaller companies looking to compete will be at a disadvantage. They, or anyone else looking to use these cables, could be charged a higher price for bandwidth. This is no different from an oil cartel in some aspects. A worse, but less likely, privacy related concern is if Facebook decides to use all data passing through their cable to ‘improve their services’, regardless of who owns the data. There’s a sea change underway in under-sea cables, and it seems to mostly pass by unnoticed, but it could have major consequences for the future of the internet.

The iPhone’s camera used to be a selling point

There are many good reasons to own an iPhone: your social life might revolve around iMessage, you might value Apple’s emphasis on privacy, or perhaps you appreciate the quality of Apple’s displays and software experience. But the one thing that once exemplified Apple’s lead over the Android chasing pack, the iPhone’s camera, is no longer top of the list of reasons to want an iPhone. The iPhone camera has fallen behind, and it’s now something users tend to accept rather than anticipate. A fun little game you can play: whenever an article mentions the importance of iMessage, you can safely assume the article is intended for an American audience. Outside of America, nobody cares about iMessage – it’s just another junk app

Decoding photographs of the IBM 5100’s Executable ROS

Use elementary image processing and machine learning techniques to decode images of a computer screen showing hexadecimal digits. The data in these images are ROM contents from an interesting old computer. The IBM 5100 is an early personal computer (ostensibly portable at 24 kg). Depending on customer-selected options, a 5100 could have interactive programming environments for APL and BASIC built into its ROM. Or, if you prefer, its ROS (“read-only storage”), which seems to have been the IBM-favoured term. The youngest 5100s are a bit over 40 at time of writing, and some accounts online suggest that the ROS devices are no longer dependable. This notebook is part of an effort to back up the entire IBM 5100 ROS to modern media. Specifically, this notebook contains code that analyses screenshots (that is, photographs taken with a camera) containing 512-byte portions of the “Executable ROS”—the ROS containing the native PALM code. That sure is one way to perform computer archeology and keep an old technology alive for posterity.

Intel’s new assault on the data center: 56-core Xeons, 10nm FPGAs, 100gig Ethernet

Intel today launched a barrage of new products for the data center, tackling almost every enterprise workload out there. The company’s diverse range of products highlights how today’s data center is more than just processors, with network controllers, customizable FPGAs, and edge device processors all part of the offering. The star of the show is the new Cascade Lake Xeons. These were first announced last November, and at the time a dual-die chip with 48 cores, 96 threads, and 12 DDR4 2933 memory channels was going to be the top spec part. But Intel has gone even further than initially planned with the new Xeon Platinum 9200 range: the top-spec part, the Platinum 9282, pairs two 28 core dies for a total of 56 cores and 112 threads. It has a base frequency of 2.6GHz, a 3.8GHz turbo, 77MB of level 3 cache, 40 lanes of PCIe 3.0 expansion, and a 400W power draw. AnandTech has more information on these technologies, which few of us will ever get to work with.

Tencent and Xiaomi may be censoring a GitHub page for airing worker grievances

A trending and vastly expanding GitHub database where Chinese developers have been airing their workplace grievances may be at risk of censorship. A number of internet users in China are reporting seeing their access to the database cut off when using browsers offered by companies like Tencent, Alibaba, Xiaomi, and Qihoo 360, as first spotted by Abacus. There’s no indication yet that these censorship efforts may have originated from government orders. And as a reminder: western technology companies, most prominently Apple, is working very closely with the Chinese government, giving them access to user data of Chinese users to aid the China’s totalitarian surveillance state.

Google releases Android Q GSIs for some Project Treble compatible devices

Google just dropped the second Android Q beta for all three generations of Google Pixel smartphones, but they also released system images that will allow for any Project Treble-compatible smartphone to flash Android Q! Yes, Google has finally released generic system images (GSIs) of the latest Android version. That means non-Pixel smartphones can test the latest Android version, too. Finally a benefit of Treble is showing up. A small benefit though, because these GSIs only work for devices that launched with Android 9 Pie.

Mer Project and Sailfish OS to merge

I am pleased to announce a significant change in Mer and Sailfish OS which will be implemented in phases. As many of you know Mer began many years ago as a way for the community to demonstrate “working in the open” to Nokia. This succeeded well enough that Mer eventually closed down and shifted support to MeeGo. When MeeGo stopped – thanks to its open nature – we, Carsten Munk and I, were able to reincarnate Mer as an open community project and continue to develop a core OS and a suite of open development tools around it. Over time a number of organisations used the Mer core as a base for their work. However, there was one that stood out: Jolla with Sailfish OS which started to use Mer core in its core and they have been by far the most consistent contributors and supporters of Mer. Once again, Mer has served its purpose and can retire. To clarify that this will be the official ‘working in the open’ core of SailfishOS we’re going to gradually merge merproject.org and sailfishos.org. Just another line in the footnote that is Maemo/Meego/Sailfish/etc.

Serenity: a new UNIX-like operating system

I always wondered what it would be like to write my own operating system, but I never took it seriously. Until now. I’ve grown tired of cutesy and condescending software that doesn’t take itself or the user seriously. This is my effort to bring back the feeling of computing I once knew. Roughly speaking, the goal here is a marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix. This is a system by me, for me, based on the things I like. Seriously impressive work, as you can see in the demo video of the current state of the operating system.

Microsoft announces Visual Studio 2019 general availability

During a virtual launch event today, Microsoft announced that Visual Studio 2019 is now generally available. The new IDE contains a number of new features, such as making it easier to clone a Git repo, and there are improvements for template selection. There’s also a new feature called Live Share. Live Share lets you collaborate with other developers in real time. Announced at Build 2018 last year, it’s been in preview ever since. Since then, Microsoft has added support for languages like C++ and Python, and it’s started allowing guests to start debugging sessions. Live Share works with both Visual Studio 2019 and Visual Studio Code. This release includes Visual Studio for the Mac.