Est-il possible une machine Unix ou Linux pour 80286 (ou toute machine sans mécanisme de page de mémoire)

StackOverflow https://stackoverflow.com/questions/5045819

  •  15-11-2019
  •  | 
  •  

Question

Est-il possible d'avoir un système d'exploitation UNIX pour la machine 80286 (ou n'importe quelle machine sans mécanisme de mémoire paginée mais avec mémoire segmentée)?

80286 est un CPU sans TLB, tables de page; uniquement avec la mémoire virtuelle segmentée et la protection segmentée de la mémoire.

Est-il possible d'avoir un Linux sur une telle machine?

Mise à jour: Le processeur est très ancien, donc je ne pose que des versions historiques, pas les Linux Ultra Modern 2.6.42.11 ou Solaris 13 ou FreeBSD 10 ou ...

Était-ce utile?

La solution 3

L'utilisateur Zack dit que Xenix (basé sur Unix original) était capable de fonctionner sur 80286:

Il y avait certainement des unix qui fonctionnaient sur le 80286 - Xenix vient à l'esprit - mais je ne sais pas s'il y a quelque chose qui implémente ce que vous appelleriez un environnement de programmation moderne.

J'avais vérifié, la FAQ Xenix http://www.uni-giessen.de/faq/archiv/sco-xenix/msg00000.html dit

QA1 ... Le PC / AT AT OFFRED MATEUR MEMORY Protection, et SCO XENIX / 286 en ont profité.

Il s'agissait donc d'un PC / AT (80286) UNIX, qui a utilisé une protection de la mémoire à l'aide de la mémoire segmentée (contrairement aux Unixes modernes qui utilisent une protection de mémoire basée sur une page).

Selon http://www.deinmeister.de/x86modes.htm 80286 n'ont une protection de la mémoire qu'en termes de segments, pas de pages (des pages ont été ajoutées en 80386).

Autres conseils

La Projet Linux / Microcontroller (µClinux) est un port de Linux vers des systèmes sans unité de gestion de mémoire (MMU).

Il y a l'ancien Elks Projet aussi.

Cependant, en raison du manque de MMU, de nombreuses fonctionnalités standard UNIX (comme fork et mmap) ne sont pas pris en charge.

Le Linux d'aujourd'hui ne compilera que pour un 486 ou plus. C'est donc peu probable. Je me souviens que les 386 ont été quelque peu soutenus à l'ère 2.4.x, mais je ne me souviens rien des 286.

Je ne sais pas à quel point vous êtes intéressé dans la programmation de celui-ci (le cas échéant), mais je jouais avec OpenCoursware Class du MIT il y a un certain temps et ils avaient une version de Minix qu'ils ont porté à x86 (je ne sais pas si c'était juste pour 386+ ou pas et ne semble plus trouver le lien). Quoi qu'il en soit, si vous êtes intéressé, vous pouvez le vérifier ici: MIT OpenCourseware Operating System Engineering

Je doute que ce soit. Depuis le tout début, Linux a été conçu pour le 386, en utilisant des caractéristiques spécifiques à 386. Minix, en revanche, est antérieure à la 386 (et 286), il devrait donc y avoir une version compatible 286.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top