Linux semaphores

Re: Schedule idle
MOLNAR Ingo (mingo@chiara.csoma.elte.hu)
Wed, 11 Nov 1998 04:09:32 +0100 (CET)
[...]
> _please_ We can do better than this. Only semaphores (not spinlocks) need
> to have the priority inheritance. [...]
nope there are _not_ only semaphores, but many other types of locks.
> [...] This can be done with lists off the
> semaphore and tasks… [...]
it’s _not_ easy [...]

multicore and multiprocessor performance

Here’s two  interesting tables
Percentage of lock acquisitions for global TCP/IP locks that do not succeed
immediately.

OS Type
6 conns
192 conns
16384 conns

MsgP
89
100
100

ConnP-L(4)
60
56
52

ConnP-L(8)
51
30
26

ConnP-L(16)
49
18
14

ConnP-L(32)
41
10
7

ConnP-L(64)
[...]

The ridiculous GPL-only tagging of Linux

Imagine that you release software under a license that is primarily concerned with making sure that modifiable source code is available to all and that no restrictions should ever be placed on derived works. Now imagine that someone takes a huge body of code like this and starts marking interfaces as limited to specific uses [...]

10th anniversary of the RTLinux Manifesto paper

The RTLinux* Manifesto was published a little over 10 years ago at the 5th Linux Expo in Raleigh North Carolina which was really the first one with a bunch of suits wandering around.  As a kind of celebration/experiment , I’m publishing an annotated version.
Here is a related discussion
.
* RTLnux is a  trademark now belonging to [...]

Parallelism and multicore

The goal of modern processor chip design has changed from optimizing various speed/price/heat tradeoffs for applications to finding excuses for dumping more transistors into the device.  Heard an interesting talk from Krisztián Flautner of ARM at the ACISC conference and I have to admit that it’s not entirely the fault of the chip designers – [...]

Deterministic multithreading

An interesting paper appearing in ASPLOS proceedings provides a “deterministic” locking method
Kendo enforces a deterministic interleaving of lock acquisitions and specially declared non-protected reads through a novel dynamically load-balanced deterministic scheduling algorithm. The algorithm tracks the progress of each thread using performance counters to construct a deterministic logical time that is used to compute an [...]

parallel processing and bash reduce

It’s sad that after all this time, one can look at any random article on parallel programming and find some variation of:
for i = 1 … n
create thread i
do something
end for
as if that was the only [...]

RTOS design and embedded system development

Real-time operating systems are either a solved problem or a backwater of engineering design. Threads, semaphores, mutexes, some basic I/O, priority scheduling all of this has been more or less standardized in the  POSIX 1003.13 smaller profiles (51,52) for many years. The basic programming model has not changed in years. Even FSM’s original RTOS and [...]

chrome OS

SAN FRANCISCO — In a direct challenge to Microsoft, Google announced late Tuesday that it is developing an operating system for PCs based on its Chrome Web browser.
The move sharpens the already intense competition between Google and Microsoft, whose Windows operating system controls the basic functions of the vast majority of personal computers. [...]

OS design

Working on a “process algebra” post, I had to look up previous posts on microkernels where I wrote this:
Information hiding is only good design when the hidden information is not needed by the software it is hidden from! If you hide information that you need to share you’re just wasting time. A great example of [...]