Les Macs de 1997 pouvaient-ils vraiment n'exécuter qu'un seul programme à la fois ? Je me souviens très bien avoir exécuté plusieurs programmes à la fois sous Windows 3.1.
Eh bien, oui et non.
A vraiment exécuter plusieurs programmes à la fois, vous devez exécution parallèle ce qui nécessite un processeur multi-core ou plus d'un processeur. En 1997, les processeurs pris en charge par Mac OS (et Windows 3.1) étaient mono-cœur, et ne pouvaient donc exécuter qu'un seul programme à la fois. Donc non.
Mais Mac OS et Windows 3.1 utilisaient tous deux une astuce appelée multitâche pour partager le temps processeur entre les programmes d'une manière qui donne à l'utilisateur l'illusion qu'ils fonctionnent simultanément. Donc oui.
Malheureusement, il s'agissait d'un type primitif de multitâche, appelé le multitâche coopératif Les programmes devaient attendre que le programme en cours d'exécution abandonne volontairement le contrôle du processeur, de la même manière qu'il faut attendre que quelqu'un quitte un restaurant bondé pour obtenir une table.
De plus, avec le multitâche coopératif, si le programme en cours d'exécution se plante, le système d'exploitation se plante généralement aussi, car il n'a aucun moyen de reprendre le contrôle du processeur.
BeOS (et Windows 95) ont changé cela : ils sont passés à multitâche préemptif Dans ce cas, le système d'exploitation exécute un planificateur et partage les ressources du processeur entre les programmes, en leur accordant un certain temps d'exécution. Lorsque le temps est écoulé, un autre programme obtient une tranche de temps à exécuter. C'est similaire à une variante du jeu d'échecs qui limite le temps d'exécution. par coup : vous n'avez que peu de temps pour agir.
Tous les systèmes d'exploitation modernes pour serveurs et ordinateurs de bureau utilisent le multitâche préemptif. Apple a introduit le multitâche préemptif en 1997/1998 avec Rhapsody (le système d'exploitation de nouvelle génération qui allait évoluer vers Mac OS X), et l'a mis à la disposition de sa clientèle principale en 2001 avec Mac OS X 10.0 (Cheetah).
1 votes
Oui, c'était une énorme faiblesse de la plate-forme Mac, et c'est un endroit où Microsoft avait dépassé Apple avec Windows 95. Pendant ce temps ils étaient aussi la spirale de la faillite et manquait de capitaux ou de franchise, vision pour une réécriture totale de MacOS. Vous pouvez voir où l'acquisition de NeXT allait changer cela (apportant Steve Jobs et NeXTstep) qui est devenu OS X. Maintenant Microsoft était dépassé !
0 votes
Ce projet était en cours d'élaboration, mais une décision politique a été prise de suivre une autre voie. N'oubliez pas que l'iPhone original ne pouvait exécuter qu'une seule application à la fois. Les applications multiples et l'arrière-plan sont apparus plus tard, lorsque le matériel est devenu beaucoup plus puissant.
0 votes
Il y a une différence significative entre "exécuter un processus à la fois" et "exécuter une application à la fois". iOS est basé sur MacOS, il a toujours eu la capacité d'exécuter des processus en arrière-plan. Ce qui est venu plus tard, c'est la possibilité pour les applications de continuer à fonctionner (de manière contrôlée) sans être l'application visible.
0 votes
@nohillside c'était pour trouver une situation similaire que le PO aurait pu expérimenter. Comme toujours, l'analogie est approximative. À l'époque, MS-DOS n'exécutait qu'une seule application à la fois.
0 votes
@Harper-ReinstateMonica L'affirmation faite dans le post du PO est fausse, Mac OS en 1997 supportait certainement le multi-tâches. Et ce, depuis une décennie, depuis l'introduction de Multifinder en 1987.
0 votes
@GlenYates vous avez toujours eu des cdev et des DA qui pouvaient faire des choses en arrière-plan, et Multifinder permettait aux applications de le faire aussi, un peu. Mais cette capacité était toujours un boulon, et c'était loin du multitâche préemptif avec protection de la mémoire et "planter l'application, pas le PC" comme nous le savons aujourd'hui.