The post has been translated automatically. Original language: Russian
Unix appeared in the late 1960s. For computing technology, this is almost a geological age. During this time, entire generations of computers, drives, networks, languages, and companies have disappeared, and the word Unix is still found in the description of modern operating systems.
However, most people today never install Unix and may not even think about it at all. They use Macs, iPhones, Android devices, Internet servers, and cloud services. Unix seemed to disappear from our desktops, but in many ways the opposite happened: its ideas have become so deeply embedded in modern computing technology that we simply stopped noticing them.
Unix has not been one system forever
When they say "Unix", it's easy to imagine one operating system that has been around for more than half a century. In fact, the story is much more interesting. The original Unix, created at Bell Labs, quickly began to evolve in different directions.
One of the most important branches was the BSD system, which was developed at the University of California at Berkeley. Later, modern FreeBSD, NetBSD, and OpenBSD grew out of this line. Other companies have created their own commercial Unix systems: Solaris, AIX, HP-UX, and many lesser-known variants.
Therefore, it is more correct to perceive Unix not as one continuously updated program, but as a family of systems and at the same time as an engineering tradition.
BSD is still alive
FreeBSD exists and is developing today. This is not a museum replica of the old Unix, but a modern operating system for servers, workstations, network devices, and embedded hardware.
OpenBSD and NetBSD exist nearby. Each project has its own goals and development culture. OpenBSD is particularly known for its focus on simplicity and security, and NetBSD has historically sought to run on a very wide range of hardware platforms.
But the main thing here is something else: the BSD line did not end somewhere in the eighties or nineties. Code and ideas rooted in early Unix continue to evolve decades later.
Unix inside a Mac
The history of Apple computers is particularly interesting because the modern Mac looks nothing like a classic Unix machine. The user sees a graphical desktop, windows, icons, and familiar applications.
But underneath this interface is Darwin— the foundation of macOS. It combines Mach and BSD technologies, and a significant part of the BSD layer originates from FreeBSD.
Therefore, it is worth opening the Terminal program on a Mac, and under the beautiful graphical interface you will find a familiar world of processes, files, access rights, channels, a command shell and many familiar Unix tools.
This is not just a historical similarity. Modern versions of macOS are officially certified by UNIX. It turns out to be a rather funny situation: one of the most popular personal computers of the 21st century is at the same time a real Unix system.
And there's an iPhone in my pocket.
The same engineering line continues in Apple's mobile systems. The iPhone user almost never encounters the command line and does not perceive the phone as a Unix machine. This is not required.
But the lower levels of the system use many of the same mechanisms: processes, the file system, network facilities, access rights, and software interfaces from the POSIX and BSD families.
It turns out to be a curious historical turn. Unix was created in the days of big computers and terminals, and a few decades later, its legacy turned out to be inside a device with a touchscreen, camera, satellite navigation, and wireless connectivity that fits in a pocket.
Linux is a relative in ideas, but not a descendant in code.
It is important to make a distinction here. Linux is often referred to as Unix, but historically this is not entirely accurate.
Linus Torvalds started creating Linux in 1991 as a new kernel. Linux is not a continuation of the original Unix or BSD source code. It is an independent system built largely according to the same principles and compatible with many established Unix rules and programming interfaces.
Therefore, Linux is more correctly called a Unix-like system. The family tree is different, but the structure and culture are very close.
And it is this branch that may have made Unix ideas more widespread today than ever before.
Android leads to Linux too
If a person has an Android phone, the Linux kernel is running inside it. Google takes the supported versions of the Linux kernel and adds the changes needed by Android and device manufacturers.
Of course, the average Android user doesn't see a Linux workstation in front of them. A large, independent system with its own application environment, security features, and user interface is built on top of the core.
But at the very base of a modern smartphone is a core belonging to a Unix-like tradition.
Therefore, a person may never knowingly install Linux in their life and still use it every day.
ChromeOS is another example
It's a similar story with ChromeOS. The system is also based on the Linux kernel. The user sees a browser, applications, and a simple graphical interface, rather than a traditional Unix system.
This clearly shows how much the very concept of the operating system has changed. The legacy of Unix no longer necessarily looks like green text on a black screen. It can be hidden under the graphical interface of a laptop, phone, TV, network device, or server.
Unix has ceased to be the exterior of the system. He became part of her inner workings.
Servers have made Linux almost invisible
There is another world that the average user hardly sees — servers.
You open a website, launch an application, save a file to the cloud or send a message, and somewhere on the other side of the network there are machines running, which very often have a Linux system installed. For the user, it's just the Internet.
And this is perhaps one of the main victories of the Unix-like approach. The operating system has ceased to be a subject with which the user necessarily interacts directly. It has become an infrastructure.
We notice it mostly when we develop or operate servers ourselves.
Why exactly did these ideas last so long?
The point, of course, is not that the developers of the 1970s somehow provided smartphones, the Internet, and modern data centers. They couldn't have known what computers would be like in fifty years.
More general solutions proved to be durable: processes, files, access rights, small programs, the ability to connect tools, intuitive programming interfaces, and the habit of separating a mechanism from a specific way of using it.
The specific equipment was changing. User interfaces have been changing. Programming languages were changing. And many basic concepts remained common enough to survive several generations of technology.
This is one of the signs of a good architecture: it does not try to guess the future in advance, but leaves enough simple building blocks so that they can be assembled into something that the creators of the system have never seen.
Not everything modern is Unix
It would be a mistake to declare Unix the progenitor of all modern computing technology. Windows has a different story. Linux does not originate from Unix source codes. Android is not Unix with a graphical shell, but a huge standalone software platform using the Linux kernel. Even macOS is a combination of several engineering lines, not just a continuation of the old Unix.
Something else is more interesting. The ideas that emerged and honed in the Unix world turned out to be so successful that they reappeared in new systems, became standards, or were borrowed by other developers.
Therefore, the influence of Unix is much broader than its direct family tree.
From magnetic tape to phone
When I first came across SCO Unix in 1998, it was a very specific machine: a French Zenith with Intel 486 and a magnetic tape distribution. Unix then felt like a separate world that still needed to be accessed.
Today it's the other way around. You can buy a computer or a phone with Unix legacy in a regular store. You can get a Linux server in a few minutes. On a Mac, it's enough to open the Terminal to see a familiar system under a modern graphical interface.
During this time, the rarity of the technology itself has disappeared. But the ideas that made it interesting haven't disappeared.
The system may disappear, but its ideas may remain.
This is probably why the history of Unix is interesting not only as the history of operating systems. Most programs disappear sooner or later. Even very successful technologies turn into museum exhibits after twenty or thirty years.
Unix shows a different development option. Specific versions went away, companies hardware platforms disappeared, and the main ideas were transferred to the following systems and continued to evolve.
Today, Unix can be found on FreeBSD and macOS. The Unix-like line is continued by Linux, Android, and ChromeOS. His approaches live on in software, network services, and development culture.
Unix is older than many people who write programs today.
But it would be premature to consider it the past of computing technology. In many cases, the future simply continues to use ideas that were invented a long time ago.
Unix появился в конце 1960-х годов. Для вычислительной техники это почти геологический возраст. За это время исчезли целые поколения компьютеров, накопителей, сетей, языков и компаний, а слово Unix по-прежнему встречается в описании современных операционных систем.
При этом большинство людей сегодня никогда не устанавливают Unix и, возможно, вообще не задумываются о нём. Они пользуются Mac, iPhone, Android, серверами в Интернете и облачными службами. Unix как будто исчез с наших рабочих столов, но во многом произошло обратное: его идеи настолько глубоко вошли в современную вычислительную технику, что мы просто перестали их замечать.
Unix не был одной системой навсегда
Когда говорят «Unix», легко представить одну операционную систему, которая существует уже больше полувека. В действительности история намного интереснее. Первоначальный Unix, созданный в Bell Labs, довольно быстро начал развиваться в разных направлениях.
Одной из важнейших ветвей стала BSD — система, развивавшаяся в Калифорнийском университете в Беркли. Из этой линии позднее выросли современные FreeBSD, NetBSD и OpenBSD. Другие компании создавали собственные коммерческие Unix-системы: Solaris, AIX, HP-UX и множество менее известных вариантов.
Поэтому Unix правильнее воспринимать не как одну непрерывно обновлявшуюся программу, а как семейство систем и одновременно как инженерную традицию.
BSD жив до сих пор
FreeBSD существует и развивается сегодня. Это не музейная копия старого Unix, а современная операционная система для серверов, рабочих станций, сетевых устройств и встроенной техники.
Рядом существуют OpenBSD и NetBSD. У каждого проекта собственные цели и культура разработки. OpenBSD особенно известен вниманием к простоте и безопасности, а NetBSD исторически стремится работать на очень широком наборе аппаратных платформ.
Но главное здесь другое: линия BSD не закончилась где-то в восьмидесятых или девяностых годах. Код и идеи, имеющие корни в раннем Unix, продолжают развиваться спустя десятилетия.
Unix внутри Mac
История компьютеров Apple особенно интересна, потому что внешне современный Mac совсем не напоминает классическую Unix-машину. Пользователь видит графический рабочий стол, окна, значки и привычные приложения.
Но под этим интерфейсом находится Darwin — основа macOS. В ней соединены технологии Mach и BSD, причём значительная часть BSD-слоя происходит из FreeBSD.
Поэтому стоит открыть на Mac программу Terminal — и под красивым графическим интерфейсом обнаруживается знакомый мир процессов, файлов, прав доступа, каналов, командной оболочки и множества привычных Unix-средств.
Это не просто историческое сходство. Современные версии macOS проходят официальную сертификацию UNIX. Получается довольно забавная ситуация: один из самых массовых персональных компьютеров XXI века одновременно является настоящей Unix-системой.
А в кармане — iPhone
Та же инженерная линия продолжается в мобильных системах Apple. Пользователь iPhone практически никогда не сталкивается с командной строкой и не воспринимает телефон как Unix-машину. Это и не требуется.
Но нижние уровни системы используют многие те же механизмы: процессы, файловую систему, сетевые средства, права доступа и программные интерфейсы семейства POSIX и BSD.
Получается любопытный исторический поворот. Unix создавался во времена больших компьютеров и терминалов, а через несколько десятилетий его наследие оказалось внутри устройства с сенсорным экраном, камерой, спутниковой навигацией и беспроводной связью, которое помещается в карман.
Linux — родственник по идеям, но не потомок по коду
Здесь важно сделать различие. Linux часто называют Unix, но исторически это не совсем точно.
Линус Торвальдс начал создавать Linux в 1991 году как новое ядро. Linux не является продолжением исходного кода первоначального Unix или BSD. Это самостоятельная система, построенная во многом по тем же принципам и совместимая со многими сложившимися в мире Unix правилами и программными интерфейсами.
Поэтому Linux правильнее называть Unix-подобной системой. Родословная другая, но устройство и культура очень близки.
И именно эта ветвь сегодня, возможно, сделала идеи Unix массовее, чем когда-либо раньше.
Android тоже ведёт к Linux
Если у человека телефон с Android, внутри него работает ядро Linux. Google берёт поддерживаемые версии ядра Linux и добавляет изменения, необходимые Android и производителям устройств.
Разумеется, обычный пользователь Android не видит перед собой рабочую станцию Linux. Поверх ядра построена большая самостоятельная система со своей средой приложений, средствами безопасности и пользовательским интерфейсом.
Но в самом основании современного смартфона оказывается ядро, принадлежащее Unix-подобной традиции.
Поэтому человек может никогда в жизни сознательно не устанавливать Linux и при этом пользоваться им каждый день.
ChromeOS — ещё один пример
Похожая история с ChromeOS. В основе системы также находится ядро Linux. Пользователь видит браузер, приложения и простой графический интерфейс, а не традиционную Unix-систему.
Это хорошо показывает, насколько сильно изменилось само представление об операционной системе. Наследие Unix больше не обязательно выглядит как зелёный текст на чёрном экране. Оно может скрываться под графическим интерфейсом ноутбука, телефона, телевизора, сетевого устройства или сервера.
Unix перестал быть внешностью системы. Он стал частью её внутреннего устройства.
Серверы сделали Linux почти невидимым
Есть ещё один мир, который обычный пользователь практически не видит, — серверы.
Открываешь сайт, запускаешь приложение, сохраняешь файл в облаке или отправляешь сообщение, а где-то на другой стороне сети работают машины, на которых очень часто установлена Linux-система. Для пользователя это просто Интернет.
И это, пожалуй, одна из главных побед Unix-подобного подхода. Операционная система перестала быть предметом, с которым пользователь обязательно взаимодействует напрямую. Она стала инфраструктурой.
Мы замечаем её в основном тогда, когда сами занимаемся разработкой или эксплуатацией серверов.
Почему именно эти идеи прожили так долго
Дело, конечно, не в том, что разработчики 1970-х годов каким-то образом предусмотрели смартфоны, Интернет и современные центры обработки данных. Они не могли знать, какими станут компьютеры через пятьдесят лет.
Долговечными оказались более общие решения: процессы, файлы, права доступа, небольшие программы, возможность соединять инструменты, понятные программные интерфейсы и привычка отделять механизм от конкретного способа его использования.
Конкретное оборудование менялось. Пользовательские интерфейсы менялись. Языки программирования менялись. А многие основные понятия оставались достаточно общими, чтобы пережить несколько поколений техники.
Это один из признаков хорошей архитектуры: она не пытается заранее угадать будущее, но оставляет достаточно простых строительных блоков, чтобы из них можно было собрать то, чего создатели системы никогда не видели.
Не всё современное — Unix
Было бы ошибкой объявлять Unix прародителем вообще всей современной вычислительной техники. Windows имеет другую историю. Linux не происходит из исходных текстов Unix. Android — это не Unix с графической оболочкой, а огромная самостоятельная программная платформа, использующая ядро Linux. Даже macOS представляет собой сочетание нескольких инженерных линий, а не просто продолжение старого Unix.
Интереснее другое. Идеи, появившиеся и отточенные в мире Unix, оказались настолько удачными, что снова возникали в новых системах, становились стандартами или заимствовались другими разработчиками.
Поэтому влияние Unix гораздо шире его прямого генеалогического дерева.
От магнитной ленты до телефона
Когда я впервые столкнулся с SCO Unix в 1998 году, это была вполне определённая машина: французский Zenith с Intel 486 и дистрибутивом на магнитной ленте. Unix тогда ощущался отдельным миром, к которому ещё нужно было получить доступ.
Сегодня всё наоборот. Компьютер или телефон с наследием Unix можно купить в обычном магазине. Сервер на Linux можно получить за несколько минут. На Mac достаточно открыть Terminal, чтобы увидеть знакомую систему под современным графическим интерфейсом.
За это время исчезла редкость самой технологии. Но не исчезли идеи, которые делали её интересной.
Система может исчезнуть, а её идеи — остаться
Наверное, именно поэтому история Unix интересна не только как история операционных систем. Большинство программ рано или поздно исчезает. Даже очень успешные технологии через двадцать или тридцать лет превращаются в музейные экспонаты.
Unix показывает другой вариант развития. Конкретные версии уходили, компании закрывались, аппаратные платформы исчезали, а основные идеи переходили в следующие системы и продолжали развиваться.
Сегодня Unix можно найти в FreeBSD и macOS. Unix-подобную линию продолжают Linux, Android и ChromeOS. Его подходы живут в программных средствах, сетевых службах и культуре разработки.
Unix старше многих людей, которые сегодня пишут программы.
Но считать его прошлым вычислительной техники было бы преждевременно. Во многих случаях будущее просто продолжает использовать идеи, придуманные очень давно.