Live data from Hacker News

Got an old Raspberry Pi spare? Try RISC OS. It is, something else

theregister.com

151–160 of 205 posts

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#151
post #93
post #80

Earlier quoted context omitted.

OS security always requires a concept of a user, unless you want to run all processes under the same identity.

You could do with some other concept than users. E.g. namespaces or capabilities.

This is what uid and gid are used for in Linux respectively. There is only a concept of "user" and "group" when you add a Unix-like operating system in top such as GNU or Alpine.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#152
post #145

Earlier quoted context omitted.

A capability is not an identity. And the difference matters a great deal in how you build software that takes advantage of capability based security models.

Identity is reflected by who owns the capability.

Capabilities are often transient. Or in a capability based OS, capabilities are given to a process when it launches and the capabilities naturally go away when the program closes. "Who owns the capability" is the wrong way to think about it. But I'll lose this argument.

Because I suspect if you really want to, you really can think about all "permission systems" as identity systems, and shoehorn in users or something. This cognitive distortion is totally possible. My claim is that its a bad mental model. Its like if you mentally translate all programming ideas into assembler, or java or something, it would make it hard to properly understand and appreciate a lot of higher level programming ideas. Haskell's beauty doesn't make any sense if you mentally translate everything into java. There are programs you just can't write with this mindset, and you would be a terrible haskell programmer.

Its the same with capabilities. They're not user accounts. They're not identities. They can be transient or persisted. Fine grained or coarse grained. A capability can be a function argument - arguably the C FILE struct is a capability object. Or they can be a permission box. Its just, a bigger idea than identity.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#153
post #144

Earlier quoted context omitted.

No its not. There's all sorts of stuff you can do with capabilities that are really awkward to even think about with users. Like, when a database starts, you can hand it the capabilities it needs to access a specific directory, listen on a specific port and append (but not read) a specific log file. User based security is usually done by the folder being owned by the database, or an ACL or something. But with capabil…

Capabilites have ownership, ownership requires belonging to something, all the way up to booting the OS.

Capabilities can just be variables. Variables all belong to something, all the way up to the OS. Would you say variables are a type of user permission? Obviously not. Variables are more versatile than that. So are capabilities.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#154
post #146

Earlier quoted context omitted.

> Never knew why it bombed in the marketplace. Bombed? RISC OS machines sold for some 15 years in the face of growing competition from Windows and Linux. Acorn chose to shut it down and span off ARM. Castle Technologies continued selling it and made a new 32-bit-clean version and new hardware for it. RISC OS Developments bought Castle and made RISC OS Apache-licensed FOSS. The OS is still alive and in development nea…

Yes, the Archimedes/RISC OS system itself bombed and got outsold by the PC, Mac, Atari ST and the Amiga. But the ARM processor/ISA itself that came out of the original ARM2 on Archimedes is now world dominating. Both are true.

In the long run, _everything_ got outsold by the PC, including the Mac.

But in the long run we're all dead (as J M Keynes put it). Step back too far and everything gets lost in the noise.

Archimedes was the reason RISC OS was created... and Acorn was the reason Arm was. But originally Acorn's ARM machines were to run ARX.

https://en.wikipedia.org/wiki/ARX_(operating_system)

Arthur outdid ARX, so ARX was cancelled and Arthur shipped. Arthur became RISC OS.

It closely parallels how CAOS was cancelled and AmigaDOS shipped, and later was renamed AmigaOS.

http://www.bambi-amiga.co.uk/amigahistory/caos.html

Oddly the bit of AmigaDOS 1.x that was ripped out of AmigaOS >= 2.x became its own OS, HeliOS:

https://www.theregister.com/2021/12/06/heliosng/

There are a whole bunch of questions on Quora asking why the Amiga flopped. It did not flop. It sold millions of units for years and derivatives of its hardware and software are still on sale today.

The ST didn't flop. It sold millions too, and both EmuTOS and AFROS/Aranym are still around and maintained.

The Archimedes didn't flop. It sold lots, it established a line of machines and OSes that are still on sale, and an offshoot of the company is still around and worth billions and totally dominates the computer industry. Today its CPUs power the Mac, and iPad/iPhone and Android AND WINDOWS -- and outsell PCs by about 10x over.

The latest version of the native PC OS runs on Arm chips as well and there are Arm-based PCs on sale now.

Do we say the PC bombed because DOS and Windows 3/9x are dead? Of course not!

Do we say the Mac bombed because it killed its OS, bought one in, and then moved to Intel for 15 years? Of course not!

Did the Mac bomb because all new Apple kit runs on that bought-in OS on a chip design that came out of Acorn? Of course not!

So Acorn's original OS largely died out and has little industry relevance now. So what? So did classic MacOS. So did MS-DOS. So did CP/M. So did original Windows.

Windows today is based on the result of a cancelled DEC OS, Mica, and a cancelled IBM OS, OS/2. The bit MS wrote, MT/DOS, is long gone and went FOSS last month.

Apple OSes today are all based on NeXTstep, and that was based on BSD tech.

But the chips they all run on -- not the only chips, but the best-selling ones -- are Acorn designs.

"Bombed," my ass.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#155

Earlier quoted context omitted.

[Article author here] > You mean the Archimedes GUI on top of the BSD kernel? No. (Although that sounds fun, I never heard of such a thing.) RISC/ix was Acorn's ARM UNIX. It had nothing of the Acorn GUI -- it was fairly standard X11, I think with Motif or something Motif-like. Acorn did add some Acornish tweaks to it, including its text editing and its memory allocation, but it looked and ran much like any other late…

I still think it’d be fun to bring it back to life. I don’t think there are many copies still usable and it was picky about hardware - it wouldn’t run on more modern Acorn boxes.

RISC/ix?

It was based on BSD 4.3. The efforts went into BSD 4.4 and that went into NetBSD and NetBSD 1.2 incorporated Acorn's ARM port.

https://groups.google.com/g/comp.sys.acorn/c/G19nI9eac-o/m/q...

https://www.netbsd.org/changes/changes-1.2.html#port-arm32

I'd say that the bits that matter mostly survived and still do.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#156
post #92

Earlier quoted context omitted.

You grant them capabilities, a handle which permits access to a particular directory, one which allows network access (or possibly even further limited than that) etc. No user, just a series of object handles which permit them to perform the task and nothing more.

That sounds like just brutally quartering users into their granular permissions. ;-)

Maybe? I guess the difference is that with a capability object model (or similar arrangement) the _only_ way the application has to interact with the outside world is via those objects/handles it's been granted. There's no risk of escape because they only have access to the handles the process has been provided.

It's almost the opposite of a permission model in some ways, permission models restrict access to a global array of functionality where capability models allow access only to what's been provided.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#157
post #7

It was ahead of its time in UX, but rather behind in the foundations. It's a single user system with no real security, and there was no system of shared libraries - to share code between applications, it was usual to put the shared code in a kernel module and call the kernel. Even the standard C library worked this way. Amusingly, when you invoked the system console -which was at a lower level than the gui system, ef…

Unpopular take but here I go (bye bye karma): Code sharing between applications, beyond what is basic, common and stable enough that it could live in the kernel, is not a good idea in the long run. It served a purpose back when memory was scarce and libraries (and their versions) few.

Containerization for all it's isolation magic has primarily been successful as a way to package "more or less the entire OS dependency" because sharing code is hard. How many containers ship with only one single binary (the active data set) ? None, code sharing is the primary problem that containers solve.

Static linking solves it better. RiscOS approach actually solves it better, too.

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#158
post #42

Raspberry Pi is amazing. Everything from the size and simplicity of hardware to that of Raspbian. Super moddable, modular, surprisingly performant. As a lot of others do, I use one for most of my sites and apps as a home server. 15+ apps, sites, and APIs running on this thing 24/7/365 over WiFi. What would be the benefit of using RISC OS over Raspbian, or even Ubuntu Server? Is it pure nostalgia like running Windows…

> What would be the benefit of using RISC OS over Raspbian, or even Ubuntu Server? Is it pure nostalgia like running Windows XP on a Pi? It's small - apps are hundreds of KB to a few MBs and it's fast/responsive. The question is what do you want to use it for ? There are apps for most things, but as it's not Unix or Windows it doesn't have a lot of ports of bigger open source apps.

> The question is what do you want to use it for?

Exactly, people replied as if those apps and use cases are actually used today.

So it's just nostalgia right?

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#159
post #42

Raspberry Pi is amazing. Everything from the size and simplicity of hardware to that of Raspbian. Super moddable, modular, surprisingly performant. As a lot of others do, I use one for most of my sites and apps as a home server. 15+ apps, sites, and APIs running on this thing 24/7/365 over WiFi. What would be the benefit of using RISC OS over Raspbian, or even Ubuntu Server? Is it pure nostalgia like running Windows…

> simplicity of ... Raspbian You think Raspbian is simple? https://www.raspberrypi.com/software/operating-systems/ « Raspberry Pi OS with desktop and recommended software Release date: March 15th 2024 System: 32-bit Kernel version: 6.6 Debian version: 12 (bookworm) Size: 2,678MB » https://www.riscosopen.org/content/downloads/raspberry-pi « Complete SD card images RISC OS Pi 2024-04-28 06:15:00 For Pi Zero & ZeroW & Z…

Apps? So you would use this OS for the amazing consumer experience? And in your mind is that comparable to a Linux distro like Raspbian or Ubuntu in terms of availability of apps?

Strange way to gauge simplicity too "this screen has 10x less pixels!"

Re: Got an old Raspberry Pi spare? Try RISC OS. It is, something else

#160
post #146

Earlier quoted context omitted.

Yes, the Archimedes/RISC OS system itself bombed and got outsold by the PC, Mac, Atari ST and the Amiga. But the ARM processor/ISA itself that came out of the original ARM2 on Archimedes is now world dominating. Both are true.

In the long run, _everything_ got outsold by the PC, including the Mac. But in the long run we're all dead (as J M Keynes put it). Step back too far and everything gets lost in the noise. Archimedes was the reason RISC OS was created... and Acorn was the reason Arm was. But originally Acorn's ARM machines were to run ARX. https://en.wikipedia.org/wiki/ARX_(operating_system) Arthur outdid ARX, so ARX was cancelled and…

I thought the Amiga guys were the rabid fanbois...
Post reply on HN