Linked by Thom Holwerda on Wed 29th Sep 2010 19:07 UTC, submitted by poundsmack
QNX When Research In Motion unveiled its BlackBerry Playbook tablet on Monday, including the new QNX-based operating system it runs, I already speculated that it would probably make its way onto RIM's smartphones as well. RIM has now confirmed this suspicion.
Thread beginning with comment 443288
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[4]: Why Does It Even Matter
by Neolander on Thu 30th Sep 2010 17:19 UTC in reply to "RE[3]: Why Does It Even Matter"
Neolander
Member since:
2010-03-08

True, but all the operating environments have tackled this. Neither Linux nor iOS have mainframe batch scheduling (Linux has a multitude of schedulers geared towards interactiveness). It's not a problem any of them have.

Do you think that their schedulers are that good as far as interactivity is concerned ? My favorite test for interactive performance is to run many while(1); loops in the background and see how responsive my desktop remains.

On the ideal perfect desktop OS, it should remain just as fast, since this code snippet only uses CPU power and should be phased out by the scheduler in favor of more urgent tasks. But in my experience, the behavior of most desktop linux distros under load is far from ideal. Couldn't stress-test iOS, if someone with a jailbroken iPhone can try this, please report me how well the OS behaves ;)

I would think the GPU power and code running on top of it (relatively unaffected by a decent scheduler) would have way more impact than the differences between scheduling engines.

GPU power shouldn't be needed for normal operation. If it's needed, either the UI layer is awfully coded, or there's some overuse of heavy (as opposed to easy to compute) animations around.

It'd be an interesting benchmark to run. I suspect the differences would be minimum.

Again, if you can get your hands on a wide range of mobile devices, please do run the while(1) torture test ;) I'd really like to see if mobile devices manage to resist under load.

Other nice tests are repetitive malloc/free (to check how system calls behave), and my personal favorite, the file operation torture test, which in pseudocode looks like this in one of its simplest spawns :

while true do
..size = 0
..open(file)
..while size < 1GB do
....write byte(random number between 0 and 255)
....commit changes to file
..end do
..delete(file)
end do

The goal is to check if the desktop layer can still access files when it needs to, while several copies of this monster are running and eating disk bandwidth for dinner.

As a side note, using Windows 7 on my brand new and relatively high-end laptop, I don't even need to torture the OS like this for interactivity issues to appear : the simple combination of an AVG scheduled scan and a Windows backup running in the background are sufficient to make multimedia playback freeze periodically along with the rest of the UI (mouse doesn't move smoothly and things like that).

And again, the challenges that companies like Nokia, Google, Microsoft, and Apple have aren't really low-level based. It's usability and whole-operating environment.

Indeed, they compete at a higher level, and there's a lot of things to do in the high-level UI layers. Good low-level foundations mostly benefit interactivity, which although very important is not the sole part of a good UI.

But looking at current OSs, I think that interactivity is still a subject that should be worked on.

Edited 2010-09-30 17:31 UTC

Reply Parent Score: 2