Changes between Version 22 and Version 23 of WikiStart


Ignore:
Timestamp:
Jul 5, 2016, 3:01:13 PM (6 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v22 v23  
    1313Pour garantir le passage à l'échelle, et favoriser la distribution des services système, ALMOS-MK repose sur l'approche ''Multi-Kernel'', dans laquelle il existe une instance du noyau dans chaque cluster de l'architecture. Celle-ci contrôle les ressources locales (mémoire et coeurs de calcul). Ces multiples instances coopèrent entre elles pour donner aux applications l'image d'un unique système contrôlant l'ensemble des ressources. Elles communiquent entre elles sur le modèle client /serveur en utilisant des RPCs (Remote Procédure Call).
    1414
    15 Pour réduire la consommation énergétique, ALMOS-MK supporte des architectures utilisant des processeurs 32 bits. Dans ce cas, chaque cluster possède un espace d'adressage physique 32 bits, et les adresses physiques locales (internes à un cluster) sont donc codées sur 32 bits. Pour accéder à l'espace adressage physique des autres clusters, ALMOS-MK utilise des adresses physiques globales codées sur 64 bits. A titre d'exemple l'espace physique de l'architecture TSAR utilise 40 bits, et les 8 bits de poids fort définissent donc le numéro du cluster cible.
     15Pour réduire la consommation énergétique, ALMOS-MK supporte des architectures utilisant des processeurs 32 bits. Dans ce cas, chaque cluster possède un espace d'adressage physique 32 bits, et les adresses physiques locales (internes à un cluster) sont donc codées sur 32 bits. Pour accéder à l'espace adressage physique des autres clusters, ALMOS-MK utilise des adresses physiques globales codées sur 64 bits. A titre d'exemple l'espace physique de l'architecture TSAR utilise 40 bits, et les 8 bits de poids fort définissent donc le numéro du cluster cible. ALMOS-MK distingue donc explicitement deux types d'accès:
     16 * les accès locaux (internes à un cluster) utilisent des adresses 32 bits.
     17 * les accès distants (vers un autre cluster) utilisent des adresses 64 bits.
    1618
    17 Sur une plate-forme matérielle contenant des processeurs 32 bits, ALMOS-MK s'exécute donc entièrement en adressage physique : la MMU paginée des coeurs n'est utilisée que par le code des applications, et elle est désactivée dès qu'on entre dans le noyau. Les addresses physique 32 bits permettent donc à l'instance du noyau d'un cluster K d'accéder directement aux ressources locales. Pour accéder directement à l'espace adressage d'un autre cluster, ALMOS-MK suppose l'existence de primitives  ''remote_read'' et ''remote_write'' utilisant des adresses physiques étendues (CXY / PTR) sur 64 bits (où CID  est l'index du cluster sur 32 bits, et PTR est l'adresse physique locale dans le cluster cible sur 32 bits). Ces primitives sont en particulier utilisées pour implémenter le mécanisme RPC, mais sont aussi utilisées pour accélérer certains mécanismes critiques en performance.
     19Sur une plate-forme matérielle contenant des processeurs 32 bits, ALMOS-MK s'exécute donc entièrement en adressage physique : la MMU paginée des coeurs n'est utilisée que par le code des applications, et elle est désactivée dès qu'on entre dans le noyau. Les addresses physique 32 bits permettent à l'instance du noyau d'un cluster K d'accéder directement à toutes les ressource (mémoire ou périphériques) locales. Pour accéder directement à l'espace adressage d'un autre cluster, ALMOS-MK utilise des primitives  ''remote_read'' et ''remote_write'' utilisant des adresses physiques étendues (CXY / PTR) sur 64 bits. CXY  est l'identifiant du cluster cible, sur 32 bits, et PTR est l'adresse physique locale dans le cluster cible sur 32 bits. Ces primitives sont en particulier utilisées pour implémenter le mécanisme RPC, mais sont aussi utilisées pour accélérer certains mécanismes critiques en performance.
    1820
    1921Sur une plate-forme matérielle contenant des processeurs 64 bits, il n'est plus nécessaire d'exécuter le noyau en adressage physique,
    20 puisque l'ensemble de l'espace physique peut être happé dans l'espace virtuel 64 bits. Néanmoins pour renforcer la localité des accès tout en minimisant les points de contention, ALMOS-MK continue à utiliser un mélange de RPCs et d'accés directs en mémoire distante (''remote_read'' et ''remote_write'').
     22puisque l'ensemble de l'espace physique peut être mappé dans l'espace virtuel 64 bits. Néanmoins pour renforcer la localité des accès tout en minimisant les points de contention, ALMOS-MK continue à distinguer entre accès locaux et accès distants, et le modèle de communication entre instances du noyau n'est pas modifié.
     23
     24
     25Dans les deux cas, les communications entre instances du noyau sont donc implémentées par un mélange des RPCs (sur le modèle client/serveur), et d'accès directs en mémoire distante (quand cela est utile), ce qui constitue la principale originalité de ALMOS-MK.
    2126
    2227== A) [wiki:arch_info Hardware Platform Definition] ==
     28
     29Cette section décrit les hypothèses faites par ALMOS-MK concernant l'architecture cible, et le mécanisme permettant de décrire l'architecture matérielle pour ALMOS-MK.
    2330
    2431== B) [wiki:replication_distribution Réplication et distribution des données] ==