Чтение онлайн

на главную

Жанры

Linux: Полное руководство

Аллен Питер В.

Шрифт:

С этого все и началось…

Рис. 5. Линус Торвальдс

Линус недоволен Minix

В январе 1991 года Линус приобрел в кредит компьютер на базе процессора Intel 80386@33Mhz с 4 мегабайтами оперативной памяти. На компьютер была установлена операционная система Minix. Но установленная система не совсем оправдала его ожидания. Больше всего ему не нравилась программа эмуляции терминала, которая была для него просто необходима — ведь с ее помощью он подключался к университетскому MicroVAX'y. Линус писал: «Беда была в том, что я хотел скачивать и закачивать файлы. То есть

мне нужно было уметь писать на диск. Для этого моей программе эмуляции нужен был драйвер дисковода. А еще ей был нужен драйвер файловой системы, чтобы она могла вникать в организацию диска и записывать скачиваемые файлы.... разработка драйверов для дисковода и файловой системы казалась интересным делом. И я решил им заняться. Написал драйвер дисковода. А поскольку я хотел записывать файлы в файловую систему Minix, к тому же эта система была хорошо документирована, я сделал свою файловую систему совместимой с системой Minix. Таким образом, я мог читать файлы, созданные в Minix, и писать файлы на тот же диск, так что Minix могла читать файлы, созданные моей программой эмуляции терминала»

Линусу ничего другого не оставалось, как написать собственную программу эмуляции терминала, что он и сделал, как видно из приведенной выше цитаты.

Кроме отвратительной терминальной программы Линусу не нравилось то, что в Minix нельзя было перевести текущую программу в фоновый режим. После написания своей программы эмуляции терминала Линус фактически взялся за написание своей операционной системы.

Сначала он принялся писать различные системные вызовы, но эта работа ему быстро надоела — ведь заранее нельзя знать, что именно тебе понадобится. Поэтому он взял оболочку Bourne Again Shell (bash) и попытался запустить ее на своей системе методом научного «тыка» (в математике этот метод называется методом Коши). Он запускал оболочку, она требовала какой-то системный вызов и завершала свою работу с ошибкой. Линус анализировал, какой вызов был нужен оболочке, и реализовывал его. В 1991 году оболочка все-таки запустилась. Это был очень важный момент в развитии новой ОС: был заложен ее фундамент.

25 августа Линус написал в группу новостей comp.os.minix первое сообщение о создании новой операционной системы. Сохранился даже оригинал этого сообщения:

From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)

Newsgroups: comp.os.minix

Subject: What would you like to see most in minix?

Summary: small poll for my new operating system

Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>

Date: 25 Aug 91 20:57:08 GMT

Organisation: University of Helsinki

Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't

be big and professional like gnu) far 386(486) AT clones.

This has been brewing since april, and is starting to get

ready. I'd like any feedback on things people like/dislike

in minix, as my OS resembles it somewhat (same physical

layout of the file-system (due to practical reasons) among

other things).

I've currently ported bash(1.08) and gcc(1.40), and things

seem to work. This implies that I'll get something prac-

tical within a few months, and I'd like to know what fea-

tures most people would want. Any suggestions are welcome,

but I won't promise I'll implement them :-)

Linus (torvalds@kruuna.helsinki.fi)

PS. Yes - it's free of any minix code, and it has a multi-

threaded fs. It is NOT portable (uses 386 task switching

etc), and it probably never will support anything other

than AT-harddisks, as that's all I have :-(.

Вот перевод этого сообщения:

From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)

Newsgroups: comp.os.minix

Subject: Что вам не хватает в minix?

Summary: небольшой опрос для новой операционной системы

Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>

Date: 25 Aug 91 20:57:08 GMT

Organization: Университет Хельсинки

Привет всем пользователям minix

Я разрабатываю (бесплатную) операционную систему (это

просто хобби, ничего «огромного» и профессионального вроде

GNU) для чипов 386(486) AT. Я пишу ее начиная с апреля

и похоже, что скоро она будет готова. Мне очень важно

узнать, что вам нравится/не нравится в minix, потому что

моя ОС напоминает minix (та же самая файловая система (из

практических соображений) и много еще чего).

На данный момент я перенес в нее bash(1.08) и gcc(1.40),

вроде бы они работают. Похоже, что через несколько месяцев

все будет готово и я хотел бы знать, какие функции вам

нужны. Принимаются любые заявки, но их выполнение я не

гарантирую :-)

Linus (torvalds@kruuna.helsinki.fi)

PS. Система свободна от кода minix и обладает много-

потоковой файловой системой. Она не переносима (поскольку

использует переключение задач 386 и др.) и возможно

никогда не будет поддерживать ничего, кроме АТ-

винчестеров, поскольку кроме них у меня ничего нет :-(.

Версия Linux 0.01 была выпущена 17 сентября 1991 года. В своей книге «Just for fun» Линус пишет:

«И вот я решился ее выложить. Я не делал публичных объявлений, а просто написал пятерым-десятерым хакерам на личные адреса, что она лежит на FTP-сайте. В числе прочих я написал знаменитому среди фанатов Minix Брюсу Эвансу и Ари Лемке. Я выложил исходники самой Linux и еще несколько бинарников, чтобы можно было хоть что-то делать. Я сказал, что нужно, чтобы запустить все это хозяйство. На машине должна была стоять Minix (версия 386) и нужен был компилятор GCC. Причем на самом деле нужна была моя версия GCC, поэтому ее я тоже выложил.

Не думаю, чтобы ту версию проверяло больше одного-двух человек. Для этого нужно было возиться с установкой специального компилятора, выделить пустой раздел, чтобы использовать его для загрузки, откомпилировать мое ядро и запустить оболочку. А кроме запуска оболочки, делать было особенно нечего. Можно было распечатать исходники — всего 10 000 строк.

Я стал распространять свою операционку прежде всего, чтобы доказать, что все это не пустая болтовня — я действительно что-то сделал. В Интернете много болтают. О чем бы ни шла речь — об операционке или о сексе — многие в киберпространстве просто вешают лапшу на уши. Поэтому важно после того как ты растрезвонил, что пишешь операционку, иметь возможность сказать: «Вот — я ее и правда сделал. Я не трепло — можете сами посмотреть».

Поделиться:
Популярные книги

Неудержимый. Книга XIV

Боярский Андрей
14. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XIV

Штуцер и тесак

Дроздов Анатолий Федорович
1. Штуцер и тесак
Фантастика:
боевая фантастика
альтернативная история
8.78
рейтинг книги
Штуцер и тесак

Его маленькая большая женщина

Резник Юлия
Любовные романы:
современные любовные романы
эро литература
8.78
рейтинг книги
Его маленькая большая женщина

Измена. Возвращение любви!

Леманн Анастасия
3. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Возвращение любви!

На границе империй. Том 7. Часть 4

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
На границе империй. Том 7. Часть 4

Убивать чтобы жить 6

Бор Жорж
6. УЧЖ
Фантастика:
боевая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 6

Совок-8

Агарев Вадим
8. Совок
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Совок-8

Убивать чтобы жить 2

Бор Жорж
2. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 2

Я все еще не князь. Книга XV

Дрейк Сириус
15. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще не князь. Книга XV

Возвышение Меркурия. Книга 12

Кронос Александр
12. Меркурий
Фантастика:
героическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 12

Последняя Арена 7

Греков Сергей
7. Последняя Арена
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Последняя Арена 7

Не возвращайся

Гауф Юлия
4. Изменщики
Любовные романы:
5.75
рейтинг книги
Не возвращайся

Идеальный мир для Лекаря 12

Сапфир Олег
12. Лекарь
Фантастика:
боевая фантастика
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 12

Бальмануг. Студентка

Лашина Полина
2. Мир Десяти
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Бальмануг. Студентка