Comment les processus pouvaient-ils partager la mémoire dans les premières versions d'Unix? Comment cela se compare-t-il aux implémentations modernes de la mémoire partagée?
la source
Comment les processus pouvaient-ils partager la mémoire dans les premières versions d'Unix? Comment cela se compare-t-il aux implémentations modernes de la mémoire partagée?
Les tout premiers systèmes UNIX ne disposaient pas de MMU et, par conséquent, toute la mémoire du système était partagée entre tous les processus en mémoire. UNIX V7 a été le premier à disposer de la gestion de la mémoire, AFAIK. Le PDP-11 n'avait même pas de MMU lors de sa sortie; voir ce livre PDF, page 35 .
Alors que le temps avançait et que les MMU devenaient monnaie courante, UNIX commença à en avoir besoin. Et puis la mémoire pourrait être séparée entre les processus. Dans les années 1980, nous avons vu davantage de mécanismes IPC, y compris la mémoire partagée gérée par le système d'exploitation (qui était nouveau dans SVR1, vers 1983). SVR1 a également introduit des messages et des sémaphores, et les API System V sont toujours disponibles sur les systèmes modernes pour ces trois choses.