Changes between Version 18 and Version 19 of boot_procedure
- Timestamp:
- May 3, 2017, 3:04:28 PM (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
boot_procedure
v18 v19 7 7 * The architecture indépendant phase, inplemented by the '''kernel-init''' procedure. 8 8 9 As the generic (i.e. architecture independent) kernel initialization procedure is executed in parallel by all kernel instances in all clusters containing at least one core , the main task of the architecture dependentboot-loader is to load - in each cluster - a local copy of9 As the generic (i.e. architecture independent) kernel initialization procedure is executed in parallel by all kernel instances in all clusters containing at least one core and one memory bank, the main task of the boot-loader is to load - in each cluster - a local copy of 10 10 the ALMOS-MKH kernel code, including a description of the hardware architecture, contained in the '''boot_info_t''' data-structure. 11 11 12 This structure is build by the boot-loader and stored at the beginning of the local copy of the kdata segment. It contains both general and cluster specific informations: 12 13 * general hardware architecture features : number of clusters, the topology, etc. … … 15 16 * available internal (private) peripherals in cluster : types and features. 16 17 * available physical memory in cluster. 17 18 This boot_info_t structure is defined in the 18 19 To build the various boot_info_t structures (one per cluster), the boot-loader uses the '''arch_info_t''' binary structure, that is described in 20 the 21 This boot_info_t structure is defined in the '''boot_info.h''' file. 19 22 20 23 This section describes successively the ALMOS-MKH boot loader for the TSAR architecture, the ALMOS-MKH boot loader for the … … 26 29 '''boot-loader''' code from an external block-device to the memory. This preloaded is specific for the TSAR architecture, but independent on the Operating System. It is used by ALMOS-MKH, but also by LINUX, NetBSD, or the GIET-VM. 27 30 28 The main task done by the TSAR boot-loader is to build - for each cluster - a so-called '''boot_info_t''' data structure, describing29 31 30 This boot_info_t structure can be find in the in the cluster31 32 the shared resources (such as the récupère les informations décrivant les caractéristiques de la plateforme matérielle (nombre de clusters, nombre de coeurs par cluster, périphériques disponibles, ciblage des interruptions, etc.) dans le fichier binaire '''arch_info.bin'''. Il utilise pour construire - dans chaque cluster - la structure de données '''boot_info_t''', utilisée par l'instance locale du noyau ALMOS-MK, et décrivant les composants matériels disponibles dans le cluster, ainsi que les caractéristiques générales de la plateforme. Cette structure est rangée au début du segment de données '''kdata''' du noyau et est utilisée - dans caque cluster - par la fonction '''kernel_init()'''. Ces informations en entrée et en sortie du boot-loader peuvent sembler redondantes mais cette traduction (arch-info -> boot_info) permet - en principe - au boot-loader de vérifier le bon fonctionnement de la plateforme matérielle et de détecter les pannes dues au vieillissement du matériel. Dans cette approche, les structures '''boot_info_t''' générées par le boot-loader ne contiennent que les composants matériels effectivement utilisables par le noyau. Cette vérification/reconfiguration n'est pas implémentée. 32 33