Systems Software Research is Irrelevant, by Rob Pike

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
User avatar
thepowersgang
Member
Member
Posts: 734
Joined: Tue Dec 25, 2007 6:03 am
Libera.chat IRC: thePowersGang
Location: Perth, Western Australia
Contact:

Re: Systems Software Research is Irrelevant, by Rob Pike

Post by thepowersgang »

... if you're going to be sarcastic, please mark it as such.

Yes, x86 (and to a lesser extent ARM) are kinda crazy at the architecture level, but interrupts are not the example you should pick (interrupts are one of the best low-level features if you want any form of performance)

I do (however) kinda agree that we need to rethink platforms to get better multi-core performance, and that's the direction systems research should be looking (that and working on new languages that make multi-threading easier to get correct)
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
User avatar
Kazinsal
Member
Member
Posts: 559
Joined: Wed Jul 13, 2011 7:38 pm
Libera.chat IRC: Kazinsal
Location: Vancouver
Contact:

Re: Systems Software Research is Irrelevant, by Rob Pike

Post by Kazinsal »

Geri wrote:why the hell we even have interrupts?
Go write an operating system that can saturate both the PCIe and SATA3 buses while doing nothing but polling and still accept and process user input and draw 3D graphics at a framerate meeting or exceeding your monitor's refresh rate.

I will eat a leather hat if you can.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: Systems Software Research is Irrelevant, by Rob Pike

Post by Brendan »

Hi,
thepowersgang wrote:... if you're going to be sarcastic, please mark it as such.

Yes, x86 (and to a lesser extent ARM) are kinda crazy at the architecture level, but interrupts are not the example you should pick (interrupts are one of the best low-level features if you want any form of performance)

I do (however) kinda agree that we need to rethink platforms to get better multi-core performance, and that's the direction systems research should be looking (that and working on new languages that make multi-threading easier to get correct)
I'm not too sure what Geri was thinking; however...

It actually would be nice to get rid of IRQs and replace them with "hardware messages"; where a hardware message interrupts the currently running code (just like an IRQ would have), but consists of a "sender ID" (to identify the device that sent the IRQ) and some sort of device specific "status dword" (to identify the reason why the device is requesting attention - so the driver can figure out what it needs to do before/without touching the device's registers).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Post Reply