Рубрика «UNIX» - 2

История S.u.S.E. Кульминация - 1


Продолжение истории про зарождение и развитие дистрибутива SuSE. В прошлой части мы остановились на том, что в декабре 2001 года компания выпустила SuSE Linux Enterprise Server для мейнфреймов IBM S/390. В тот же год в США произошла рецессия, которая ощутимо сказалась на делах компании. Продолжим…Читать полностью »

История S.u.S.E. Начало - 1


В 1992 году четверо студентов из немецкого городка Фюрт — Роланд Дирофф, Томас Фер, Хьюберт Мантель и Бурхард Стайнбильд — мечтали о независимости. Им хотелось идти своим путём, работать на себя и получать от этого удовольствие. В колледже ребята много работали с UNIX, а в Хельсинском университете как раз выпустили новое опенсорсное ядро Linux. В то же время Питер Макдональд создал дистрибутив Softlanding Linux System (SLS), а Патрик Волькердинг выпускал исправления для него, бесплатно распространяя их через FTP. Но везде была одна общая проблема — большинство систем UNIX и Linux поддерживали только английский язык. Тогда четверо друзей решили упростить себе и людям жизнь, занявшись локализацией SLS для немецкой аудитории. Читать полностью »

Программисты 21 века. Линус Торвальдс - 1

Линус Торвальдс — финн шведского происхождения, в детстве говорил по-шведски и ходил в шведскую школу. Родился 28 декабря 1969 года в семье журналистов и деда-математика.Читать полностью »

Coherent OS: забытый клон Unix v7 - 1

Начало 80-х. AT&T, в чьей Bell Labs был разработан Unix, внезапно осознала очевидный факт: их программный продукт популярен, но при этом не приносит никакого дохода. Руководство решает начать продажу коммерческих лицензий.

Читать полностью »

Операционная система в 1 000 строках кода (часть 5) - 1


Это завершающая часть проекта по написанию собственно ОС. Здесь мы реализуем дисковый ввод/вывод и файловую систему, а также вкратце подведём итоги и наметим дальнейшие шаги на пути доработки системы.

▍ Навигация по частям

Читать полностью »

Операционная система в 1 000 строках кода (Часть 1) - 1


Всем привет! В этой небольшой книге (серии статей, — прим. пер.) мы с нуля, шаг за шагом, напишем скромную ОС.

Вы можете насторожиться, услышав, что разработка ОС или ядра, в частности, их базовых функций на удивление проста. Даже система Linux, которая воспринимается как масштабный опенсорсный проект, на стадии версии 0.01 включала всего 8 413 строк кода. Сегодня ядро Linux действительно огромно, но начиналось оно, как и типичный хобби-проект, с крохотной базы кода.

В рамках предстоящей серии статей мы на языке С реализуем базовое переключение контекста, страничное распределение памяти, режим пользователя, командную оболочку, драйвер дискового устройства и операции чтения/записи. И хотя такой объём работы может показаться масштабным, всё это уместится всего в 1 000 строк кода.

Но сразу предупрежу — процесс окажется не так прост, как выглядит на первый взгляд. Самой сложной частью создания собственной ОС является отладка. И мы не сможем использовать для этого printf, пока её не реализуем. Здесь вам потребуется освоить различные техники и приёмы отладки, которые в разработке ПО вы никогда не использовали. В частности, начиная «с нуля», вы будете встречать сложные этапы вроде процесса загрузки и страничной организации памяти. Но не пугайтесь, «отлаживать ОС» мы тоже научимся!

Чем сложнее отладка, тем больше радости от получения рабочего продукта. Так что приглашаю вас погрузиться в захватывающий мир разработки операционных систем!Читать полностью »

Я решил, что обнаружил баг… - 1


Я работал над совершенствованием эмулятора DOS и внезапно обнаружил, что достаточно тривиальная операция работает неправильно. Когда просишь COMMAND.COM сделать следующее:

echo AB> foo.txt
echo CD>> foo.txt

то вместо ABCD в файл foo.txt записывается ABBC.

Я проверил и убедился, что fwrite() действительно передаются правильные данные, но хитрость в том, что действия COMMAND.COM не так просты, как можно подумать:

  • Открываем foo.txt
  • Записываем «AB»
  • Закрываем foo.txt
  • Открываем foo.txt
  • Выполняем поиск на один байт назад от конца файла
  • Считываем один байт
  • Записываем «CD»
  • Закрываем foo.txt

Такая сложность нужна, потому что COMMAND.COM хочет учесть случай, когда файл заканчивается символом Ctrl-Z (в нашем случае его нет): в этом случае Ctrl-Z необходимо удалить. Почему-то последовательность «поиск-чтение-запись» работала странно. Но почему?Читать полностью »

1 января 1970 года. День создания индустрии программного обеспечения - 1

Эра Unix — это дата, которая жёстко закодирована в компьютерах повсеместно. Возможно, это самая известная дата в вычислительной технике, и она будет существовать до тех пор, пока у нас есть системы, основанные на Unix.

Читать полностью »

20-летие Linux для десктопных систем (часть 2) - 1


Коротко о прошлой части: в стремлении создать идеальную десктопную систему, аналогичную GNOME и Debian, молодой Ploum присоединяется к тайному проекту «no-name-yet», который в итоге становится Ubuntu.Читать полностью »

Одной из привлекательных особенностей в Linux-ах и прочих unix-like системах является то что оконные менеджеры можно менять как перчатки! Все они, конечно, отображают пользовательские программы в графических окнах - но у каждого свои фишки, настройки и особенности, что вызывает непрестанные дискуссии "KDE против Gnome" и подобные.

Для демонстрации вот мини-обзор (и мини-тьюториал) для TWM - это дефолтный оконный менеджер в разных *nixЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js