The Design and Implementation of Multiprocessor Support for an Industrial Operating System Kernel
| Document type: | Journal Articles |
|---|---|
| Article type: | Original article |
| Peer reviewed: | Yes |
| Author(s): | Simon Kågström, Håkan Grahn, Lars Lundberg |
| Title: | The Design and Implementation of Multiprocessor Support for an Industrial Operating System Kernel |
| Journal: | International Journal of Computers and Their Applications |
| Year: | 2009 |
| Volume: | 16 |
| Issue: | 1 |
| Pagination: | 59-68 |
| ISSN: | 1076-5204 |
| Organization: | Blekinge Institute of Technology |
| Department: | School of Computing (Sektionen för datavetenskap och kommunikation) School of Computing S-371 79 Karlskrona +46 455 38 50 00 http://www.bth.se/com |
| Language: | English |
| Abstract: | The ongoing transition from uniprocessor to multi-core computers requires support from the operating system kernel. Although many general-purpose multiprocessor operating systems exist, there is a large number of specialized operating systems which require porting in order to work on multiprocessors. In this paper we describe the multiprocessor port of a cluster operating system kernel from a producer of industrial systems. Our initial implementation uses a giant locking scheme that serializes kernel execution. We also employed a method in which CPU-local variables are placed in a special section mapped to per-CPU physical memory pages. The giant lock and CPU-local section allowed us to implement an initial working version with only minor changes to the original code, although the giant lock and kernel-bound applications limit the performance of our multiprocessor port. Finally, we also discuss experiences from the implementation. |
| Subject: | Computer Science\Computersystems Computer Science\General |
| Keywords: | Multiprocessor, operating system, kernel, cluster, porting, implementation experiences |












