A Brief Update

Since my last update, I’ve found myself rather busy with family affairs, but nevertheless have still been working on some technologically-focused aims of my own. I’m looking towards studying and becoming a Red Hat Certified System Administrator by the end of the year, a certification which I hope will serve as a good stepping stone for some of my career ambitions in the future.

In my home environment, I’ve finally got the AMDGPU open-source drivers working on my openSUSE system and my Radeon R9 290; I haven’t had much of an opportunity to really push the drivers to check if there has been any performance increase over the FGLRX drivers that I had been using, but it at least opens the door for me using Vulkan in the future. I’ve started playing a few games as well, but have not been able to finish them; these include Planescape: Torment and Doom (2016). Maybe when I have a bit more time, I’ll be able to go a bit further with these particular games.

But the biggest news of the last three months on the technological side of things is my purchase of a Synology DS416 NAS system for home storage. I’ve loaded it with four 4TB WD Red hard drives and set it up for RAID 5, with a total advertised capacity of 10.90TB in total. At present, I’ve only allocated 4TB of this space as a backup storage space, which I’m generally accessing through NFS on Linux, but can also set up for SMB on Windows, but with iSCSI capabilities on the system and my own experience with iSCSI through my job doing technical support for a certain brand of enterprise iSCSI SAN arrays, I will likely have ample opportunities to set up the system for VM space on either KVM or as a practice environment for VMware ESXi. I’ll report more on this when I’ve had a chance to do performance benchmarking and to set up more environments on the system.

A new job and a dead GPU: An excuse for a new gaming PC

Something quite notable in my life has happened that I forgot to mention in my last post. After seven years in third-level education and just as much time spent in my previous job as a shop assistant in a petrol station, I’ve finally got a job that is relevant to what I’m studying and am most proficient at. I’m now working in enterprise technical support for Dell, which is quite a change, but both makes use of my technical skills learned both at DIT and the almost twenty years that I’ve spent playing around with computers in my own time and the customer service skills that I learned in my last job. Notably, the new job comes with a considerable increase in my pay; while the two-and-a-half times increase per annum comes mostly because of the fact that I work five days a week now, I am still making more now than I would have working full time previously.

Coincidentally, very recently, I experienced some bizarre glitches on my primary desktop computer, where the X Window System server on Linux appeared to freeze every so often, necessitating a reboot. Resolving the cause of the problem took some time, from using SSH to look at the Xorg logs when the crash occurred to discovering that the issue later manifested itself occasionally as graphical glitches rather than a complete freeze of the X Window System, then later experiencing severe artifacting in games on both Linux and Windows. In the end, the diagnosis led to one conclusion – my five-year-old ATI Radeon HD 4890 graphics card was dead on its feet.

Fortunately, I had retained the NVIDIA GeForce 8800 GTS that the computer had originally been built with, so I was able to keep my primary desktop going for everyday tasks by swapping the old GPU in for the newer, dead one. However, considering the seven years that I’ve got out of this computer so far, I had already been considering building a new gaming desktop during the summer to upgrade from a dated dual-core AMD Athlon 64 X2 to something considerably more modern. The death of my GPU, while not ultimately a critical situation – after all, I did have a replacement, a further three computers that I could reasonably fall back on and five other computers besides – did give me the impetus to speed up the process, though.

After looking into the price of cases, I decided that I would reuse an old full-tower case that currently holds my secondary x86 desktop (with a single-core AMD Athlon 64 and a GeForce 6600 GT), adapting it for the task by cutting holes to accommodate some 120mm case fans and spray-painting it black to cover up the discoloured beige on the front panel. Ultimately, this step will likely cost me almost as much as buying a new full-tower case from Cooler Master, but will at least allow me to keep my current desktop in reserve without having to worry where to find the space to put it. A lot of the cost comes from purchasing the fans, adapters to put 2.5” and 3.5” drives in 5.25” bays and selecting a card reader to replace the floppy drive that will be incompatible with my new motherboard. Nevertheless, the case is huge, has plenty of space for placing new components and should be much better for cooling than my current midi-tower case, even considering the jerry-rigged nature of it.

I had considered quite some time ago that I would go for a reasonably fast, overclock-friendly Core i5 processor and have found that the Core i5-4690K represents the best value for money in that respect – the extra features of the Core i7 are unnecessary for what I’ll be doing with the computer. To get the most out of the processor, I considered the Intel Z97 platform to be a necessity and was originally considering the Asus Z97-P before I realised that it had no support for multi-GPU processing. To be fair, I haven’t actually used either SLI or CrossFireX at any point, but do like the ability to use them later if I wish, so eventually, I settled on the much more expensive but more appropriate Asus Z97-A, which has capacity for both SLI and CrossFireX, the one PS/2 port I need to accommodate my Unicomp Classic keyboard without having to use up a USB slot and which seems to have sufficient room for overclocking of the i5-4690K.

To facilitate overclocking, I have also chosen to purchase 16GB of Kingston 1866MHz DDR3 RAM and an aftermarket Cooler Master Hyper 212 Evo CPU cooler to replace the stock Intel cooler. I’m not looking for speed records here, but would like to have the capacity to moderately overclock the CPU to pull out the extra operations-per-second that might give me an edge in older, less GPU-intensive games. I’ve also gone for some Arctic Silver 5 cooling paste, since cooling has been a concern for me with previous builds and I’d like to make the most of the aftermarket cooler.

Obviously, being a gaming desktop, the GPU will be a big deal. I had originally looked at the AMD Radeon R9 280X as an option, but the retailer that I have purchased the majority of my parts from had run out of stock. As a consequence, I’ve gone a step further and bought a factory-overclocked Asus Radeon R9 290, hoping that the extra graphical oomph will be useful when it comes to playing games like Arma 3, where I experienced just about adequate performance with my HD 4890 at a diminished resolution. The Arma series has been key in making me upgrade my PCs before, so I’m not surprised that Arma 3 is just as hungry for GPU power as its predecessors.

I’ve also gone for a solid-state drive for the first time in order to speed up both my most resource-intensive games and the speed of Windows. I’ve purchased a Crucial MX100 128GB 2.5” SSD, which should be adequate for the most intensive games, while secondary storage will be accommodated by a 1TB Western Digital drive for NTFS and a 320GB Hitachi drive to accommodate everything to do with Linux. I also bought a separate 1TB Western Digital hard drive to replace the broken drive in my external hard drive enclosure, which experienced a head crash when I stupidly let it drop to the floor. Oops. Furthermore, I’ve also gone for a Blu-Ray writer for my optical drive – I’m not sure whether I’ll ever use the Blu-Ray writing capabilities, but for €15 more than the Blu-Ray reader, I decided to take the plunge. After all, I’m spending enough already.

Last but not least is the PSU. “Don’t skimp on the power supply”, I have told several of my friends through the years and this was no exception. Taking in mind the online tier lists for PSUs, I considered myself quite fortunate to find a Seasonic M12II 750W power supply available for under €100, with fully-modular design and enough capacity to easily keep going with the parts that I selected. The benefits for cable management from a modular power supply can’t be overstated, which will be useful even with the generous space in my case.

Overall, this bundle will cost me a whopping €1,500 – almost double what I spent on my current gaming desktop originally. Of course, any readers in the United States will scoff at this price, benefited by the likes of Newegg, but in Ireland, my choices are somewhat more limited, with Irish-based retailers being very expensive and continental European retailers not being as reliable when it comes to RMA procedures if something does go wrong. Nevertheless, I hope the new computer will be worth the money and provide the sort of performance gain that I haven’t had since I replaced my (again, seven-year-old) Pentium III system with the aforementioned single-core Athlon 64 system.

I’ll be looking forward to getting to grips once again with another PC build. Here’s hoping that the process will be a smooth one!

Historical Operating Systems Reborn – RISC OS and the Raspberry Pi

The early-1980s 8-bit microcomputer battle brought the personal computer from a hobbyist’s plaything to a genuinely useful device for general use, and was fought by a host of companies. Most of these companies were from the United States, such as Commodore, IBM, Apple and Atari, but various British companies played a significant part including Sinclair, Amstrad and Acorn. By the mid-1980s, many of the smaller competitors had fallen by the wayside, and even the once-strong Sinclair Research had been bought up by Amstrad.

The big players who remained decided to produce more powerful machines using newer processors than the MOS 6502 and Zilog Z80 8-bit processors common in the early 1980s. Commodore bought up the Amiga Corporation, which had designed an eponymous computer; Apple designed the Macintosh; Atari developed the Atari ST and IBM continued to develop on their IBM PC platform. Most of these computer designs, with the notable exception of the IBM PC, were based around the Motorola 68000 processor. As Amstrad decided to focus on their PCW series of word processors, discontinuing the disappointing Sinclair QL, this left Acorn alone in the British market to try to fight out the battle of the post-8-bit era.

Acorn decided to take a different approach to the American companies, focusing on the educational segment rather than the business, desktop publishing and multimedia markets focused on by Commodore, Apple, Atari and IBM. Instead of using the Motorola 68000 processor familiar to other computers of the time, Acorn decided to design their own processor, using the then-novel RISC architectural design to develop the Acorn RISC Machine processor, better known as ARM.

In 1987, Acorn released the Archimedes. The ARM2 processor which Acorn used proved to be a great advantage for the Archimedes, with a simple, power-efficient design which nevertheless performed calculations about twice as quickly as a 68000 processor with the same clock speed. Allied to the ARM processor was Acorn’s Arthur operating system, which came on a ROM chip similar to the Amiga’s Kickstart ROM. Arthur, on balance, was on par or not far behind the Commodore Amiga’s notoriously advanced OS, and ahead of the single-tasking operating systems used by Atari and IBM.

AcornArchimedes-Wiki

The Acorn Archimedes – one of the several advanced computers of the late 1980s.

Unfortunately for Acorn, the Archimedes was not a particular sales success. Its focus on the educational market had come at the cost of the multimedia coprocessors available in the Amiga and Atari ST, leading to a system that was too expensive and not good enough at gaming for a home audience. Meanwhile, the business market became consumed by IBM and the various clones which arose from the easily-reverse-engineered BIOS of the IBM PC and its successors. Nevertheless, Acorn persisted and continued to develop new machines with more advanced operating systems. Arthur was updated, becoming RISC OS in the process, keeping to the same general structure but gaining new features.

Eventually, Acorn fell to the wayside, suffering a similar ignominious fate to Commodore and Atari as the personal computer market gradually became dominated by IBM-compatible computers with Intel processors. Apple managed to cling onto life during some very slim years, moving to the PowerPC architecture along the way, but eventually gave in and took up the Intel x86 processors as well, moving their BSD-derived Mac OS X operating system over to the new architecture.

Acorn has had one significant lasting legacy, however – the intellectual properties for the ARM processor were divested in a new company, ARM Holdings, who collaborated with Apple to continue developing the ARM architecture for Apple’s own devices. Today, the ARM processor is the most popular 32-bit processor architecture in the world, underpinning everything from smartphones and tablets to embedded processors inside other devices.

RISC OS has survived as well, with the intellectual property for the Acorn computers sold to Castle Technology Ltd., a small British company who has continued to develop ARM-based personal computers using RISC OS. A small but dedicated community grew up around the company, much like the remnants of the Amiga or Atari ST communities, and has continued to support the OS.

Now, we have the Raspberry Pi. The inexpensive, credit-card-sized computer has been a massive success, demonstrating a far more simple, hackable approach to computing than has been usual today. Something that has been a pleasant surprise is how readily the RISC OS community has decided to support the Raspberry Pi.

Given that until recently, I haven’t had a computer without an Intel processor, I didn’t have an opportunity to try RISC OS on anything but an emulator. However, I sometimes despair for the sheer homogeneity of the personal computer market, even though I have contributed to it for many years. Now, I have been granted a chance to try an operating system natively on modern hardware that isn’t part of the Microsoft Windows, Mac OS X or Linux families.

My initial thoughts when I first booted up RISC OS 5 were that it actually boots up as astoundingly quickly as others said it would. Frankly, this shouldn’t have been a surprise; not only is RISC OS still designed with the StrongARM processors of the Acorn Risc PC in mind, it is still developed for a 6MB ROM chip, and is therefore extraordinarily tuned for its environment. I had used RISC OS before on the ArcEm emulator about four years ago, so I recognised that RISC OS was slim and fast in the early 1990s, but it’s nice to see that this behaviour persists today. The same sort of responsiveness applies to the shutdown process as well. RISC OS has instant shutdowns. None of this behaviour where shutdowns can take almost as long as the boot process – as soon as you click the Shutdown option, short of certain file operations being in progress, the computer will immediately be ready to shut down.

After about ten to fifteen seconds, the GUI environment booted up. Two things were quickly apparent. The first is that the environment was immediately responsive as soon as it had finished loading, unlike contemporary Windows or Linux desktop environments, which, based on the number of background processes that are set to start – can leave you waiting a minute or more for full responsiveness.

The second thing is that the RISC OS GUI environment is, in fact, very pretty. Mac OS X and iOS are often held up as being the exemplars of pretty environments, but I’d argue that RISC OS is, in its own ways, marginally prettier. Much of what Mac OS X does to ensure its pretty environment is down to impressive, shiny graphics and high-resolution displays, whereas RISC OS manages to look good at 640×480 on a simple non-high-definition television screen.

A lot of this is down to the inherent design philosophy of RISC OS. The original Arthur OS for the Archimedes was the first operating system to incorporate a dock, or in RISC OS parlance, an icon bar. The icon bar distinguishes between application icons, set to the right-hand side of the icon bar, and storage devices, set to the left-hand side of the bar. This helps to create a distinct divide between applications and devices which store applications and data. In comparison, the Mac OS X dock can occasionally look a bit untidy and busy when you load up too many applications at once.

Another detail in RISC OS’s favour in the design stakes is the high-quality anti-aliasing technology that has been a part of the operating system since 1989. The renderer is designed, as are some of the more recently designed competing technologies available in other operating systems, to render type accurately at the cost of readability, but frankly, even at the 640×480 resolution I have been using, the typefaces still look clean and legible, which helps make the interface look clean and stylish.

screen_20121126_1s

RISC OS – stylish even at low resolutions, even better in high definition.

Enough about the style – how about the substance? It turns out that you get quite a few things even from your 6MB ROM image, including the full GUI environment, a text editor, a vector graphics program, a simple scientific calculator and a BBC BASIC interpreter.

Of course, it seems awfully odd and antediluvian to be supporting a BASIC interpreter in 2013, but BBC BASIC was one of the most sophisticated BASIC interpreters of its time and was extended with its move to RISC OS with capacity to write full, multitasking GUI applications. BBC BASIC is also one of the most optimised and rapid interpreted languages on any platform, proving sufficiently quick for the entire Arthur GUI interface to be written in it. The interpreter also includes capacity for inline ARM assembly language, providing a low-level programming environment inherent to the system. Few other operating systems actually have any inherent capacity for programming, and while Linux, Mac OS X and other Unix and Unix-like operating systems typically have programmability through their command shell, this isn’t going to fit in 6MB along with a GUI environment.

Unfortunately, when it comes to other applications, RISC OS currently looks a bit sparse. Given that the operating system has been maintained by a single, small company and kept alive mainly by hobbyists, this is to be expected, but you’re certainly not going to have the wealth of software that you have on Linux or Mac OS X, let alone Windows. This may improve if the community grows with the popularity of the Raspberry Pi, but it will prove difficult to use RISC OS for most serious work right now.

From a technical perspective, RISC OS is a very different beast to the three most popular desktop operating systems. Microsoft Windows comes from a lineage that incorporates elements of CP/M, OpenVMS and so on, while Mac OS X and Linux are obviously derived from Unix. RISC OS doesn’t derive from either lineage – or from any other apparent one either. Directory paths are delineated by full stops rather than slashes, for instance. Disc formatting uses the proprietary ADFS system first developed for the BBC Micro. Files don’t have extensions as default, with the file type determined by a six-byte file type number stored separately, and when extensions are used, perhaps from imported files from another operating system, the extension is delineated from the name by a forward slash.

One of the most distinctive details of RISC OS is how it deals with applications. Application names always begin with an exclamation mark, and RISC OS applications more closely represent directories in other operating systems than they do the executable files of Windows or Linux. In fact, RISC OS applications are extraordinarily modular in nature – you never have to “install” an application on RISC OS as you would in Windows, and you can just drag an application icon onto the icon bar to open it.

Another particularly distinctive detail of RISC OS comes from the way it handles the mouse. Acorn designed the Archimedes with a three-button mouse from the very start, and each of the buttons on the mouse have very individual functions. Unlike Windows, Mac OS X or Linux – or most other desktop GUI systems – RISC OS has a separate Menu button set to the middle button, and therefore, applications are not expected to have a program-specific menu bar, or a Ribbon interface or anything like that. The middle button performs menu tasks in every application, including the ones normally done by the right mouse button in Windows or Linux.

The other two button functions are Select, set to the left mouse button and performing tasks similar to the left mouse button in other desktop operating systems, and Adjust, set to the right mouse button. Adjust performs various functions, ranging from an alternate way to perform various tasks in most programs to an alternate menu for some application icons.

There are some places where RISC OS betrays its Eighties origin, though, and not necessarily in a good way. RISC OS uses cooperative multitasking rather than the pre-emptive multitasking common in operating systems from Unix to Microsoft Windows to AmigaOS and others besides. I have, in the past, been quite disparaging about the use of cooperative multitasking in any operating system, including RISC OS, and using RISC OS, it’s clear that it is an underlying disadvantage of the system.

I’m quite fond of pushing my systems to the limit when it comes to multitasking – it’s common for me to have a web browser, a word processor, a music player, a PDF reader and the file manager for my operating system all open at one time, with other tasks perhaps happening in the background. With a pre-emptive multitasking system, the programs are given a fair share of the computer’s free time, only occasionally locking up because one task is a bit too greedy with the clock cycles. With a cooperative multitasking system, it’s more difficult to run multiple applications at once, since one program that is badly designed or simply resource-heavy can lock up the system until it resolves. Using RISC OS for multimedia applications at the same time as performing a processor-heavy task is therefore a potential no-go area, which is a pity considering how smoothly the system runs on a single task.

Mostly, though, I like how different RISC OS 5 feels to other contemporary operating systems. Certain technical details, such as the obsolete cooperative multitasking model, make it difficult to recommend for everyday use right now, while the relative lack of applications also works against it. However, being allied to the Raspberry Pi could well give RISC OS a renewed lease of life, especially in the educational sector where it would be perfect for demonstrating that not every operating system is, or even has to be, the same as Windows or Mac OS X. In that sense, the OS could come full circle – from its educational roots right back around to them again.