Возможно ли UNIX или Linux для машины 80286 (или любой машины без механизма страницы памяти) - PullRequest
3 голосов
/ 18 февраля 2011

Возможно ли иметь ОС Unix для машины 80286 (или любую машину без механизма постраничной памяти, но с сегментированной памятью)?

80286 - процессор без TLB, таблицы страниц; только с сегментированной виртуальной памятью и сегментированной защитой памяти.

Возможно ли иметь Linux на такой машине?

UPD: процессор очень старый, поэтому я спрашиваю только об исторических версиях, а не об ультрасовременном linux 2.6.42.11 или Solaris 13 или FreeBSD 10 или ...

Ответы [ 5 ]

4 голосов
/ 18 февраля 2011

Проект Linux / Microcontroller (µClinux) - это порт Linux для систем без модуля управления памятью (MMU).

Это старое ELKS проект тоже.

Однако из-за отсутствия MMU многие стандартные функции UNIX (такие как fork и mmap) не поддерживаются.

3 голосов
/ 18 февраля 2011

Сегодняшний Linux будет компилироваться только для 486 или выше. Так что вряд ли. Я помню, что 386-е несколько поддерживали в эпоху 2.4.x, но я ничего не помню о 286-х.

2 голосов
/ 20 февраля 2011

Пользователь Zack говорит, что Xenix (на основе оригинального UNIX) был способен работать на 80286:

Конечно, были Unix, которые работали на 80286 - Xenix приходит на ум - но я неНе знаю, есть ли что-нибудь, что реализует то, что вы бы назвали современной средой программирования.

Я проверил, FAQ по Xenix http://www.uni -giessen.de / faq / archiv / sco-xenix / msg00000.html говорит

QA1 ... PC / AT предлагал аппаратную защиту памяти, и SCO Xenix / 286 воспользовался этим преимуществом.

Таким образом, это был Unix PC / AT (80286), который использовалзащита памяти с использованием сегментированной памяти (в отличие от современных юниксов, которые используют защиту памяти на основе страниц).

Согласно http://www.deinmeister.de/x86modes.htm 80286 имеют защиту памяти только в виде сегментов, а не страниц (страницы были добавлены в 80386).).

0 голосов
/ 19 февраля 2011

Не уверен, насколько вы заинтересованы в его программировании (если вообще), но я играл с классом OpenCourseWare из MIT некоторое время назад, и у них была версия Minix, которую они портировали на x86 (не уверен, что это было простодля 386+ или нет и не могу найти ссылку больше).В любом случае, если вам интересно, вы можете проверить это здесь: MIT OpenCourseWare Operating System Engineering

0 голосов
/ 18 февраля 2011

Я сомневаюсь в этом. С самого начала , Linux был разработан для 386 с использованием специфических для 386 функций. MINIX, с другой стороны, предшествует 386 (и 286), поэтому должна быть версия, совместимая с 286.

...