Линусу ничего другого не оставалось, как написать собственную программу эмуляции терминала, что он и сделал, как видно из приведенной выше цитаты.
Кроме отвратительной терминальной программы Линусу не нравилось то, что в 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 строк.
Я стал распространять свою операционку прежде всего, чтобы доказать, что все это не пустая болтовня — я действительно что-то сделал. В Интернете много болтают. О чем бы ни шла речь — об операционке или о сексе — многие в киберпространстве просто вешают лапшу на уши. Поэтому важно после того как ты растрезвонил, что пишешь операционку, иметь возможность сказать: «Вот — я ее и правда сделал. Я не трепло — можете сами посмотреть».
Кто и когда придумал для новой операционной системы название и логотип? Линус с самого начала хотел назвать свою операционную систему FREAX. Вот и работали бы мы сейчас на FREAX'ax. Если не верите — найдите в Интернете файл kernl/Makefile ядра версии 0.11.
А название "Linux" получилось следующим образом. Ари Лемке отвел место на FTP-сервере под исходные коды новой системы. Он назвал каталог с новой операционной системой pub/OS/Linux, Впоследствии именно это название за ней и закрепилось.
А логотип Linux придумали в 1996 году. Тогда в рассылке linux-kernel mailing list прозвучала идея о выборе логотипа для Linux. Сами понимаете, желающих заняться разработкой логотипа — предостаточно, поэтому различных вариантов было много. В процессе обсуждения логотипа Линус сказал, что ему нравятся пингвины. В ответ на это было предложено множество пингвинов в разных позах. Был также вариант пингвина, держащего на руках земной шар. На это Линус ответил: «бедный пингвин не так силен, чтобы удержать земной шар, он, пожалуй, будет раздавлен… Так что если вы думаете о «пингвине», вы должны представлять себе слегка растолстевшего сидящего пингвина, хорошо поевшего и отрыгнувшего. Он сидит с довольной улыбкой — мир кажется прекрасным, если вы только что съели несколько галлонов свежей рыбы…».