Linux с архитектурой windows

Архитектура ОС GNU/Linux

В этой статье вы прочитаете про архитектура ОС Linux, думаю будет очень интересно и полезно.

Также посмотрите статью «Лучшие книги для изучения Linux», там вы найдёте ещё книги для изучения Linux.

Архитектура ОС GNU/Linux:

Для того что бы понять GNU/Linux нужно разобраться с его архитектурой для этого вспомним что же такое операционная система (сокращенно ОС). ОС – это системная программа, которая выступает в качестве посредника между пользователем и аппаратурой компьютера. ОС – это системная программа, которая выступает в качестве посредника между прикладными программами и аппаратурой компьютера.

Для простоты условно разделим архитектуру на 3 части: двух уровневая (простая), структурная (схематическая, с основными компонентами системы) и полная схема ядра (объединение всех частей ядра в единую схему). Постепенно разберемся с каждой из них и будем углублять знания о GNU/Linux. И в конце сравним архитектуры Windows и Linux.

  • Двухуровневая архитектура;
  • Структурная архитектура;
  • Сравнение Windows и GNU/Linux;
  • Полная схема ядра Linux;

Двух уровневая архитектура:

Архитектура любой ОС может быть разделена структурно на 2 части это ядро (Kernel) и программы (Applications). Applications+Kernel это ОС. Ядро (Kernel) – это центр ОС.

Оно обеспечивает доступ программы к оборудованию компьютера, такого как оперативная память, процессорное время, жесткие диски, видеокарта и т.д.

Программы (Applications) – это разные утилиты, сервисы, прикладные программы и т.д. Из 2-х уровневой архитектуры, можно сделать вывод: ничего особенного.

Схематически так можно изобразить любую операционную систему. Windows, Dos, Unix, MAC ОС и другие. Попробуем разобраться детальней.

Программное обеспечение в GNU/Linux взято из проекта Ричарда Столлмэна GNU — то самое свободное программное обеспечение (open source). Ядро, которое использует GNU/Linux, то самое ядро Linux, написанное Линусом Торвальдсом.

Ядро любой ОС можно классифицировать как: монолитное ядро, модульное ядро, микроядро, экзо-ядро, нано-ядро, гибридное ядро. В ОС GNU/Linux используется монолитное ядро.

Монолитное ядро – изображено на рисунке и состоит из ядра (kernel) и модулей (modules). Части ядра – называют модулями.

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

Все модули используют единое адресное пространство оперативной памяти, одни и те же данные. Иными словами, любой модуль может обратиться к данным которые использует другой модуль, так и к ОП другого модуля.

Как вывод крах одного модуля может повлечь за собой крах другого модуля или всей системы. К примеру, в случае если модуль некорректно изменит общие данные, то это может привести к ошибке в другом модуле и возможно к ошибке во всем ядре.

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

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

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

Читайте также:  Windows 10 не устанавливается звук

Структурная схема ядра:

Посмотрим на архитектуру GNU/Linux немного детальней. Архитектура разбита на 3 функциональных уровня: уровень пользователя, уровень ядра и уровень аппаратуры.

Уровень пользователя — это то, что до этого момента мы называли: программы (Applications). На этом уровне работают разные программы, службы, системные утилиты и т.д.
Уровень ядра – тут находится само ядро ОС.

Уровень аппаратуры — тут находятся разные устройства таки как оперативная память, процессор, жесткие диски, видеокарта и т.д.

В уровне пользователя есть программное обеспечение (пользовательские приложения), которое может работать напрямую с ядром, либо посредством специальных системных библиотек (к примеру: glibc).

В пространстве ядра есть “обращение к операционной системе”, это посредник между программами и ядром. (Executive Services), который принимает данные от программ и передает их ядру системы, а ядро непосредственно работает с оборудованием.

Как видно из схемы после “обращения к операционной системе”, есть всего два варианта развития дальнейших событий.

Обращаться можно только к “подсистема управления файлами” либо к “подсистема управления процессами”. “Подсистема управления файлами” – управляет всем: вводом/выводом, устройствами и т.д. “Подсистема управления процессами” – управляет процессорным временем, ОП, процессами и т.д. “Подсистема управления процессами” позволяет процессам обмениваться данными друг с другом с помощью специальных процедур, которые называют каналы. “Подсистема управления файлами” и “подсистема управления процессами” могут между собой взаимодействовать.

Именно “Подсистема управления файлами” ( файловая система) и “подсистема управления процессами”( управления процессами) — две основных компоненты ядра. “Подсистема управления файлами” формирует нужного синтаксиса данные и отправляет их “Драйверу устройства”. “Подсистема управления файлами” может передавать символы или блоки данных. Стоит отметить, что Linux изначально разрабатывался под девизом: «Пишите программы, которые бы поддерживали текстовые потоки, поскольку это универсальный интерфейс» (Дуг МакИлрой, изобретатель каналов UNIX).

Именно поэтому Подсистема управления файлами связана с драйверами напрямую не битовыми потоками, а символьными.

Подсистема управления файлами разрабатывалась с возможностью отобразить все что есть в системе: устройства (жесткий диск, принтеры и т.д.), процессы, и т.д. Как видно из схемы, именно на файловую систему ложится задача передавать данные устройствам. Именно здесь, в файловой системе, каждое устройство представляется в виде отдельного специального файла, что позволяет легко и просто обращаться к любому устройству.

Для связи с жестким диском процесс использует файл “/dev/hdа”. Который в свою очередь связывается с драйвером жесткого диска. Драйвер жесткого диска уже непосредственно обращается к жесткому диску и производит чтение или запись. Еще несколько примеров.

Например: принтер – это специальный файл, и все что будет скопировано в этот файл — будет распечатано.

Например: сетевой адаптер – это специальный файл, и все что будет скопировано в этот файл, будет передано по сети. Например: терминал (консоль пользователя) – это специальный файл, и все что в него будет записано, будет выведено на экране терминала (консоль пользователя).

Вывод:

В этой статье вы прочитали про архитектура ОС Linux, думаю вам было вполне интересно и вы многое узнали.

Что такое подсистема Windows для Linux What is the Windows Subsystem for Linux?

Подсистема Windows для Linux позволяет разработчикам запускать среду GNU/Linux с большинством программ командной строки, служебных программ и приложений непосредственно в Windows без каких-либо изменений и необходимости использовать традиционную виртуальную машину или двойную загрузку. The Windows Subsystem for Linux lets developers run a GNU/Linux environment — including most command-line tools, utilities, and applications — directly on Windows, unmodified, without the overhead of a traditional virtual machine or dualboot setup.

Можно сделать следующее. You can:

  • Выберите предпочтительные дистрибутивы GNU/Linux из Microsoft Store. Choose your favorite GNU/Linux distributions from the Microsoft Store.
  • Запускайте средства командной строки, например grep , sed , awk , или другие двоичные файлы ELF-64. Run common command-line tools such as grep , sed , awk , or other ELF-64 binaries.
  • Запускайте сценарии Bash Shell и приложения командной строки GNU/Linux, включая: Run Bash shell scripts and GNU/Linux command-line applications including:
    • инструменты: vim, emacs, tmux; Tools: vim, emacs, tmux
    • языки: NodeJS, Javascript, Python, Ruby, C/C++, C# и F#, Rust, Go и пр. Languages: NodeJS, Javascript, Python, Ruby, C/C++, C# & F#, Rust, Go, etc.
    • Службы. SSHD, MySQL, Apache, lighttpd, MongoDB, PostgreSQL. Services: SSHD, MySQL, Apache, lighttpd, MongoDB, PostgreSQL.
  • Установите дополнительное программное обеспечение с помощью своего собственного диспетчера пакетов дистрибутивов GNU/Linux. Install additional software using your own GNU/Linux distribution package manager.
  • Вызывайте приложения Windows с помощью оболочки командной строки, похожей на UNIX. Invoke Windows applications using a Unix-like command-line shell.
  • Вызывайте приложения GNU/Linux в Windows. Invoke GNU/Linux applications on Windows.
Читайте также:  Windows по английски перевод

Что такое WSL 2? What is WSL 2?

WSL 2 — это новая версия архитектуры подсистемы Windows для Linux, которая поддерживает подсистему Windows для Linux, чтобы запускать двоичные файлы Linux ELF64 в Windows. WSL 2 is a new version of the Windows Subsystem for Linux architecture that powers the Windows Subsystem for Linux to run ELF64 Linux binaries on Windows. Ее основными приоритетами является увеличение производительности файловой системы и добавление полной совместимости системных вызовов. Its primary goals are to increase file system performance, as well as adding full system call compatibility.

Эта новая архитектура изменяет способ взаимодействия этих двоичных файлов Linux с Windows и с оборудованием компьютера, но по-прежнему предоставляет то же взаимодействие с пользователем, что и WSL 1 (текущая общедоступная версия). This new architecture changes how these Linux binaries interact with Windows and your computer’s hardware, but still provides the same user experience as in WSL 1 (the current widely available version).

Отдельные дистрибутивы Linux можно запускать с архитектурой WSL 1 или WSL 2. Individual Linux distributions can be run with either the WSL 1 or WSL 2 architecture. Каждый дистрибутив можно обновить или использовать на более старой версии в любое время, кроме того вы можете запустить дистрибутивы WSL 1 и WSL 2 параллельно. Each distribution can be upgraded or downgraded at any time and you can run WSL 1 and WSL 2 distributions side by side. WSL 2 использует совершенно новую архитектуру, которая дает преимущества от работы с реальным ядром Linux. WSL 2 uses an entirely new architecture that benefits from running a real Linux kernel.

Выпущен дистрибутив Linux, идеально воспроизводящий Windows 10. Видео

Вышел обновленный дистрибутив Linuxfx, в новой версии 10.3 получивший интерфейс, в точности повторяющий оболочку Windows 10. визуальное сходство практически 100-процентное, и даже есть штатная возможность установки и запуска программ, изначально написанных под Windows.

Бразильский клон Windows 10

Бразильские разработчики из Linuxfx Software выпустили одноименный дистрибутив, интерфейс которого как две капли воды похож на оболочку OC Microsoft Windows 10. Сходство практически 100-процентное – авторы проекта постарались скопировать каждую иконку и каждый элемент интерфейса, влияющий на общее его восприятие, включая стартовое меню, таскбар и вид окон файлового менеджера.

Новая оболочка доступна в составе дистрибутива Linuxfx 10.3, распространяемого на бесплатной основе. На момент публикации материала он был доступен для скачивания для настольных ПК и ноутбуков на базе чипов Intel и AMD, а также для одноплатных ПК Raspberry Pi второго, третьего и четвертого поколений.

Читайте также:  Telegram ��� linux fedora

Ubuntu со «вкусом » Windows

Linuxfx представляет собой сильно модифицированный дистрибутив Ubuntu Linux версии 20.04 LTS, который вышел в апреле 2020 г. Ubuntu 20.04 поставляется с расширенной пятилетней поддержкой, что в полной мере касается и Linuxfx – обновления на него будут приходить через официальные каналы Canonical, разработчика Ubuntu.

Windows-подобная оболочка – это глубокого кастомизированная среда Cinnamon, и визуально отличить ее от оболочки, разработанной Microsoft, будет трудно, поскольку даже при загрузке ОС на экране отображается логотип Windows 10. Девелоперы скопировали «Пуск», панель задач, окна календаря и часов, системный трей, «Проводник» и даже меню виртуальных рабочих столов, как и окно переключения между запущенными программами.

В Linuxfx даже есть поддержка «гаджетов» — мини-программ, расширяющих штатные возможности рабочего стола, а также окно «Параметры» и «Панель управления» – классический компонент ОС Microsoft, появившийся еще в 1985 г. в Windows 1.0, и от которого компания планирует избавиться в одном из ближайших обновлений.

Штатные программы

Дистрибутив Linuxfx весит около 3,7 ГБ и включает ряд встроенных программ, в том числе офисный пакет LibreOffice. В данной ОС он маскируется под Microsoft Office путем подмены пиктограмм.

Для выхода в интернет есть браузеры Firefox и Chrome, для работы с графикой – редактор GIMP, для просмотра фильмов – плеер VLC. Для онлайн-общения есть Skype и Microsoft Teams, для удаленного управления – Anydesk и TeamViewer, для игр – клиент Steam, игрового сервиса компании Valve.

Разработчики даже встроили в Linuxfx голосовой помощник, разумеется, с иконкой Cortana – фирменным ассистентом Microsoft. В данном случае он носит название Helloa и воспринимает команды на португальском, испанском и английском языках.

В составе Linuxfx предустановлена WINE (система API Windows), позволяющая запускать на Linux программы, написанные для Windows, а также устанавливать их из дистрибутивов с расширениями .exe и .msi. Разработчики постарались скопировать даже «Блокнот», самый простой текстовый редактор.

Целевая аудитория

Разработчики Linuxfx не уточняют, что побудило их сделать Linux-клона самой популярной настольной ОС в мире (доля Windows 10 на мировом рынке ОС, по статистике StatCounter, на июнь 2020 г. составляла 77,7% против 1,7% у всех дистрибутивов Linux). Как пишет портал Liliputing, их идея может понравиться Windows-пользователям.

Linuxfx может пригодиться владельцам Windows-компьютеров в качестве инструмента для безболезненного перехода на Linux. Внимание к деталям, проявленное разработчиками в процессе копирования интерфейса Windows 10, позволит таким пользователям чувствовать себя «как дома», работая за новой для них ОС. Быстрой адаптации будет способствовать и наличие WINE, дающего возможность запуска привычных Windows-программ.

Linuxfx, как и Windows 10, можно запустить практически на любом компьютере. Системные требования версии для десктопов включают наличие в ПК хотя бы 2 ГБ оперативной памяти и всего лишь двух вычислительных ядер в составе центрального процессора.

Как китайцы Windows XP клонировали

В мире существует еще как минимум один пример интеграции графической оболочки Microsoft в состав дистрибутива Windows – национальная операционная система Китая NeoKylin. Но, если в Linuxfx используется интерфейс современной Windows 10, то NeoKylin, показанной в 2015 г., имеет дизайн, схожий с Windows XP образца 2001 г.

Как сообщал CNews, NeoKylin разработана компанией China Standard Software, и за ее основу взят дистрибутив Fedora.

NeoKylin тоже поставляется с небольшим количеством приложений: веб-браузером Firefox, музыкальным плеером, редактором изображений GIMP, калькулятором и т. д. В системе даже есть игра, напоминающая «Сапера» в Windows. Однако, в отличие от Linuxfx, установка сторонних приложений в NeoKylin не поддерживается.

Оцените статью