Зачем нужна операционная система? плюсы и минусы 3-х основных осей

Linux

Linux (произносится Линукс) — семейство open source операционных систем, что означает открытый программный код, они могут быть изменены и доработаны, а распространяются бесплатно с готовым набором программ для пользования. Это очень отличается от закрытого программного обеспечения, такого как Windows и macOS, которое могут изменить только в компании разработчика. Очевидно, что преимущества Linux, в том, что она бесплатна и есть много разных дистрибутивов* (или версии). Каждый дистрибутив имеет разные стили, и самым популярным из них относятся к Ubuntu, Mint, и Fedora.

Дистрибутив – это набор, комплекс программ собранный для выполнения определённых задач пользователя, объединены в единую систему установки и обновления.

Linux носит своё название в честь Линус Торвальдс (Linus Torvalds), который создал ядро Linux в 1991 году. Ядро — это компьютерный код, который образует центральную часть операционной системы.

И снова прибегнем к статистике, доля Linux менее 1% на рынке операционных систем. Однако не стоит забывать, что операционные системы на базе Linux для серверов являются лидерами среди конкурентов.

Мы поговорили о наиболее распространённых операционных системах, которые предназначены для настольных компьютеров и ноутбуков. А теперь немного поговорим о мобильных версиях ОС.

Операционная система Windows

Теперь же перейдем к знаменитой операционной системе “Windows”. Трудно найти компьютер, который не будет с ней совместим. Подавляющее большинство (около 95%) пользователей имеют на своих компьютерах именно эту управляющую систему. Возникает логичный вопрос: почему?

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

Уже два приложения выполняются одновременно: текстовый редактор и медиаплеер. А если захочется отдохнуть и разложить, к примеру, пасьянс? Любимую «косынку» или «паук»? И вот уже третье приложение активировано. Мы даже не задумываемся о том, как это возможно, а меж тем данная особенность присуща именно для операционки “Виндоус”.

А теперь вспомните, как вы копировали данные из одной программы и вставляли в другую. Например, информацию из таблиц в текст и наоборот. А копирование текста с какого-нибудь сайта в документ на компьютере посредством выделения нужного мышкой? Все эти обмены данными между различными приложениями являются заслугой ОС “Windows” и ее большим преимуществом.

Сейчас трудно себе это представить, но в самом начале пути «Окна» была не такой уж популярной операционной системой. До версии 3.0 она выглядела очень бледно. Но разработчики верили в успех и своего, как мы видим, добились. Чего стоит хотя бы успех “Windows 98”! А описывать все особенности современной системы от “Microsoft” можно очень долго. Мне уже посчастливилось поработать в среде “Windows 8”. Что я могу Вам сказать? Как сказал К. Э. Циолковский: «Невозможное сегодня, станет возможным завтра». Похоже, что «завтра» уже наступило. Но это тема для отдельного разговора.

Какие бывают?

Основные виды операционных систем в зависимости от разработчика:

  • Windows – «детище» компании M На момент написания этой статьи самой свежей версией является Виндовс 10, но по популярности она все еще уступает «семерке»;
  • Mac OS X – продукт от Apple, отличающийся стабильной работой, минимальными требованиями к производительности оборудования;
  • Linux – распространяется бесплатно, исходный код в свободном доступе, что позволяет любому пользователю вносить изменения, улучшения;
  • Мобильные платформы: Android, iOS, Windows Mobile, Bada, Symbian и другие. На самом деле их очень много, но большинство уже успели отойти в прошлое, оставив на вершине лишь парочку «гигантов».

Каждая «операционка» имеет свой уникальный GUI – графический интерфейс, отличающий её от других. До внедрения этой «оболочки», людям приходилось работать в мрачной среде командной строки. Ох и суровые были времена…

Автор рекомендует:

  • Секреты и фишки Виндовс 10
  • Как проверить и исправить ошибки жесткого диска
  • ТОП лучших программ для просмотра ТВ на компе

Теперь рассмотрим современные операционные программы для компьютеров.

Ubuntu

Ubuntu — операционная система на базе Linux, которая поставляется со всеми необходимыми инструментами. Она отлично подходит для разнообразных общественных организаций, школ и домашнего использования. Операционная система поддерживается Canonical — глобальным разработчиком программного обеспечения, который сыскал славу на распространении Ubuntu. Она абсолютно бесплатная, и только это должно стать мотивирующим фактором для того, чтобы самостоятельно попробовать ее. Все-таки далеко не все готовы тратиться на программное обеспечение в любом возможном виде.

Особенности:

  • это операционная система с открытым исходным кодом, которую можно абсолютно бесплатно скачать, использовать без ограничений и свободно устанавливать любым пользователям;
  • в Ubuntu встроен брандмауэр, а также программное обеспечение для защиты от вирусов — это делает ее достаточно безопасной;
  • проект развивается уже несколько лет, за которые выходили регулярные обновления и необходимые исправления;
  • Ubuntu полностью переведена на 50 различных языков;
  • операционная система совместима со всеми новейшими ноутбуками, настольными компьютерами и устройствами с сенсорными экранами.

Вывод: Ubuntu — отличный вариант для тех, кто не хочет тратиться. Это свободная операционная система с открытым кодом, что делает ее достаточно привлекательной для самых разных пользователей. Она регулярно обновляется, отличается удобным интерфейсом и высоким уровнем безопасности.

Фаза 3: Няшный Си

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

Установка кросс-компилятора

Нам нужно установить GNU-тулчейн для под архитектуру (компилятор gcc и его компанию вроде objcopy).

Под macOS

Для начала стоит установить менеджер пакетов homebrew. Если уже установлен, то эту часть можно пропустить.

  1. Установите инструменты Xcode для командной строки. Появится диалоговое окно. Когда появится — нажмите «Установить», «Продолжить» или что там обычно.
  2. Запустите скрипт установки Homebrew. Оный проведет вас через остальную часть процесса установки.

Теперь установим тулчейн aarch64-none-elf используя homebrew.

Проверим, всё ли правильно установлено:

Под Linux

  1. Загрузим и распакуем aarch64-none-elf-linux-x64.tar.gz. После этого переместим в :
  2. Добавим к переменной окружения . Как именно — это зависит от вашего конкретного диструбутива Linux. В большинстве случаев следует добавить в следующее:
  3. Проверяем, всё ли нормально. В качетве вывода мы должны получить версию gcc и всё такое.

Можно собрать самому из исходников, если такое желание возникнет. Подробнее вот тут.

Теперь немного о железе

Взаимодействие подавляющего большинства современных аппаратных устройств с ПО осуществляется через отображение его в память Memory-mapped I/O. Суть такова: с устройствами можно общаться так, будто это просто некая часть памяти. При этом предоставляется спецификация о том, что будет происходить при записи или чтении определённых адресов в памяти. Адреса обычно разделяются на кусочки по 32 или 64 бита, которые называют регистрами. Регистры могут быть доступны только для чтения из них, для записи или для того и другого сразу.

Как мы узнаем, какие регистры и для чего использовать, и где в памяти они находятся? Производители различных устройств пишут документацию на эти самые устройства. Обычно их зовут даташитами (data sheet), мануалами (device manual), ну или просто документацией. Нет какого либо общего широко распространённого формата для документирования устройств. Иногда документация может быть недостаточной или её может не быть вообще. Умение читать и понимать аппаратную документацию это вполне себе полезный скилл и в некотором роде даже искусство.

Интерфейс GPIO в памяти

Документацию на многие периферийные устройства, которые есть у Rasbperry Pi, можно найти в документе BCM2837 ARM Peripherals Manual. Про GPIO можно почитать на 89 странице.

Для нашей задачи нам достаточно следующих регистров:

имя адрес описание размер чтение/запись
GPFSEL1 0x7E200004 GPIO Function Select 1 32 бита и то и другое
GPSET0 0x7E20001C GPIO Pin Output Set 0 32 бита только запись
GPCLR0 0x7E200028 GPIO Pin Output Clear 0 32 бита только запись

Тащемто это непосредственно скопировано прямо из документации со страницы 90.

Теперь почитайте документацию для регистра на страницах 91 и 92. Мы записываем в этот регистр для настройки пинов в качестве выходных или входных. Какое должно быть значение в каждом поле регистра для настройки вывода №16 GPIO, чтоб он стал выходом?

Теперь опять читаем документацию на странице 95. Про регистры и . Мы записываем в регистр для включения контакта. А в для выключения. Какое значение нам требуется записать в эти регистры для включения/выключения вывода 16?

Написание кода

В каталоге репы есть заготовка кода для построения двоичного файла для малинки. Пока обойдёмся без объяснения того, зачем нужны , и . Вместо этого сосредоточимся на . В нём вы обнаружите, что уже указаны адреса всех трёх необходимых нам регистров в верхней части. Кроме этого там есть парочка функций, которыми можно создать временную задержку. Задача состоит в том, чтоб дополнить функцию так, чтобы вывод №16 GPIO был настроен как выход, а затем то включался, то выключался для мигания светодиодом.

Когда код будет готов — его следует протестировать. Для начала скомпилируйте его, запустив , находясь в директории . Если всё хорошо и нет ошибок, то создастся файлик . Переименовываем его в , копируем на microSD-карточку и запускаем это всё на малинке. Если уже есть работающий — можно переходить к следующей фазе.

os.walk()

Метод os.walk() дает нам возможность для итерации на корневом уровне пути. Это значит, что мы можем назначить путь к этой функции и получить доступ ко всем её подкаталогам и файлам. Используем одну из папок Пайтон, при помощи которой мы можем проверить данную функцию. Мы используем C:\Python27\Tools

Python

import os

path = r’C:\Python27\Tools’

for root, dirs, files in os.walk(path):
print(root)

1
2
3
4
5
6

importos

path=r’C:\Python27\Tools’

forroot,dirs,files inos.walk(path)

print(root)

Результат работы:

Python

C:\Python27\Tools
C:\Python27\Tools\i18n
C:\Python27\Tools\pynche
C:\Python27\Tools\pynche\X
C:\Python27\Tools\Scripts
C:\Python27\Tools\versioncheck
C:\Python27\Tools\webchecker

1
2
3
4
5
6
7

C:\Python27\Tools
C:\Python27\Tools\i18n
C:\Python27\Tools\pynche
C:\Python27\Tools\pynche\X
C:\Python27\Tools\Scripts
C:\Python27\Tools\versioncheck
C:\Python27\Tools\webchecker

Мы можем отобразить и весь список каталогов и файлов.

Python

import os

for root, dirs, files in os.walk(path):
print(root)
for _dir in dirs:
print(_dir)

for _file in files:
print(_file)

1
2
3
4
5
6
7
8
9

importos

forroot,dirs,files inos.walk(path)

print(root)

for_dir indirs

print(_dir)

for_file infiles

print(_file)

Эта часть кода покажет нам весьма большой объем, так что не будем демонстрировать всю выдачу, вы можете ознакомиться с содержимым сами. Поздравляем, теперь мы готовы к тому, чтобы научиться работать с путями!

Free BSD

Бесплатная операционная система с открытым исходным кодом на базе UNIX. Она совместима с различными платформами, ориентирована на скорость и стабильность работы. Наиболее захватывающая часть истории платформы — ее создание общими силами сообщества в Калифорнийском университете.

Особенности:

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

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

Как работает?

Все начинается с загрузки ОС. Как только Вы нажали кнопку «Power» на корпусе системного блока или ноутбука, процесс пошел! В зависимости от производительности, процедура запуска может длиться от нескольких секунд до пары минут. На это влияет не только аппаратная составляющая (скорость диска HDD / SSD, процессор, ОЗУ), но и количество процессов в автозагрузке.

В момент запуска происходит следующее:

  • Проверяется работоспособность системных программ и сторонних приложений, которые загружаются вместе с ОС;
  • Осуществляется поиск новых устройств;
  • Отображается графический интерфейс (для Виндовс – это «Проводник»).

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

MICROSOFT WINDOWS

Графические оболочки Widows 1.0, Widows 2.0, Widows 3.0, Widows 3.1 и Widows 3.11 запускались под управлением MS DOS, то есть не были самостоятельными операционными системами. Но поскольку с появлением Windows открылись новые возможности, Windows называют не оболочкой, а средой. Среда Windows характеризуется следующими особенностями, отличающими ее от других программ-оболочек:

– Многозадачность. Есть возможность одновременно запускать несколько программ.

– Единый программный интерфейс. Взаимодействие между программами, написанными для Windows, организовано так, что есть возможность создавать данные в одних программах и переносить их в другие программы.

– Единый интерфейс пользователя. Разобравшись с тем, как работает одна программа, написанная для Windows, нетрудно разобраться с другой. Чем больше программ изучить, тем проще изучение последующей программы.

– Графический интерфейс пользователя. Файлы программ и данных отображаются на экране в виде значков. С файлами работают с помощью мыши.

– Единый аппаратно-программный интерфейс. Среда Windows обеспечивала совместимость разнообразного оборудования и программ. Изготовители оборудования не заботились о том, как « угадать», к какими программами их устройствам предстоит работать, они добивались только работы с Windows, а дальше Windows обеспечивала работу устройств. Точно также изготовители программ могли более не беспокоиться о работе с неизвестным им оборудованием. Их задача свелась к тому, чтобы обеспечить взаимодействие с Windows.

На смену операционной системе DOS с ее графическими оболочками Windows 3.1 и Windows 3.11 пришли полноценные операционные системы семейства MS Windows (сначала Windows 95, затем Windows 98, Windows 2000, Windows XP). В отличие от Windows 3.1 и Windows 3.11, они запускаются автоматически после включения компьютера (в том случае, если установлена только одна эта система).

В MS Windows для хранения файлов используется модификация файловой системы FAT – VFAT. В ней длина имен файлов и каталогов может достигать 256 символов.

В операционной системе Windows при работе с окнами и приложениями широко применяется манипулятор мышь. Обычно мышь используется для выделения фрагментов текста или графических объектов, установки и снятия флажков, выбора команд меню, кнопок панелей инструментов, манипулирования элементами управления в диалогах, «прокручивания» документов в окнах.

В Windows активно используется и правая кнопка мыши. Поместив указатель мыши на объекте и сделав щелчок правой кнопкой мыши, можно раскрыть так называемое «контекстное меню», содержащее наиболее употребительные команды, применимые к данному объекту.

Ярлыки обеспечивают доступ к программе или документу из различных мест, не создавая при этом нескольких физических копий файла. На рабочий стол можно поместить не только пиктограммы (значки) приложений и отдельных документов, но и папок. Папки – еще одно название каталогов (directories).

Существенным нововведением в Windows 95 стала Панель задач (Taskbar). Несмотря на небольшие функциональные возможности, она делает наглядным механизм многозадачности и намного ускоряет процесс переключения между приложениями по сравнению с предыдущими версиями Windows. Внешне панель задач представляет полосу, обычно располагающуюся в нижней части экрана, на которой размещены кнопки приложений и кнопка Пуск (Start). В правой ее части обычно присутствуют часы и небольшие пиктограммы программ, активных в данный момент.

Рабочий стол Windows сконструирован так, чтобы максимально облегчить работу пользователя-новичка и в то же время предоставить максимальные возможности его настройки в соответствии с конкретными нуждами опытных пользователей.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector