Support for NUMA hardware in HelenOS
Support for NUMA hardware in HelenOS
diplomová práce (OBHÁJENO)

Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/49208Identifikátory
SIS: 90622
Kolekce
- Kvalifikační práce [11264]
Autor
Vedoucí práce
Oponent práce
Libič, Peter
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra distribuovaných a spolehlivých systémů
Datum obhajoby
5. 9. 2011
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
HelenOS, NUMA, jádro, operační systémyKlíčová slova (anglicky)
HelenOS, NUMA, kernel, operating systemsCílem této diplomové práce je rozšířit operační systém HelenOS o podporu ccNUMA hardwaru. Text práce obsahuje stručný úvod do problematiky ccNUMA, přehled vlastností NUMA hardwaru a přehled vlastností HelenOS spojených s touto problematikou (správa paměti, plánování atd.). Práce analyzuje rozhodnutí při návrhu implementace podpory pro NUMA počítače -- zavádí reprezentace topologie do datových struktur jádra, zpřístupnění těchto informací do uživatelské prostoru, afinita vláken k procesorům a uzlům, politiky alokace paměti či vyvažování zátěže. Práce též popisuje prototypovou implementaci podpory ccNUMA v HelenOsu na platformě AMD64 and stručné srovnání s podporou ccNUMA v jiných monolitických i mikrojaderných operačních systémech.
The goal of this master thesis is to extend HelenOS operating system with the support for ccNUMA hardware. The text of the thesis contains a brief introduction to ccNUMA hardware, an overview of NUMA features and relevant features of HelenOS (memory management, scheduling, etc.). The thesis analyses various design decisions of the implementation of NUMA support -- introducing the hardware topology into the kernel data structures, propagating this information to user space, thread affinity to cores and nodes, memory allocation policies, load balancing, etc. The thesis also contains a prototype implementation of ccNUMA support in HelenOS for the AMD64 platform and a brief evaluation and comparison with ccNUMA support in other monolithic and microkernel-based operating systems.