Aris a écrit :
La segmentation c'est une des techniques qui existaient dans le temps, en parallele à la pagination (paging) pour séparer les espaces mémoires de processus. C'est tombé en désuétude parce que c'est plus compliqué à gérer et c'est pas forcement plus sûr, mais dans certains cas (microcontroleurs et petits systemes temps-reels), la gestion de la mémoire par le cpu est beaucoup plus simple.
Oui mais le cpu doit alors être prévu pour. Ce qui complique le cpu. Par ailleurs, la gestion de la mémoire par le compilateur est-elle, elle aussi, plus simple ?
car je ne comprends pas qu'il soit plus facile pour un compilateur de gérer des espaces d'adresses différents (commençant tous à l'offset 0) plutôt que gérer un seul espace d'adresses...
Certains cpu proposent les deux paradigmes de programmation, mais plus par retrocompatibilité que par efficacité (msdos marchait à base de segmentation).
On imaginerait pas concevoir un "gros" OS sur base de segmentation aujourd'hui
Windows marche avec trois segments, non ? (data, stack, code) non ?
Papouille