Что такое операционная система – отличие от базовой прошивки
Операционная система – это основное программное обеспечение, которое управляет всем оборудованием и другим программным обеспечением на компьютере.
Что делает операционная система
Операционная система является основным набором программного обеспечения на устройстве, которое «держит всё вместе». Операционные системы взаимодействуют с аппаратным обеспечением устройства. Они обрабатывают всё, от клавиатуры и мыши до Wi-Fi, устройств хранения и дисплея. Другими словами, операционная система обрабатывает команды устройств ввода и вывода. Операционные системы используют драйверы устройств, написанные создателями оборудования для связи со своими устройствами.
Операционные системы также включают в себя много программного обеспечения – такого как системы общих служб, библиотеки и интерфейсы прикладного программирования (API), разработчики могут использовать их для написания программ, которые работают на операционной системе.
Операционная система находится между запущенными приложениями и оборудованием, используя драйверы оборудования в качестве интерфейса между ними. Например, когда приложение хочет напечатать что-то, оно передает эту задачу операционной системе. Операционная система отправляет инструкции на принтер, используя драйверы принтера для отправки правильных сигналов. Приложение, которое печатает, не должно заботиться о том, какой принтер у Вас или понимать, как он работает. Эти детали обрабатывает операционная система.
Операционная система также реализует многозадачность, распределяя аппаратные ресурсы между несколькими запущенными программами. Операционная система определяет, какие процессы выполняются, и распределяет их между разными процессорами если у вас компьютер с несколькими процессорами или ядрами, выполняя несколько процессов параллельно. Она также управляет внутренней памятью, распределяя память между запущенными приложениями.
Большинство программных приложений написаны для конкретных операционных систем. Например, когда вы запускаете Minecraft, приложению не нужно точно знать, как работает каждый отдельный аппаратный компонент. Minecraft использует различные функции операционной системы, и операционная система транслирует их в форме низкоуровневых аппаратных инструкций.
Операционные системы не только для ПК
Когда мы говорим «компьютеры», мы имеем в виду не только традиционные настольные ПК и ноутбуки. Ваш смартфон – это тоже компьютер, как и планшеты, умные телевизоры, игровые консоли, умные часы и маршрутизаторы Wi-Fi. Даже Amazon Echo и Google Home работают под управлением операционной системы.
Знакомые настольные операционные системы включают Microsoft Windows, Apple macOS, Chrome OS от Google и Linux. Доминирующими операционными системами смартфонов являются iOS от Apple и Android от Google.
На других устройствах, например на маршрутизаторе Wi-Fi, могут работать «встроенные операционные системы». Это специализированные операционные системы с меньшим количеством функций, чем типичная операционная система, разработанные специально для одной задачи – например, запуск маршрутизатора Wi-Fi, обеспечение GPS-навигации или работа с банкоматом.
Где заканчивается OS и начинается программа
Операционные системы также включают другое программное обеспечение, в том числе пользовательский интерфейс, который позволяет людям взаимодействовать с устройством. Это может быть настольный интерфейс на ПК, сенсорный интерфейс на телефоне или голосовой интерфейс на устройстве Digital assistant.
Грань между операционной системой и программой иногда может быть немного размытой. Нет четкого, официального определения операционной системы.
Например, в Windows приложение проводника файлов (или проводника Windows) является одновременно неотъемлемой частью операционной системы Windows – оно обрабатывает интерфейс рабочего стола.
Ядро операционной системы
На низком уровне располагается ядро операционной системы. Это одна из первых «программ», загружаемых при запуске операционной системы. Она обрабатывает выделение памяти, преобразование программных функций в инструкции для процессора вашего компьютера, а также имеет дело с входом и выходом аппаратных устройств.
Ядро операционной системы обычно запускается в изолированной области, чтобы предотвратить его подделку другим программным обеспечением. Ядро операционной системы очень важно, но является лишь одной из частей операционной системы.
Разделение здесь тоже не очень четкое. Например, Linux – сам по себе, ядро. Однако, Linux часто называют операционной системой. Android также называется операционной системой, но он построен вокруг ядра Linux. Дистрибутивы Linux, например Ubuntu, основываются на ядре Linux и добавляются другое программное обеспечение вокруг него. Их также называют операционными системами.
В чем разница между прошивкой и ОС
Практически все устройства имеют «прошивку» – это низкоуровневое программное обеспечение, которое, как правило, запрограммировано непосредственно в память устройства. Прошивка предназначенного только для базовых операций.
Когда современный компьютер загружается, он загружает микропрограмму UEFI с материнской платы. Это микропрограммное обеспечение низкого уровня, которое быстро инициализирует аппаратные средства вашего компьютера. Затем загружается операционная система с твердотельного диска или жесткого диска компьютера. Этот твердотельный диск или жесткий диск имеет свое собственное внутреннее микропрограммное обеспечение, которое управляет процессом сохранения данных на физических участках диска.
Линия между прошивкой и операционной системой тоже может быть немного размытой. Например, операционная система для iPhone и iPad от Apple под названием iOS часто называется «прошивкой». Операционная система PlayStation 4 также официально называется прошивкой.
Среднестатистическому человеку не нужно точно понимать, что такое операционная система. Однако, полезно знать, какую операционную систему Вы используете, какое программное и аппаратное обеспечение совместимо с вашим устройством.
Создана операционная система для постапокалипсиса. Она запустится даже на калькуляторе
| ПоделитьсяОперационная система Collapse OS, разработанная Вирджилом Дупрасом, способна работать на микроконтроллерах Z80. Их широкое распространение за счет использования в самой разной технике, по мнению автора проекта, позволит людям, пережившим апокалипсис (коллапс, как его называет Дупрас), собирать ПК на их основе, и работать на них посредством Collapse OS. Система наделена базовыми функциями, в том числе работой с внешними накопителями и редактированием текстовых файлов, и Дупрас призывает сторонних разработчиков присоединиться к ее дальнейшему развитию.
Постапокалиптическая ОС
Разработчик программного обеспечения
Для распространения Collapse OS Дупрас создал сайт collapseos.org, на котором привел объяснение, зачем такая ОС вообще нужна. По мнению разработчика, в обозримом будущем, примерно к 2030 г., мировые цепочки поставок себя исчерпают и перестанут быть эффективными, а то и вовсе разорвутся. Это приведет сперва к резкому сокращению, а затем и вовсе к прекращению производства микроэлектроники, и в итоге людям придется искать компоненты для новых ПК в буквальном смысле в горах мусора.
Системные требования ОС на 10 октября 2019 г. опубликованы не были. Разработчик также не уточнил, на каком ядре базируется Collapse OS.
Главное преимущество ОС
Вирджил Дупрас подчеркнул, что главной проблемой постапокалиптических пользователей его ОС может стать поиск микроконтроллеров. Да, их можно раздобыть на материнских платах компьютеров и других устройств, но перепрограммировать их под новые нужды уже не получится. «Через несколько десятилетий компьютеры придут в такое состояние, что уже не будут подлежать ремонту. Люди больше не смогут программировать микроконтроллеры», — отметил Дупрас на посвященном его ОС сайте.Collapse OS запустится на ПК, собранных из мусора
В этом, по словам разработчика, и заключается главная особенность Collapse OS, которая позволит ей пережить апокалипсис. Система может работать даже на восьмибитных микропроцессорах Z80, использующихся в сравнительно простых с точки зрения электроники устройствах. Их можно обнаружить в кассовых аппаратах и калькуляторах.
Дупрас специально готовил Collapse OS к работе на этих микропроцессорах – он уверен, что именно они, ввиду широкого их распространения, будут чаще всего попадаться «копателям», в отличие от 16- и 32-битных микросхем.
Что умеет Collapse OS
Проект Collapse OS еще находится в разработке, но на момент публикации материала Вирджил Дупрас интегрировал в нее массу базовых функций. За 10 лет до предполагаемой Дупрасом даты апокалипсиса его система научилась редактировать текстовые файлы, читать данные с внешнего накопителя и копировать информацию на носители, воспроизводить себя и заодно компилировать исходные файлы на языке ассемблера для целого спектра центральных процессоров и микроконтроллеров. Также система поддерживает ряд интерфейсов и привычное устройство ввода – клавиатуру. Разработчиком заявлена поддержка карт памяти стандарта SD.
Работоспособность системы
Collapse OS находится на одной из ранних стадий разработки, но, по заверениям Дупраса, она вполне может запускаться на самосборных ПК самого базового уровня. Актуальную версию своей СО он запустил на компьютере домашней сборки на базе микроконтроллеров Z80 под названием RC2014.
Smart-системы стали драйвером продажи недвижимости
ИнтеграцияДевелопер отметил, что в теории Collapse OS должна запускаться даже на игровых приставках. В качестве примера он привел классическую консоль четвертого поколения Sega Genesis, выпущенную в 1988 г. и известную в России под названием Mega Drive. Управлять системой, запущенной на этой приставке, можно через комплектный джойстик или клавиатуру со специальным переходником.
Дальнейшие планы и поиск единомышленников
Базовыми функциями Дупрас ограничиваться не станет, так как его цель заключается в создании полноценной многогранной ОС, которой должно быть удобно пользоваться. Он разместил открытый исходный код на портале Github (принадлежит Microsoft) и призвал сторонних разработчиков присоединиться к работе над его проектом.
«Я думаю, что смогу закончить разработку сам, но мне кажется, что было бы веселее работать с парой других специалистов. Участие в проекте требует очень специфического набора склонностей (вера в апокалипсис) и навыков (электроника и сборка z80). Я думаю, на свете есть не очень много людей, соответствующих этим требованиям, но если таковые все же есть, я бы хотел их найти», – сказал Вирджил Дупрас.
Согласно «дорожной карте» разработки, в планы Дупраса на ближайшее будущее входит запуск Collapse OS на программируемых графических калькуляторах TI-83+ (выпущен в 1999 г.) TI-84+ (2004 г.), разработанных компанией Texas Instruments. Следующим шагом станет запуск системы на настольном микрокомпьютере TRS-80 model 1 образца начала 80 годов XX века. Также в систему будет добавлена поддержка широкого спектра LCD-дисплеев и панелей на электронных чернилах (Е Ink) и различных дискет, включая 3,5-дюймовые.
Какая ОС лучше |Какую операционную систему поставить на компьютер
Операционная система — основная среда деятельности компьютера. И если раньше все ограничивалось простейшими текстовыми системами, то в современном мире существует огромное количество ОС, критикуемых одними и тепло принимаемых другими пользователями. И хоть однозначного ответа на вопрос «какую операционную систему лучше поставить на компьютер» не существует, мы все же попробуем разобраться в этом.
Какие бывают операционные системы
Операционные системы компьютера сегодня насчитывают огромное количество видов — не говоря о неактуальных, давно неиспользуемых. Попробуем описать характеристики различных операционных систем:
Windows OS от компании Microsoft. Большая часть пользователей не признает ничего иного, кроме привычной WinХ. За последние несколько лет корпорация значительно ускорила темпы выпуска новых версий. Если не учитывать неактуальные Windows от 1.0 до Millenium, то мы имеем следующие активно используемые системы:
- Windows XР. Стабильная и надежная система. Многие пользователи до сих пор отдают предпочтение именно ей, однако Microsoft официально прекратила поддержку этой ОС и больше не гарантирует корректной работы программ в ее среде.
- Windows 7. Прямой потомок «Vista», неудачного эксперимента, вышедшего вслед за XP. Несмотря на ошибки в ранней версии, является самой популярной операционной системой на сегодняшний день.
- Windows 8. Красиво, но непрактично оформленная по мнению большинства пользователей ОС. Создателей часто обвиняют в плагиате ОС Android. Также часто считается неудачным экспериментом.
- Linux. Преимущественно бесплатная операционная система, свободно разрабатываемая всеми желающими. Насчитывает множество вариаций, так что каждая сборка претендует на оригинальную, абсолютно отличную от других ОС. Среди них Debian, RedHat, Slackware и множество других разработок. Отличаются стабильностью работы, однако требуют от пользователей значительно более глубоких познаний в компьютерной сфере, чем ОС семейства Windows. После детальной настройки у вас может появиться полностью отлаженная ОС, работающая без ошибок.
- Mac-системы. Apple производит дорогую продукцию, позиционируемую в классе люкс, и программное обеспечение исключением не является. Весь софт для ОС этого семейства специализирован и не работает на других платформах. Платным при этом является практически каждое приложение, инструмент или дополнение.
Какую ОС выбрать?
Итак, какая ОС лучше, какую ОС выбрать?
Можно с уверенностью сказать, что универсальную, подходящую под самые широкие требования операционную систему еще не создали. Если вы только начинаете пользоваться компьютером, из вышеперечисленных ОС лучше остановить выбор на Windows. Помимо относительной простоты в использовании это — лучшая операционная система для игр. На Windows проще обучаться за счет ее интуитивно понятного интерфейса. Впоследствии осваивать другие системы будет несколько легче.
Windows уязвима для различных вирусов. Обеспечение безопасности требует времени и сил, не всегда полностью возможно перекрыть доступ в систему вредоносным программам. Однако следует признать, что именно для Windows сегодня пишется большинство программ. И, несмотря на все недостатки, она остается основной системой, используемой не только на домашних, но и на рабочих компьютерах. Если ваши потребности в компьютере не ограничиваются интернетом, музыкой и фотографиями, оптимальным выбором будет именно Windows.
И еще пара советов. Решая, какая операционная система лучше для компьютера, не стоит забывать, что самый надежный способ проверить это — экспериментировать. Не забывайте сохранять необходимые данные перед переустановкой операционной системы и очисткой диска, а также создавать точки восстановления.
Установка операционных систем (ОС) — База полезных знаний
Первое, что следует сделать после сборки рабочего ПК — установить операционную систему (ОС). Её можно выбрать из нескольких имеющихся в Интернете или взять из своего хранилища на компьютере.
Первый, на сегодняшний день самый выбираемый вариант — установить Microsoft Windows, текущая версия Windows 10. Другой вариант — установить дистрибутив GNU/Linux (свободная операционная система). Кроме очень известной Linux, есть и другие бесплатные операционные системы, например, BSD. Обратите внимание, что вы можете установить на свой ПК, в так называемую multiboot установку, несколько операционных систем.
Установка ОС
Если вы собираетесь устанавливать несколько ОС, сначала установите Windows. Проблема в том, что Windows стирает необходимое для запуска GNU/Linux программное обеспечение. Если вы установите Windows до других систем, проблем с их загрузкой не будет.
Выбор операционной системы Microsoft Windows, GNU/Linux или какой-то другой, в значительной степени зависит от задач и запускаемого программного обеспечения. Проще говоря, сможете ли вы выполнять свои повседневные задачи с программным обеспечением соответствующей операционной системы. Microsoft Windows лучше с точки зрения доступности программного обеспечения, совместимости оборудования и поддержки, но GNU/Linux выигрывает с точки зрения стабильности, способности работать на более старом оборудовании и стоимости. Обе системы имеют большой выбор программного обеспечения, но перед установкой любой операционной системы определите свои потребности.
Обратите внимание, что после установки Windows, вы всегда позже сможете установить GNU/Linux и, наоборот, если вы сначала установите GNU/Linux, установить потом Windows, не затерев загрузчик Linux — нельзя.
Установка ОС Windows
Установка Windows относительно проста. Нажмите кнопку питания на передней панели ПК, поместите в оптический дисковод компакт-диск (можно использовать USB носитель) и следуйте инструкциям на экране монитора (возможно, вам потребуется перезапуск компьютера). Если вы устанавливаете только Windows, просто отдайте под неё весь жёсткий диск. Для установки Windows быстрее и эффективнее работает файловая система NTFS.
Многие люди считают, что для операционной системы и данных, полезно создать отдельные разделы. То есть, если с операционной системой что-то пойдёт не так, раздел можно отформатировать и переустановить операционную систему без потери данных.
Если вы устанавливаете Windows на SATA или RAID-диск, в некоторых случаях, для получения доступа контроллера RAID к жёсткому диску, вам придётся предоставить установщику Windows драйверы. Чтобы сделать это, во время установки Windows, дождитесь появления в нижней части экрана надписи «Нажмите F6 для установки каких-либо сторонних SCSI или RAID-драйверов.» и нажмите эту клавишу. Затем, вы увидите экран, на котором будет написано: «Программа установки не может определить тип установленных в вашей системе одного или нескольких устройств массового хранения, укажите адаптер вручную». На этом экране, чтобы указать «Дополнительное устройство» нажмите «S», появится другой экран с просьбой вставить диск с драйверами, затем экран с просьбой выбрать из содержащегося списка соответствующий драйвер.
Установка Windows в двойной загрузке с GNU/Linux
Если вы задумали двойную загрузку, рассмотрите некоторые дополнительные факторы. Используемая Windows как файловая система по умолчанию NTFS, не очень хорошо поддерживается другими ОС. Правда NFTS-3g уже достигла приемлемого уровня, и пользователи, при обычном использовании последних версий драйвера, довольно редко сообщают о повреждении или потере данных, давая пользователям GNU/Linux довольно надёжный способ чтения и записи разделов NTFS. Ранее безопасной была только возможность чтения, хотя, возможно, и сейчас это зависит от дистрибутива. Однако NTFS имеет целый ряд преимуществ перед FAT32, хотя бы в том, что не имеет предельного размера файла в 4 ГБ. Аналогично Windows не поддерживает любой из стандартных файловых систем GNU/Linux. То есть, запустив Linux, вы можете просмотреть или скопировать находящиеся на разделах Windows файлы. Сделать то же самое из под Windows с файлами на разделах Linux вы не сможете.
Когда будете размечать жёсткий диск, не забудьте оставить свободное пространство для GNU/Linux (хотя бы одна треть вашего общего дискового пространства). Возможно, вам понадобится запасной раздел FAT32, на котором можно обмениваться документами между Windows и GNU/Linux. При необходимости измените таблицу разделов — может вам не требуется столько места для Windows или нужно больше на общем FAT32. Но вы должны убедиться, что оставляете для вашей установки Windows 10 по крайней мере 20 ГБ (версия для 32 разрядных устройств занимает около 16 ГБ), и всегда разумно оставить немного больше, допуская любые возможные изменения.
Установка ОС GNU/Linux
Основная, возникающая при установке GNU/Linux, проблема — выбор дистрибутива. Из многих вариантов GNU/Linux обычно рекомендуются Ubuntu, Fedora и SuSE, поскольку это коммерческие проекты, они регулярно обновляется и совместимы с широким спектром оборудования:
• Fedora. Используется как де-факто стандартный GNU/Linux.
• SuSE.
• Ubuntu. На сегодняшний день один из самых популярных как простой в использовании настольный GNU/Linux.
Некоторые варианты GNU/Linux могут поддерживать совсем устаревшее аппаратное обеспечение. Если у вас непонятное или старое оборудование, для обеспечения совместимости вы можете попробовать различные варианты GNU/Linux.
Например, Ubuntu. Это вариант Debian и в настоящее время является стандартом для простых в использовании дистрибутивов GNU/Linux. Можно бесплатно загрузить iso образ или купить установочный DVD (содержащий установочный DVD и LiveCD) с их вебсайта. Большинство дистрибутивов доступны эти двумя способами. Iso — это специальный формат файла, который используется вашим программным обеспечением для записи компакт-дисков, в данном случае копии Ubuntu GNU/Linux.
Установка системы GNU/Linux не сложнее установки Windows. Нажмите кнопку на передней части компьютера, поместите компакт-диск в оптический дисковод и следуйте инструкциям на экране. По умолчанию, установка Ubuntu сотрёт все файлы на жёстком диске и потребует 5 ГБ для операционной системы. Если вы хотите настроить систему, внимательно следуйте инструкциям на экране. Версия LiveCD не стирает ваш жёсткий диск и предназначена исключительно для тестирования Ubuntu GNU/Linux.
При установке дистрибутива GNU/Linux, вас могут попросить выбрать рабочий стол, например, KDE или Gnome, или установить vi или Emacs. Если что-то не знакомо, быстрый Google вам в помощь. Как и в этих двух примерах, всё зависит от предпочтений, но любой выбор будет работать.
Операционные системы | Основы командной строки
Задолго до появления Windows, в 70-х годах двадцатого века на свет появилась операционная система Unix, предназначенная для работы на мейнфреймах. Изначальным названием системы было UNICS (Uniplexed Information and Computing Service), но в итоге её стали называть Unix. В те времена не существовало персональных компьютеров. Компьютеры отождествлялись с мейнфреймами — большими машинами, занимающими целые этажи зданий.
Кстати, именно для написания Unix создавался язык Си
Один такой компьютер мог одновременно использоваться множеством людей, что накладывало определённые требования на операционную систему, управляющую этой машиной. В первую очередь это касается многопользовательского режима. Unix позволяла подключаться к компьютеру через терминалы, специальные устройства, которые служили исключительно средством ввода (клавиатура) и вывода (монитор) информации, а вся обработка выполнялась уже непосредственно на сервере.
Unix оказалась очень удачной операционной системой, но была платной и закрытой (нельзя посмотреть исходный код). На её основе создавались новые системы, которые со временем теряли обратную совместимость. Другими словами, приходилось писать программу под каждую операционную систему, которую необходимо поддерживать. Такая ситуация усложняла и удорожала жизнь всем настолько сильно, что был принят стандарт POSIX (Portable Operating System Interface for UNIX). Сейчас это не один стандарт, а целое семейство стандартов, описывающих работу ключевых компонентов операционной системы и способа взаимодействия с ними из программ, написанных на Си.
В те же времена начали активно развиваться сети и сначала появились прообразы интернета, а затем и сам интернет. Компьютеры становились меньше, а серверов — всё больше. В 1991 году студент Линус Торвальдс решил написать свою собственную свободную операционную систему, которая совместима со стандартом POSIX. Благодаря интернету, Линус смог собрать большое сообщество разработчиков, которые довольно быстро выпустили рабочую операционную систему под названием Linux и, самое главное, выложили в открытый доступ её исходный код. С тех пор популярность Linux для серверного окружения быстро росла.
Но сам Linux — это только ядро операционной системы, оно непригодно для использования без сопутствующих программ. К тому моменту, когда Линус начал свою разработку, уже существовал проект GNU (рекурсивный акроним — GNU’s Not UNIX), основанный Ричардом Столлманом, в рамках которого были разработаны и постоянно развивались свободные программы, составляющие основной инструментарий для разработки программ на языке Си: текстовый редактор Emacs, компилятор языка Си gcc (GNU Compiler Collection или набор компиляторов GNU), командная оболочка bash (bourne again shell или «возрождённый» shell), библиотека важнейших функций для программ на Си libc. Все эти программы были написаны для операционных систем, похожих на Unix. Поэтому в них использовались стандартные для UNIX системные вызовы — POSIX. Благодаря этому Linux сразу начал поставляться с GNU-утилитами, например, архиваторами или командной оболочкой bash, которую мы начнём изучать в этом курсе. Удивительный факт для людей, знакомых только с Windows, состоит в том, что Linux (как и Unix) не имеет графической оболочки. Это не значит, что её нельзя добавить. Можно! Более того, существует много разных опциональных графических оболочек.
Сейчас Linux не используется в чистом виде. Вместо этого конечные пользователи имеют дело с дистрибутивами. Дистрибутив, кроме Linux и GNU-программ, включает в себя утилиты для установки и настройки самого Linux, поддержку регулярного обновления самого ядра и его окружения. В остальном внутри работает тот же Linux. Количество дистрибутивов огромно, но некоторые из них особо популярны, одни делаются энтузиастами, за другими стоят большие компании. Самыми популярными дистрибутивами являются Ubuntu и её разновидности: например, Ubuntu Server оптимизирован для работы на серверах, а Xubuntu — это разновидность Ubuntu с графической оболочкой, подходящей для маломощных компьютеров. Ubuntu полностью бесплатна.
Windows, в отличие от Unix-подобных операционных систем, изначально создавалась для однопользовательского режима и никогда не пыталась быть совместимой с POSIX. Ей удалось захватить рынок персональных компьютеров, но на серверах она почти не встречается, даже несмотря на наличие Windows Server. Во-первых, она стоит денег, во-вторых, Windows не совместима с POSIX от слова «совсем». По этой причине Windows плохо подходит для веб-разработки. Хотя в ней есть командная строка, которая известна как cmd.exe
, её функциональность оставляет желать лучшего, а опыт работы с ней никак не поможет при работе в Linux-окружении, с которым всё равно придётся столкнуться.
Как и в случае изучения иностранных языков, мы рекомендуем осваивать Linux и его командную строку через полное погружение. Для этого надо установить Ubuntu основной системой или активировать ее внутри Windows. Если вы счастливый обладатель Mac, то можно ничего не делать. Операционная система macOS основана на Unix и является даже более POSIX-совместимой, чем Linux. У неё прекрасная командная строка и инструментарий для работы.
В дальнейшем все примеры в курсах, для которых нужна командная строка, показываются исключительно на POSIX-совместимых операционных системах.
Самостоятельная работа
- Если у вас Windows, то настройте окружение в соответствии с этой статьей
Дополнительные материалы
- Установка Ubuntu основной системой
- Установка Ubuntu на Windows
- Книги по операционным системам
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты.
Ошибки, сложный материал, вопросы >Нашли опечатку или неточность?
Выделите текст, нажмите ctrl + enter и отправьте его нам. В течение нескольких дней мы исправим ошибку или улучшим формулировку.
Что-то не получается или материал кажется сложным?
Загляните в раздел «Обсуждение»:
- задайте вопрос. Вы быстрее справитесь с трудностями и прокачаете навык постановки правильных вопросов, что пригодится и в учёбе, и в работе программистом;
- расскажите о своих впечатлениях. Если курс слишком сложный, подробный отзыв поможет нам сделать его лучше;
- изучите вопросы других учеников и ответы на них. Это база знаний, которой можно и нужно пользоваться.
Об обучении на Хекслете
Разбираемся, как работают операционные системы
Linux, Windows, Mac OS? Зачем они нужны? Понимание того, как работают операционные системы, поможет создавать качественные приложения.
Есть несколько причин, почему программистам стоит знать, как работают операционные системы. Одна из них – чтобы понимать, как работают программы. Представьте: вы пишете код, который кажется рабочим, но программа тормозит. Что делать? Можно попробовать разобраться с ограничениями операционной системы, но вы ведь не умеете!
Если стремитесь построить карьеру программиста, стоит понять, как работают операционные системы. Например, можно изучить курс «Введение в операционные системы» от Georgia Tech. В нем рассказывается, как работают ОС: механизмы работы, параллельное программирование (потоки и синхронизация), взаимодействие между процессами, распределённые ОС.
Осветим 10 наиболее важных принципов, о которых говорилось в курсе Udacity, и разберемся, как же работают операционные системы.
Это первое, о чем нужно задуматься, если вы решили разобраться, как работают операционные системы. ОС представляют собой набор программного обеспечения. Это ПО управляет компьютерным оборудованием и предоставляет техническую базу для программ. А ещё они управляют вычислительными ресурсами и обеспечивают защиту. Главное, что у них есть, – это доступ к управлению компонентами компьютера.
Файловая система, планировщик и драйверы – всё это основные инструменты работы ОС.
Существует три ключевых элемента операционной системы:
- Абстракции (процессы, потоки, файлы, сокеты, память).
- Механизмы (создание, управление, открытие, запись, распределение).
- Реализации (алгоритмы LRU, EDF).
Кроме того, есть два основных принципа проектирования операционных систем:
- Максимальная гибкость: отделение механизмов от конкретных реализаций.
- Ориентация на пользователей: на каких устройствах будет работать ОС, что нужно пользователю, каковы требования к производительности.
Теперь подробнее разберём глобальные концепции, которые помогут сформировать понимание того, как работают операционные системы.
Процесс – не что иное, как исполнение программы. Так как программа записана в виде последовательности действий в текстовый файл, процессом она становится только при запуске.
Загруженная в память программа может быть условно разделена на четыре части: стек, кучу, контекст и данные.
- Stack: стек процесса содержит временные данные, такие как параметры метода, адрес возврата и локальные переменные.
- Heap: это динамически распределяемая память процесса времени его выполнения.
- Text: хранит состояние регистров, состояние программного счетчика, режим работы процессора, незавершенные операции ввода-вывода, информацию о выполненных системных вызовах.
- Data: раздел содержит глобальные и статические переменные.
Когда процесс выполняется, он проходит через разные состояния. Эти этапы могут различаться в разных операционных системах.
Общая картина выглядит так:
- Start: начальное состояние при создании процесса.
- Ready: процесс ожидает исполнения на процессоре. В течение работы процессор может переключаться между процессами, переводя одни в режим готовности, другие – в режим исполнения.
- Running: выполнение инструкций.
- Wait: процесс переходит в состояние ожидания. Например, ждёт ввода данных или получения доступа к файлу.
- Terminated: как только процесс завершится, он перейдёт в это состояние и будет ожидать удаления.
Немного терпения: мы уже близки к пониманию того, как работают операционные системы 😉
Блок управления процессов (Process Control Block) – это структура данных, поддерживаемая операционной системой для каждого процесса. PCB имеет идентификатор PID. Именно PCB хранит всю информацию, необходимую для отслеживания процесса.
- Process ID: идентификатор каждого из процессов в ОС.
- State: текущее состояние процесса.
- Privileges: разрешения доступа к системным ресурсам.
- Pointer: указатель на родительский процесс.
- Priority: приоритет процесса и другая информация, которая требуется для планирования процесса.
- Program Counter: указатель на адрес следующей команды, которая должна быть выполнена.
- CPU registers: регистры процессора, необходимые для состояния исполнения.
- Accounting Information: уровень нагрузки на процессор, статистика и другие данные.
- I/O Information: список ресурсов, использующих чтение и запись.
Поток (нить, thread) – это ход исполнения программы. Он также имеет свой program counter, переменные, стек.
Потоки одной программы могут работать с одними данными, а взаимодействовать между собой через код.
Поток – это легковесный процесс. Вместе они обеспечивают производительность приложений и ОС за счет параллелизма на уровне программы.
Каждый поток относится к какому-то процессу и не может существовать без него. Сегодня потоки широко применяются в работе серверов и многопроцессорных устройств с общей памятью.
Чем хороши потоки:
- Они минимизируют время переключения контекста (процессора).
- Их использование обеспечивает параллелизм процесса.
- Они эффективно общаются между собой.
- Потоки позволяют использовать многопроцессорные архитектуры в большем масштабе.
Потоки имеют два уровня реализации:
- Пользовательский уровень, то есть потоки, управляемые приложениями;
- Уровень ядра, то есть потоки, управляемые ядром операционной системы.
В первом случае ядро управления потоками ничего не знает о существовании потоков вообще. А библиотека потоков просто содержит код для создания и уничтожения потоков, а также передачи сообщений и данных между ними для планирования выполнения потоков и сохранения (восстановления) контекстов потоков.
Во втором случае ядро выполняет создание потоков, а ещё планирование и управление в пространстве ядра. Заметим, что потоки ядра обычно медленнее, чем потоки пользователей.
Планировщик – это часть менеджера процессов, которая ответственна за переключение между процессами и выбор очереди по какой-либо стратегии.
ОС поддерживает все блоки управления процессом (PCB) в очередях планирования процесса:
- Очередь задач (job queue) поддерживает все процессы в системе.
- Очередь ожидания (ready queue) хранит информацию обо всех процессах, находящихся в основной памяти в состоянии ожидания. В эту очередь попадают и новые процессы.
- Очереди из устройств (device queue) – это процессы, заблокированные из-за недоступности устройств ввода-вывода.
ОС может использовать разные методы реализации для управления очередями (FIFO, Round Robin, Priority). Планировщик ОС определяет, когда и как перемещать процессы между готовыми и запущенными очередями (могут иметь только одну запись на ядро процессора в системе). На приведенной выше диаграмме он был объединен с процессором.
Модели состояния делятся на активные и неактивные:
- Активные: при создании нового процесса он переходит в класс активных.
- Неактивные: процессы, которые не выполняются, а ждут завершения других процессов. Каждая запись в очереди является указателем на конкретный процесс. Очередь реализуется с использованием связанного списка. Использование диспетчера заключается в следующем: когда процесс прерывается, то переносится в очередь ожидания. Если процесс завершен или отменен – он отменяется вовсе.
Переключение контекста – это механизм сохранения (в PCB) и восстановления контекста процессора с ранее запущенного промежутка времени. При использовании этого метода, коммутатор контекста позволяет использовать один процессор для нескольких действий одновременно. Кстати, контекстное переключение является неотъемлемой частью многозадачной операционной системы.
Когда планировщик переключает процессор с одного процесса на другой, состояние из текущего запущенного процесса сохраняется в блоке управления. Затем состояние для следующего процесса загружается из своего PCB в регистры процессора. Только потом второй процесс может быть запущен.
При переключении следующая информация сохраняется для последующего использования: счетчик программы, информация планировщика, значение регистра базы и лимита, используемый в настоящее время регистр, измененное состояние, информация о состоянии ввода и вывода, учетная информация.
Ещё одна важная часть – та, что отвечает за все операции по управлению первичной памятью. Существует менеджер памяти, который обрабатывает все запросы на получение памяти и высвобождение. Он же следит за каждым участком памяти, независимо от того, занят он или свободен. И он же решает, какой процесс и когда получит этот ресурс.
Адресное пространство процесса – набор логических адресов, к которым программа обращается в коде. Например, если используется 32-битная адресация, то допустимые значения варьируются от 0 до 0x7fffffff, то есть 2 Гб виртуальной памяти.
Операционная система заботится о том, чтобы сопоставить логические адреса с физическими во время выделения памяти программе. Нужно также знать, что существует три типа адресов, используемых в программе до и после выделения памяти:
- Символьные адреса: или по-другому адреса, используемые в исходном коде. Имена переменных, константы и метки инструкций являются основными элементами символического адресного пространства.
- Относительные адреса: компилятор преобразует символические адреса в относительные адреса.
- Физические адреса: загрузчик генерирует эти адреса в момент загрузки программы в основную память.
Виртуальные и физические адреса одинаковы как в процессе загрузки, так и во время компиляции. Но они начинают различаться во время исполнения.
Набор всех логических адресов, которые создала программа, называется логическим адресным пространством. Набор всех физических адресов, соответствующих этим логическим адресам, называется физическим адресным пространством.
Хотите разобраться подробнее в том, как работают операционные системы? Посмотрите соответствующие книги в нашем Телеграм-канале.
Существует два типа процессов: независимые и взаимодействующие. На независимые не оказывается влияние процессов сторонних, в отличие от взаимодействующих.
Можно подумать, что процессы, которые работают независимо, выполняются эффективнее, но зачастую это не так. Использование кооперации может повысить скорость вычислений, удобство и модульность программ.
Межпроцессная коммуникация (IPC) – это механизм, который позволяет процессам взаимодействовать друг с другом и синхронизировать действия. Связь между этими процессами может рассматриваться как сотрудничество.
Процессы могут взаимодействовать двумя способами: через общую память или через передачу сообщений.
Метод использования общей памяти
Допустим, есть два процесса: исполнитель (производитель) и потребитель. Один производит некоторый товар, а второй его потребляет. Эти два процесса имеют общее пространство или ячейку памяти, известную как «буфер». Там хранится элемент, созданный исполнителем, оттуда же потребитель получает этот элемент.
Однако у этих версий есть как минимум две значимые проблемы: первая известна как проблема безграничного буфера: исполнитель может продолжать создавать элементы без ограничений на размер буфера. Вторая заключается в том, что исполнитель, заполнив буфер, переходит в режим ожидания.
В задаче с ограниченным буфером у исполнителя и потребителя будет общая память. Если общее количество произведенных товаров равно размеру буфера, то исполнитель будет ждать их потребления.
Аналогично потребитель сначала проверит наличие товара, и если ни один элемент не будет доступен, придётся ждать его освобождения.
Метод анализа сообщений
С помощью этого метода процессы взаимодействуют друг с другом без использования общей памяти. Допустим, есть два процесса, p1 и p2, которые хотят взаимодействовать друг с другом. Они работают следующим образом:
- Устанавливается связь (если её ещё не существует).
- Начинается обмен сообщениями с помощью базовых примитивов. Нам нужно как минимум два примитива – отправить (сообщение, пункт назначения) или получить (сообщение).
Размер сообщения может быть фиксированным или переменным. Проектировщикам ОС проще работать с сообщениями фиксированного размера, а программистам – переменного. Стандартное сообщение состоит из двух частей – заголовка и тела.
Одной из важнейших задач операционной системы является управление различными устройствами ввода и вывода вроде мыши, клавиатуры, дисководов, etc.
Система ввода и вывода принимает запрос приложения на ввод или вывод данных, а затем отправляет его на соответствующее физическое устройство. После возвращает приложению полученный ответ. Устройства ввода и вывода можно разделить на две категории:
- Блочные: то есть устройства, с которыми драйверы связываются, отправляя целые блоки данных. Например, жесткие диски, USB-камеры, Disk-On-Key.
- Символьные: те устройства, с которыми драйвер связывается, отправляя и получая одиночные символы (байты или октеты). Например, последовательные порты, параллельные порты, звуковые карты и так далее.
ЦПУ должен иметь способ передачи информации на устройство ввода-вывода и обратно. И есть три способа сделать это:
- Специальные инструкции
Особые, неуниверсальные инструкции процессора, внедренные специально для контроля устройств ввода-вывода. Они позволяют отправлять данные на устройство и считывать их оттуда.
- Входы и выходы с отображением памяти
Когда используется ввод-вывод с отображением памяти, одно и то же адресное пространство разделяется памятью и устройствами ввода-вывода. Устройство подключается непосредственно к ячейкам памяти так, чтобы можно было передавать блок данных без применения ЦПУ.
- Прямой доступ к памяти (DMA)
Медленные устройства, такие как клавиатуры, генерируют прерывания ЦПУ после передачи каждого байта. Если бы быстрые устройства работали похожим образом, то ОС бы тратила большую часть времени впустую, на обработку этих прерываний. Поэтому для снижения нагрузки обычно используется прямой доступ к памяти (DMA).
Это означает, что ЦПУ предоставляет модулю ввода и вывода полномочия для чтения или записи в память. Сам модуль управляет обменом данными между основной памятью и устройством ввода-вывода. ЦПУ участвует в начале и конце передачи, а прерывается только после полной передачи блока.
Организация прямого доступа к памяти требует специального оборудования, называемого контроллером DMA (DMAC). Он управляет передачей данных и доступом к системной шине. Контроллеры запрограммированы с указателями источника и места назначения, счетчиками для отслеживания количества переданных байтов и прочими настройками.
Технология, которая позволяет создавать несколько сред или выделенных ресурсов из единой физической аппаратной системы называется виртуализация
Программное обеспечение, гипервизор, напрямую подключается к этой аппаратной системе и позволяет разбить ее на отдельные, безопасные среды – виртуальные машины. По идее, гипервизор должен аппаратные ресурсы между виртуальными машинами так, чтобы процессы выполнялись быстрее.
Физическая машина с гипервизором называется хостом, а виртуальные машины, которые используют ресурсы данного хоста – гостями. Для них ангаром ресурсов являются процессор, память, хранилище. Для получения доступа к этим ресурсам операторы управляют виртуальными экземплярами.
В идеале, все связанные виртуальные машины управляются с помощью единой веб-консоли управления виртуализацией. Она нужна, чтобы ускорять работу. Виртуализация позволяет определить, сколько вычислительной мощности и памяти выделять виртуальным машинам. Кроме того, так как виртуальные машины технически не связаны между собой, это повышает безопасность сред.
Проще говоря, виртуализация создает дополнительные мощности для выполнения процессов.
Типы виртуализации
- Данные: позволяет компаниям обеспечивать вычислительные мощности для объединения данных из нескольких источников, размещения новых источников и преобразования данных в соответствии с потребностями пользователя.
- Рабочий стол: легко спутать с виртуализацией операционной системы. Виртуализация рабочего стола позволяет центральному администратору одновременно развёртывать смоделированные среды на сотнях физических машин. Виртуальные системы позволяют администраторам выполнять массовые конфигурации, обновления и проверки безопасности на всех устройствах сразу.
- Серверы: программная имитация с помощью специального ПО аппаратного обеспечения компьютера: процессор, память, жесткий диск, и т. д. На такой виртуальный компьютер можно установить операционную систему, и она будет на нем работать точно так же, как и на простом, «железном» компьютере. Самое интересное достоинство этой технологии – это возможность запуска нескольких виртуальных компьютеров внутри одного физического. При этом, все виртуальные компьютеры могут работать независимо друг от друга.
Сервер – компьютер, спроектированный под выполнение большого объема специфических задач. Виртуализация сервера позволит ему выполнять больше этих специальных задач, а также разделить функционал на разные компоненты. - ОС: это способ одновременного запуска Linux и Windows-сред. Преимущество в том, что это уменьшает затраты на оборудование, повышает безопасность и экономит время на обслуживании.
- Сетевые функции: разделяет ключевые функции сети (например, службы каталогов, общий доступ к файлам и IP-конфигурацию) для распределения между средами. Виртуальные сети сокращают количество физических компонентов: коммутаторов, маршрутизаторов, серверов, кабелей.
Распределенная файловая система – это клиентское или клиент-серверное приложение, которое позволяет получать и обрабатывать данные. Они хранятся на сервере, как если бы они находились на персональном компьютере. Когда пользователь запрашивает файл, сервер отправляет ему копию запрашиваемого файла, который кэшируется на компьютере пользователя во время обработки данных, а затем возвращается на сервер.
Бывает так, что за одними и теми же данными одновременно обращаются сразу несколько пользователей. Для этих целей сервер должен иметь механизм организации обновлений, чтобы клиент всегда получал самую актуальную версию данных. Распределенные файловые системы обычно используют репликацию файлов или баз данных для защиты от сбоев.
Сетевая файловая система Sun Microsystems (NFS), Novell NetWare, распределенная файловая система Microsoft и DFS от IBM являются примерами распределенных файловых систем.
Распределенная общая память (DSM) – это компонент управления ресурсами распределенной операционной системы. В DSM доступ к данным осуществляется из общего пространства, аналогично способу доступа к виртуальной памяти. Данные перемещаются между дополнительной и основной памятью, а также между разными узлами. Изменения прав собственности происходят, когда данные перемещаются с одного узла на другой.
Преимущества распределенной общей памяти:
- Программистам можно не беспокоиться о передаче памяти между машинами, потому что перемещение данных можно скрыть;
- Можно передавать сложные структуры по ссылке, упрощая разработку алгоритмов для распределенных приложений;
- Это дешевле, чем многопроцессорные системы и может быть реализовано с использованием обычного оборудования;
- Можно использовать неограниченное количество узлов;
- Программы, написанные для мультипроцессоров с общей памятью, могут быть запущены в системах DSM.
Всё больше процессов переходит в облако. По сути, облачные вычисления – это своего рода аутсорсинг компьютерных программ. Используя облачные вычисления, пользователи могут получать доступ к программному обеспечению и приложениям из любого места. Это означает, что им не нужно беспокоиться о таких вещах, как хранение данных и питание компьютера.
Традиционные бизнес-приложения всегда были очень сложными, дорогими в обслуживании – нужна команда экспертов для установки, настройки, тестирования, запуска, защиты и обновления. Это одна из причин, почему стартапы проигрывают корпорациям.
Используя облачные вычисления, вы передаёте ответственность за аппаратное и программное обеспечение опытным специалистам, таким как Salesforce и AWS. Вы платите только за то, что вам нужно, апгрейд платежного плана производится автоматически по мере ваших потребностей, а масштабирование системы протекает без особых сложностей.
Приложения на базе облачных вычислений могут работать эффективнее, дольше и стоить дешевле. Уже сейчас компании используют облачные приложения для множества приложений, таких как управление отношениями с клиентами (CRM), HR, учет и так далее.
В заключение хочется ещё раз вернуться к тому, зачем вообще разбираться в том как работают операционные системы. Операционная система – это «мозг», который управляет входными, обрабатываемыми и выходными данными. Все остальные компоненты также взаимодействуют с операционной системой. Понимание того, как работают операционные системы, прояснит некоторые детали и в других компьютерных науках, ведь взаимодействие с ними организуется именно средствами ОС.
Источник: Как работают операционные системы: 10 концептов, которые нужно знать разработчикам on Medium.
Chrome OS — операционная система из браузера
Браузер Chrome и сайты, которые в нём открываются, уже умеют многое:
- запускать мини-приложения,
- подключать плагины,
- работать с файлами,
- настраивать внешний вид и реакции на действия пользователя,
- работать с офисными документами,
- программировать,
- обрабатывать видео и картинки,
- смотреть фильмы и слушать музыку.
Разработчики посмотрели на этот список и сказали: «Да это же почти готовая операционная система, только в браузере». Так появилась Chrome OS.
Что умеет Chrome OS
Рабочий стол Chrome OS.Когда эта система только появилась в 2009 году, к ней относились скептически — это был просто ещё один браузер, который умел всё то же, что умеет и обычный браузер на компьютере. Но сейчас всё изменилось, и в Chrome OS появились новые возможности:
- запуск приложениий Windows через среду виртуализации;
- запуск Android-приложений;
- работа с программами для Linux;
- собственные функции безопасности и защиты данных;
- поддержка профилей пользователей;
- отдельные приложения для работы с файлами и медиатекой.
А ещё там есть рабочий стол, переключение между приложениями и возможность ставить любой совместимый софт.
Конечно, если вам нужна поддержка специальных и сложных программ, например, «1С-Бухгалтерии», «Автокада» или «Премьера» для профессионального монтажа видео, то Chrome OS точно не подойдёт. А вот с офисной работой и с просмотром видео на ютубе Chrome OS вполне справится.
Что внутри
Интерфейс настроек в Chrome OS почти как в телефонах на Андроиде, потому что их делает GoogleЗадумка была в том, чтобы браузер мог использовать почти всю память и возможности процессора, которые есть. Тогда система должна быть максимально лёгкой и ненагрузочной для компьютера. Чтобы это сделать, разработчики взяли дистрибутив линукса Gentoo, выкинули оттуда почти всё, кроме ядра Linux и приложений для работы с интернетом и поставили туда специальную версию браузера Google Chrome.
Также оставили оконный менеджер X Window, тоже в очень урезанном варианте — достаточно, чтобы он просто мог показать окно браузера и несколько простых дополнительных программ. Цель такой экономии — оставить браузеру как можно больше аппаратных ресурсов.
В итоге этот комбайн работает так:
- При включении компьютера загружается ядро Linux
- Это ядро настраивает все драйверы и запускает менеджер окон.
- Менеджер окон запускает браузер.
- Браузер запускает внутри себя всё остальное.
Хромбуки
Компания Google договорилась с производителями ноутбуков, и те выпустили специальные версии ноутов — хромбуки. У них слабое по стандартным меркам железо, но даже на нём всё летает.
В результате выиграли все:
- Google смогла выйти на новый уровень и стала распространять свою систему среди школ, частных компаний и обычных пользователей.
- Производители ноутбуков избавились от устаревших компонентов и получили новую линейку продуктов.
- Пользователи получили дешёвый компьютер, который, в среднем, стоил в два раза дешевле своих аналогов на Windows.
Зачем это нужно
С самого начала Chrome OS задумывалась как быстрая и лёгкая система, которая будет шустро работать даже на старом и слабом железе. Даже если в компьютере стоит 4 гигабайта оперативной памяти и старый процессор Intel Atom, то Chrome OS всё равно будет запускаться и работать очень быстро. Поэтому с появлением новой операционки у старой техники появилась вторая жизнь, а у компании Google — новые пользователи.
Вторая цель Chrome OS — захватить как можно больше корпоративного рынка. Смысл в том, что компаниям невыгодно тратить время и силы специалистов на настройку рабочего места для каждого сотрудника. Гораздо проще, когда работник получает дешёвое устройство, вводит свой логин и пароль и сразу получает готовую и настроенную систему. Компания Google специально для таких клиентов предусмотрела единую настройку всех рабочих мест и дистанционное управление приложениями пользователей.
Недостатки
При всех достоинствах в Chrome OS есть недостатки, которые могут оказаться критичными для многих пользователей.
Всегда нужен интернет. Без интернета устройство не может сделать почти ничего, потому что приложения — это на самом деле сайты и интернет-сервисы. Нет интернета — нет сайтов. Ни документ отредактировать, ни заметку написать, ни видосик посмотреть.
Очень слабая работа с файлами. Менеджер файлов, который встроен в Chrome OS, не умеет почти ничего. Без интернета даже скачанные mp3-файлы окажутся бесполезными — поддержку кодеков добавили только в новых версиях и то не на каждом устройстве. Получается, что посмотреть на скачанные файлы можно, а что-то с ними сделать — нет. Красивые.
Если украдут пароль, то могут сделать с данными и системой что угодно из любой точки мира. Это обратная сторона того, что всё завязано на учётную запись Google. Поэтому, если будете себе ставить Chrome OS, заведите новую учётку. На всякий случай.
Мнение редакции
Chrome OS — интересная система, которая закрывает большинство современных потребностей в офисе. В будущем таких систем будет становиться больше, когда у работника будет самое простое устройство с монитором и клавиатурой, а всё остальное переедет в облако.
Текст:
Михаил Полянин
Редактор:
Максим Ильяхов
Художник:
Даня Берковский
Корректор:
Ирина Михеева
Вёрстка:
Кирилл Климентьев
Соцсети:
Олег Вешкурцев
Что такое Linux? — Linux.com
От смартфонов до автомобилей, суперкомпьютеров и бытовой техники, от домашних компьютеров до корпоративных серверов — операционная система Linux присутствует повсюду.
Linux существует с середины 1990-х годов и с тех пор достиг пользовательской базы по всему миру. Linux на самом деле везде: он есть в ваших телефонах, термостатах, в ваших машинах, холодильниках, устройствах Roku и телевизорах. Он также управляет большей частью Интернета, всеми 500 ведущими суперкомпьютерами мира и мировыми фондовыми биржами.
Но помимо того, что Linux является предпочтительной платформой для запуска настольных компьютеров, серверов и встраиваемых систем по всему миру, он является одной из самых надежных, безопасных и простых операционных систем.
Вот вся информация, необходимая для быстрого освоения платформы Linux.
Что такое Linux?
Linux — это операционная система, как и Windows, iOS и Mac OS. Фактически, одна из самых популярных платформ на планете, Android, работает под управлением операционной системы Linux.Операционная система — это программное обеспечение, которое управляет всеми аппаратными ресурсами, связанными с вашим настольным компьютером или ноутбуком. Проще говоря, операционная система управляет связью между вашим программным обеспечением и вашим оборудованием. Без операционной системы (ОС) программное обеспечение не работало бы.
Операционная система Linux состоит из нескольких частей:
- Загрузчик — Программа, управляющая процессом загрузки вашего компьютера. Для большинства пользователей это будет просто всплывающий экран-заставка, который в конечном итоге исчезает для загрузки операционной системы.
- Ядро — Это тот кусок целого, который на самом деле называется «Linux». Ядро является ядром системы и управляет процессором, памятью и периферийными устройствами. Ядро — это самый низкий уровень ОС.
- Система инициализации — Это подсистема, которая загружает пользовательское пространство и отвечает за управление демонами. Одна из наиболее широко используемых систем инициализации — systemd? что также является одним из самых противоречивых. Это система инициализации, которая управляет процессом загрузки после того, как начальная загрузка передана из загрузчика (т.е., GRUB или GR и унифицированный загрузчик).
- Демоны — Это фоновые службы (печать, звук, планирование и т. Д.), Которые запускаются либо во время загрузки, либо после входа на рабочий стол.
- Графический сервер — Это подсистема, которая отображает графику на вашем мониторе. Его обычно называют X-сервером или просто X.
- Среда рабочего стола — Это элемент, с которым фактически взаимодействуют пользователи. Существует множество окружений рабочего стола на выбор (GNOME, Cinnamon, Mate, Pantheon, Enlightenment, KDE, Xfce и т. Д.).). Каждая среда рабочего стола включает встроенные приложения (например, файловые менеджеры, инструменты настройки, веб-браузеры и игры).
- Приложения — Среда рабочего стола не предлагает полный набор приложений. Так же, как Windows и macOS, Linux предлагает тысячи и тысячи высококачественных программ, которые можно легко найти и установить. Большинство современных дистрибутивов Linux (подробнее об этом ниже) включают инструменты, подобные App Store, которые централизуют и упрощают установку приложений.Например, в Ubuntu Linux есть Центр программного обеспечения Ubuntu (ребрендинг программного обеспечения GNOME? Рисунок 1), который позволяет вам быстро искать среди тысяч приложений и устанавливать их из одного централизованного места.
Зачем нужен Linux?
Это единственный вопрос, который задает большинство людей. Зачем изучать совершенно другую вычислительную среду, если операционная система, которая поставляется с большинством настольных компьютеров, ноутбуков и серверов, работает нормально?
Чтобы ответить на этот вопрос, я хотел бы задать другой вопрос.Действительно ли работает та операционная система, которую вы сейчас используете? Или вы сталкиваетесь с такими препятствиями, как вирусы, вредоносное ПО, замедление работы, сбои, дорогостоящий ремонт и лицензионные сборы?
Если вы боретесь с вышеуказанным, Linux может быть для вас идеальной платформой. Linux превратился в одну из самых надежных компьютерных экосистем на планете. Объедините эту надежность с нулевой стоимостью входа, и вы получите идеальное решение для настольной платформы.
Правильно, вход нулевой… как в бесплатном.Вы можете установить Linux на любое количество компьютеров, не платя ни цента за программное обеспечение или лицензирование сервера.
Давайте посмотрим на стоимость сервера Linux по сравнению с Windows Server 2016. Цена стандартной версии Windows Server 2016 составляет 882,00 доллара США (приобретается непосредственно у Microsoft). Сюда не входят лицензии клиентского доступа (CAL) и лицензии на другое программное обеспечение, которое может вам понадобиться (например, база данных, веб-сервер, почтовый сервер и т. Д.). Например, лицензия CAL на одного пользователя для Windows Server 2016 стоит 38 долларов.00. Например, если вам нужно добавить 10 пользователей, это на 388,00 долларов больше на лицензирование серверного программного обеспечения. С сервером Linux все это бесплатно и легко установить. Фактически, установка полноценного веб-сервера (который включает в себя сервер базы данных) — это всего лишь несколько щелчков мышью или команд (взгляните на «Простая установка сервера LAMP», чтобы понять, насколько это может быть просто).
Если нулевой стоимости недостаточно, чтобы победить? как насчет наличия операционной системы, которая будет работать без проблем, пока вы ее используете? Я использую Linux почти 20 лет (как настольную, так и серверную платформу), и у меня не было проблем с программами-вымогателями, вредоносными программами или вирусами.Linux обычно гораздо менее уязвим для таких атак. Что касается перезагрузки сервера, то она необходима только при обновлении ядра. Для Linux-сервера нет ничего необычного в том, что он годами не перезагружается. Если вы будете следовать регулярным рекомендуемым обновлениям, стабильность и надежность практически гарантированы.
Открытый исходный код
Linux также распространяется под лицензией с открытым исходным кодом. Открытый исходный код следует за этими ключевыми арендаторами:
- Свобода запускать программу для любых целей.
- Свобода изучать, как работает программа, и изменять ее, чтобы она делала то, что вы хотите.
- Свобода распространять копии, чтобы вы могли помочь своему соседу.
- Свобода распространять копии ваших измененных версий среди других.
Эти моменты имеют решающее значение для понимания сообщества, которое вместе работает над созданием платформы Linux. Без сомнения, Linux — это операционная система, созданная «людьми для людей». Эти клиенты также являются основным фактором, почему многие люди выбирают Linux.Речь идет о свободе и свободе использования и свободе выбора.
Что такое «распространение»?
Linux имеет несколько различных версий для любого пользователя. От новичков до опытных — вы найдете «разновидность» Linux, которая соответствует вашим потребностям. Эти версии называются дистрибутивами (или, сокращенно, «дистрибутивами»). Почти каждый дистрибутив Linux можно бесплатно загрузить, записать на диск (или флэш-накопитель USB) и установить (на любое количество машин).
Популярные дистрибутивы Linux включают:
- LINUX MINT
- МАНДЖАРО
- ДЕБИАН
- УБУНТУ
- АНТЕРГОС
- СОЛЮС
- FEDORA
- НАЧАЛЬНАЯ ОС
- ОТКРЫТЬ
Каждый дистрибутив по-своему рассматривает рабочий стол.Некоторые выбирают очень современные пользовательские интерфейсы (такие как GNOME и Elementary OS’s Pantheon), тогда как другие придерживаются более традиционной среды рабочего стола (openSUSE использует KDE).
Вы можете проверить 100 лучших дистрибутивов на Distrowatch.
И не думайте, что сервер остался позади. Чтобы узнать об этой арене, вы можете обратиться по номеру:
- Red Hat Enterprise Linux
- Сервер Ubuntu
- Centos
- SUSE Enterprise Linux
Некоторые из вышеперечисленных серверных дистрибутивов бесплатны (например, Ubuntu Server и CentOS), а некоторые имеют соответствующую цену (например, Red Hat Enterprise Linux и SUSE Enterprise Linux).Те, у кого есть соответствующая цена, также включают поддержку.
Какой дистрибутив вам подходит?
Какой дистрибутив вы будете использовать, будет зависеть от ответа на три простых вопроса:
- Насколько хорошо вы владеете компьютером?
- Вы предпочитаете современный или стандартный интерфейс рабочего стола?
- Сервер или настольный компьютер?
Если у вас достаточно базовые навыки работы с компьютером, вам следует придерживаться дистрибутива, удобного для новичков, такого как Linux Mint, Ubuntu (рис. 3), Elementary OS или Deepin.Если ваш набор навыков выходит за пределы диапазона выше среднего, вы можете выбрать такой дистрибутив, как Debian или Fedora. Однако, если вы в значительной степени освоили искусство администрирования компьютеров и систем, используйте такой дистрибутив, как Gentoo. Если вам действительно нужна сложная задача, вы можете создать свой собственный дистрибутив Linux с помощью Linux From Scratch.
Если вы ищете дистрибутив только для сервера, вам также нужно решить, нужен ли вам интерфейс рабочего стола или вы хотите сделать это только через командную строку.Сервер Ubuntu не устанавливает графический интерфейс. Это означает, что ваш сервер не будет зависать при загрузке графики по двум причинам, и вам необходимо хорошо разбираться в командной строке Linux. Однако вы можете установить пакет с графическим интерфейсом поверх сервера Ubuntu с помощью одной команды, например sudo apt-get install ubuntu-desktop. Системные администраторы также захотят просмотреть распределение в отношении функций. Вы хотите, чтобы дистрибутив для конкретного сервера предлагал вам «из коробки» все необходимое для вашего сервера? В таком случае CentOS может быть лучшим выбором.Или вы хотите взять дистрибутив для настольного компьютера и добавлять части по мере необходимости? В таком случае вам могут пригодиться Debian или Ubuntu Linux.
Установка Linux
Для многих идея установки операционной системы может показаться очень сложной задачей. Хотите верьте, хотите нет, но Linux предлагает одну из самых простых установок среди всех операционных систем. Фактически, большинство версий Linux предлагают так называемый Live-дистрибутив? Это означает, что вы запускаете операционную систему с CD / DVD или USB-накопителя без каких-либо изменений на жестком диске.Вы получаете полную функциональность, не выполняя установку. После того, как вы попробовали его и решили, что хотите его использовать, просто дважды щелкните значок «Установить» и пройдите через простой мастер установки.
Обычно мастера установки проводят вас через процесс со следующими шагами (мы проиллюстрируем установку Ubuntu Linux):
- Подготовка: Убедитесь, что ваша машина соответствует требованиям для установки. Здесь также может возникнуть вопрос, хотите ли вы установить стороннее программное обеспечение (например, плагины для воспроизведения MP3, видеокодеки и т. Д.).
- Настройка беспроводной сети (при необходимости): если вы используете ноутбук (или машину с беспроводной связью), вам необходимо подключиться к сети, чтобы загружать стороннее программное обеспечение и обновления.
- Распределение жесткого диска (рис. 4): этот шаг позволяет выбрать способ установки операционной системы. Собираетесь ли вы установить Linux вместе с другой операционной системой (так называемая «двойная загрузка»), использовать весь жесткий диск, обновить существующую установку Linux или установить поверх существующей версии Linux.
- Местоположение: выберите ваше местоположение на карте.
- Раскладка клавиатуры: выберите клавиатуру для своей системы.
- Настройка пользователя: укажите имя пользователя и пароль.
Вот и все. После того, как система завершит установку, перезагрузитесь, и все готово. Чтобы получить более подробное руководство по установке Linux, ознакомьтесь с разделом «Как установить и опробовать Linux самым простым и безопасным способом» или загрузите руководство по установке Linux в формате PDF от Linux Foundation.
Установка программного обеспечения в Linux
Как сама операционная система, так и приложения легко устанавливаются. Большинство современных дистрибутивов Linux включают в себя то, что многие считают магазином приложений. Это централизованное место, где можно найти и установить программное обеспечение. Ubuntu Linux (и многие другие дистрибутивы) полагаются на программное обеспечение GNOME, Elementary OS имеет AppCenter, Deepin имеет Deepin Software Center, openSUSE имеет свой AppStore, а некоторые дистрибутивы полагаются на Synaptic.
Независимо от названия, каждый из этих инструментов выполняет одно и то же? центральное место для поиска и установки программного обеспечения Linux. Конечно, эти части программного обеспечения зависят от наличия графического интерфейса. Для серверов без графического интерфейса пользователя вам придется полагаться на интерфейс командной строки для установки.
Давайте рассмотрим два разных инструмента, чтобы продемонстрировать, насколько простой может быть установка даже из командной строки. Наши примеры предназначены для дистрибутивов на основе Debian и дистрибутивов на основе Fedora. Дистрибутивы на основе Debian будут использовать инструмент apt-get для установки программного обеспечения, а дистрибутивы на основе Fedora потребуют использования инструмента yum.Оба работают очень похоже. Мы проиллюстрируем использование команды apt-get. Допустим, вы хотите установить инструмент wget (удобный инструмент, используемый для загрузки файлов из командной строки). Чтобы установить это с помощью apt-get, введите следующую команду:
sudo apt-get install wget?
Команда sudo добавлена, потому что вам нужны привилегии суперпользователя для установки программного обеспечения. Точно так же, чтобы установить то же программное обеспечение в дистрибутиве на основе Fedora, вы сначала должны su суперпользователю (буквально введите команду su и введите пароль root), а затем выполните эту команду:
yum install wget
Это все, что нужно для установки программного обеспечения на Linux-машине.Это не так сложно, как вы думаете. Все еще сомневаетесь? Вспомните ранее описанную процедуру установки Easy Lamp Server? Одной командой:
sudo taskel
Вы можете установить полный сервер LAMP (Linux Apache MySQL PHP) либо на сервере, либо на настольном дистрибутиве. Это действительно так просто.
Дополнительные ресурсы
Если вы ищете одну из самых надежных, безопасных и надежных платформ как для настольного компьютера, так и для сервера, не ищите ничего, кроме одного из многих дистрибутивов Linux.С Linux вы можете быть уверены, что с вашими рабочими столами не будет проблем, ваши серверы будут в рабочем состоянии, а ваши запросы на поддержку минимальны.
Для получения дополнительной информации, которая поможет вам в жизни с Linux, ознакомьтесь со следующими ресурсами:
Общие сведения о вашем компьютере: операционные системы
Операционная система — это самая основная программа, которая работает на вашем компьютере. Он служит основой того, как работает все остальное.
Что такое операционная система?
Операционная система (ОС) — это основная программа на компьютере.Он выполняет множество функций, в том числе
- , определяя, какие типы программного обеспечения можно установить.
- координирует приложения, работающие на компьютере в любой момент времени.
- проверяя, что отдельные компоненты оборудования, такие как принтеры, клавиатуры и диск диски, все обмениваются данными должным образом
- , позволяя приложениям, таким как текстовые процессоры, почтовые клиенты и веб-браузеры, выполнять задачи в системе (например, рисовать окна на экране, открывать файлы, общаться по сети) и использовать другие системные ресурсы (e .g., принтеры, дисководы)
- сообщения об ошибках
ОС также определяет, как вы видите информацию и выполняете задачи. Большинство операционных систем используют графический интерфейс пользователя (GUI), который представляет информацию через изображения (значки, кнопки, диалоговые окна и т. Д.), А также слова. Некоторые операционные системы могут больше полагаться на текстовые интерфейсы, чем другие.
Как выбрать операционную систему?
Проще говоря, когда вы решаете купить компьютер, вы обычно также выбираете операционную систему.Хотя вы можете это изменить, поставщики обычно поставляют компьютеры с определенной операционной системой. Существует несколько операционных систем, каждая с различными функциями и преимуществами, но наиболее распространенными являются следующие три:
- Windows — Windows с версиями, включая Windows XP, Windows Vista и Windows 7, является наиболее распространенной операционной системой. для домашних пользователей. Он производится Microsoft и обычно устанавливается на машины, приобретенные в магазинах электроники или у таких поставщиков, как Dell или Gateway.В ОС Windows используется графический интерфейс, который многие пользователи считают более привлекательным и простым в использовании, чем текстовые интерфейсы.
- Mac OS X — Произведенная Apple, Mac OS X — это операционная система, используемая на компьютерах Macintosh. Хотя он использует другой графический интерфейс, он концептуально похож на интерфейс Windows по принципу работы.
- Linux и другие операционные системы, производные от UNIX — Linux и другие системы, производные от операционной системы UNIX, часто используются для специализированных рабочих станций и серверов, таких как веб-серверы и серверы электронной почты.Поскольку они часто более сложны для обычных пользователей или требуют специальных знаний и навыков для работы, они менее популярны среди домашних пользователей, чем другие варианты. Однако по мере их развития и упрощения использования они могут стать более популярными в типичных домашних пользовательских системах.
Какая у меня ОС? |
Ваша ОС — Linux 64-битный |
Что такое ОС? |
OS — это сокращение от слова «операционная система».Операционная система это программа, которая сообщает компьютеру, как работать. Он контролирует аппаратное обеспечение, выполняет программы, управляет задачами и ресурсами, а также предоставляет пользователю интерфейс с компьютером. |
Какая у меня версия ОС? |
Окна
Macintosh
Linux
FreeBSD / NetBSD / OpenBSD / DragonFlyBSD Телефон Android
Blackberry (RIM OS) Solaris (SunOS) AIX IOS (Cisco) XOS (Экстремальные сети) IronWare OS (литейное производство) OpenVMS |
Какая у меня ОС — 32-битная или 64-битная? |
Окна
Macintosh
Linux OpenBSD / FreeBSD / NetBSD Solaris (SunOS)
AIX
OpenVMS |
Как узнать, какая у меня ОС? |
Черная магия.Просто шучу. Когда вы посещаете сайт в Интернете браузер, он отправляет небольшой фрагмент информации на этот сайт, называемый «Пользовательский агент». У пользовательского агента есть несколько незначительных фрагментов информации о вашем браузере, платформе и версии ОС. Используя эту информацию можно сделать предположение о том, какую операционную систему вы используете. Почему это предположение? Пользовательский агент, который ваш браузер отправляет в сайт можно легко изменить.Нельзя доверять никакому путь, форма или форма как истина, но большинство людей обычно используют браузеры, пользовательские агенты которых не были изменены. Почему только в общем? Иногда люди, которые предоставляют вам доступ в Интернет изменит этот пользовательский агент, поэтому веб-сайт не сможет скажите, какой у вас браузер, или установит пользовательский агент на общий тип браузера, чтобы сайт отображался одинаково для всех.Это не норма, так что не волнуйтесь слишком сильно. |
Почему на сайте не отображается версия моей ОС или отображает неправильную версию? |
Большинство браузеров не указывают номер версии ОС пользователю. строка агента, но некоторые делают. Продукция Apple — хороший тому пример. В браузеры, которые помещают информацию о версии ОС в строку пользовательского агента, обычно браузеры поставляются с ОС или создаются (компилируются) продавец.Встроенный браузер производителя обеспечит максимальную информацию на этот сайт, чтобы сделать наиболее точное предположение. Например, встроенный браузер Apple Safari предоставляет полную версию. ОС в строке пользовательского агента, но Firefox на том же Apple компьютер предоставляет только часть номера версии. |
Почему написано, что моя ОС «Неизвестна»? |
Сначала прочтите раздел «Как узнать, какая у меня ОС?».Теперь, когда вы знаете, как мы угадываем вашу ОС, у вас может быть идея о том, почему мы не можем. Наиболее вероятный ответ: может и не быть быть достаточно информации в строке вашего пользовательского агента, чтобы отобразить хороший угадайте, или, поскольку пользовательский агент так легко изменить, ваш мог бы иметь были изменены на что-то необычное или настолько непонятное, что догадаться не удалось. Это хороший шанс, что ты ничего сделал так, не волнуйтесь.Пройдите «Какая у меня версия ОС» раздел выше и посмотрите, заметили ли вы что-нибудь, упомянутое там. Это Вероятно, у вас есть представление о том, какую ОС вы используете, но вы просто не уверены. |
Почему сайт угадал мою ОС неправильно? |
Угадать операционную систему, просто используя пользовательский агент, не так легко, как кажется.Между каждым из них так много мелких различий. один. Слова не всегда находятся на одном и том же месте. Некоторые вещи написаны иначе. У этого списка нет конца. Этот сайт постоянно отслеживаются, обновляются и настраиваются для исправления ошибок. Если у него есть ваша ОС некорректно однажды вернусь позже, и он может быть правильным в будущее. Если ваша ОС была угадана неправильно, отправьте свой пользовательский агент и ваш правильный os на o | s | 1 | @ | w | h | a | t | s | m | y | o | s |.| c | o | m (удалить |). Это будет рассмотрено и, если возможно, исправлено. |
Что не так с «или, возможно, Windows … «в некоторых строках окна? |
Microsoft решила, что они будут совместно использовать версии пользовательских агентов ОС между несколько выпусков операционных систем для настольных ПК и серверов. Это означает есть некоторые серверные и настольные пользовательские агенты, которые выглядят почти одинаково.Это возможно, вы используете серверную версию Windows, но очень маловероятно, если вы просто обычный домашний пользователь. Обычно, если ваш бег Сервер Windows вы это знаете. Используйте описанные выше способы, чтобы помочь вам проверить ваша версия Windows. По безграничной мудрости Microsoft они решили поделиться версиями пользовательских агентов. между Windows 10 и 11. А это значит, что теперь вам действительно стоит проверить версии в приведенных выше инструкциях, и не полагайтесь на то, что этот сайт сообщает вам если у вас Windows 10 или 11.Спасибо M $. |
Как выглядит мой пользовательский агент? |
Mozilla / 5.0 (X11 & semi; Linux x86_64 & semi; rv: 33.0) Gecko / 20100101 Firefox / 33.0 |
40+ вопросов на собеседовании по операционной системе (2021)
31. Что вы имеете в виду под семафором в ОС? Почему это используется?
Семафор — это сигнальный механизм.Он содержит только одно положительное целочисленное значение. Он просто используется для решения проблемы или проблемы критических секций в процессе синхронизации с помощью двух атомарных операций, то есть wait () и signal ().
Типы семафоров
Обычно существует два типа семафоров, как показано ниже:
- Двоичный семафор
- Счетный семафор
Двоичный семафор | Мьютекс |
---|---|
Он позволяет различным потокам процессов получать конечный экземпляр ресурса до тех пор, пока ресурсы не станут доступными. | Он позволяет различным потокам процессов получать один общий ресурс только одновременно. |
Его функции основаны на механизмах сигнализации. | Его функции основаны на запорном механизме. |
Двоичные семафоры намного быстрее по сравнению с Mutex. | Мьютекс работает медленнее двоичных семафоров. |
Это целое число. | Это в основном объект. |
32.Что такое ядро и напишите его основные функции?
Ядро — это в основном компьютерная программа, обычно рассматриваемая как центральный компонент или модуль ОС. Он отвечает за обработку, управление и контроль всех операций компьютерных систем и оборудования. При каждом запуске системы ядро загружается первым и остается в основной памяти. Он также действует как интерфейс между пользовательскими приложениями и оборудованием.
Функции ядра:
- Он отвечает за управление всеми ресурсами компьютера, такими как ЦП, память, файлы, процессы и т. Д.
- Он облегчает или инициирует взаимодействие между компонентами аппаратного и программного обеспечения.
- Он управляет оперативной памятью, чтобы все запущенные процессы и программы могли работать эффективно и результативно.
- Он также контролирует и управляет всеми основными задачами ОС, а также управляет доступом и использованием различных периферийных устройств, подключенных к компьютеру.
- Он планирует работу, выполняемую ЦП, так, чтобы работа каждого пользователя выполнялась максимально эффективно.
33.Какие бывают типы ядра?
Существует пять основных типов ядер, как показано ниже:
- Монолитное ядро
- Микроядро Гибридное ядро
- Нано-ядро
- Экзо Ядро
34. Напишите разницу между микроядром и монолитным ядром?
MicroKernel : это минимальная ОС, которая выполняет только важные функции ОС. Он содержит лишь почти минимальное количество функций и возможностей, необходимых для реализации ОС.
Пример: QNX, Mac OS X, K42 и т. Д.
Монолитное ядро: Это архитектура ОС, которая поддерживает все основные функции компонентов компьютера, такие как управление ресурсами, память, файлы и т. Д.
Пример: Solaris, DOS, OpenVMS, Linux и т. Д.
MicroKernel | Монолитное ядро |
---|---|
В этом программном обеспечении или программе службы ядра и пользовательские службы представлены в разных адресных пространствах. | В этом программном обеспечении или программе службы ядра и службы пользователя обычно находятся в одном и том же адресном пространстве. |
По размеру меньше по сравнению с монолитным ядром. | По размеру больше микроядра. |
Легко расширяется по сравнению с монолитным ядром. | Трудно расширить по сравнению с микроядром. |
Если служба дает сбой, это влияет на работу микроядра. | При сбое службы происходит сбой всей системы в монолитном ядре. |
Он использует очереди сообщений для обеспечения межпроцессного взаимодействия. | Он использует сигналы и сокеты для достижения межпроцессного взаимодействия. |
35. Что такое SMP (симметричная многопроцессорная обработка)?
SMP обычно называют компьютерной архитектурой, в которой обработка программ выполняется несколькими процессорами, которые совместно используют общую ОС и память.SMP очень необходим, если вы хотите использовать преимущества многопроцессорного оборудования. Он просто позволяет любому процессору работать над любой из задач независимо от того, где в памяти расположены данные или ресурсы для этой конкретной задачи. Эти системы более надежны, чем однопроцессорные.
36. Что такое система разделения времени?
Это система, которая позволяет более чем одному пользователю получать доступ к ресурсам определенной системы во многих местах. Проще говоря, он выполняет несколько задач на одном процессоре или ЦП.Как следует из названия, это означает разделение времени на несколько слотов в нескольких процессах. Он также позволяет разным пользователям из разных мест одновременно использовать определенную компьютерную систему, поэтому считается одним из важных типов ОС.
37. Что такое переключение контекста?
Переключение контекста — это в основном процесс сохранения контекста одного процесса и загрузки контекста другого процесса. Это одна из экономичных и экономичных мер, выполняемых ЦП, поскольку она позволяет нескольким процессам совместно использовать один ЦП.Поэтому он считается важной частью современной ОС. Этот метод используется ОС для переключения процесса из одного состояния в другое, то есть из состояния выполнения в состояние готовности. Это также позволяет одному процессору обрабатывать и контролировать различные процессы или потоки даже без необходимости в дополнительных ресурсах.
38. В чем разница между ядром и ОС?
Ядро: Ядро — это системная программа, которая контролирует все программы, запущенные на компьютере.Ядро — это, по сути, мост между программным и аппаратным обеспечением системы.
Операционная система: Операционная система — это системная программа, которая запускается на компьютере для обеспечения интерфейса для пользователя компьютера, чтобы он мог легко работать на компьютере.
Ядро | ОС |
---|---|
Считается центральным компонентом ОС | Считается системным ПО. |
Обычно он отвечает за преобразование пользовательских команд в команды машинного уровня. | Обычно отвечает за управление ресурсами системы. |
Он просто действует как интерфейс между оборудованием и приложениями. | Он просто действует как интерфейс между оборудованием и пользователем. |
Он также выполняет такие функции, как управление процессами, управление файлами, управление устройствами, обмен данными ввода-вывода и т. Д. | Он также выполняет такие функции, как обеспечение безопасности данных и файлов в системе, обеспечение контроля доступа для пользователей, поддержание конфиденциальности системы и т. Д. |
Его тип включает микроядро, монолитное ядро и т. Д. | Его тип включает одиночные и многопрограммные пакетные системы, распределенную ОС, ОС реального времени. |
39. В чем разница между процессом и потоком?
Процесс: По сути, это программа, которая в настоящее время выполняется одним или несколькими потоками. Это очень важная часть современной ОС.
Поток: Это путь выполнения, который состоит из счетчика программ, идентификатора потока, стека и набора регистров внутри процесса.
Процесс | Резьба |
---|---|
Это компьютерная программа, которая находится в стадии выполнения. | Это компонент или объект процесса, который является наименьшей исполнительной единицей. |
Это тяжеловесные операторы. | Это легкие операторы. |
Имеет собственное пространство памяти. | Он использует память процесса, которому они принадлежат. |
Создать процесс сложнее, чем создать поток. | Создать поток проще, чем процесс. |
Требуется больше ресурсов по сравнению с потоком. | Требуется меньше ресурсов по сравнению с процессами. |
Создание и завершение процесса занимает больше времени по сравнению с потоком. | Создание и завершение потока занимает меньше времени по сравнению с процессом. |
Он обычно обкатывается в отдельном пространстве памяти. | Это обычно обкатка разделяемой памяти. |
Он не передает данные. | Обмениваются данными друг с другом. |
Его можно разделить на несколько потоков. | Не подлежит дальнейшему разделению. |
40. Каковы различные этапы процесса?
В основном процесс состоит из четырех частей, как показано ниже:
- Стек: Используется для локальных переменных и возвращает адреса.
- Куча: Используется для динамического распределения памяти.
- Data : хранит глобальные и статические переменные.
- Код или текст: Содержит скомпилированный программный код.
41. Что такое тупик в ОС? Каковы необходимые условия для тупика?
Тупик — это обычно ситуация, когда набор процессов блокируется, поскольку каждый процесс удерживает ресурсы и ожидает получения ресурсов, удерживаемых другим процессом. В этой ситуации два или более процесса просто пытаются выполняться одновременно и ждут, пока каждый из них завершит свое выполнение, потому что они зависят друг от друга.Мы можем видеть проблему с рукой в нашей системе всякий раз, когда в программе возникает тупик. Это одна из распространенных проблем, которые вы можете увидеть в многопроцессорной обработке.
Необходимые условия для тупиковой ситуации
В основном четыре необходимых условия для тупиковой ситуации, как указано ниже:
- Взаимное исключение
- Удерживать и ждать
- Без преимущественной покупки
- Циклическое ожидание или ожидание ресурса
42. Что вы имеете в виду под аномалией Белады?
В операционной системе данные процесса загружаются фрагментами фиксированного размера, и каждый фрагмент называется страницей.Процессор загружает эти страницы в блоки памяти фиксированного размера, называемые кадрами. Аномалия Белады — это явление, при котором, если мы увеличиваем количество кадров в памяти, то увеличивается и количество ошибок страниц. Обычно это происходит, когда мы используем алгоритм замены страниц FIFO (First in First Out).
43. Что в ОС работает под буферизацией?
Spooling просто означает одновременные периферийные операции онлайн. Это называется помещением данных различных заданий ввода-вывода в буфер.Здесь буфер означает специальную область в памяти или на жестком диске, которая может быть доступна устройству ввода-вывода. Он используется для посредничества между компьютерным приложением и медленным периферийным устройством. Это очень полезно и важно, потому что устройства получают доступ к данным или получают их с разной скоростью. Эта операция также использует диск как очень большой буфер и может перекрывать операции ввода-вывода для одной задачи с операциями процессора для другой задачи.
Давайте поговорим об операционных системах для торговых точек
Некоторые люди полагают, что торговая точка сама по себе является полноценной операционной системой.Короткий ответ здесь — нет. Чтобы лучше понять ситуацию и избежать дальнейшей путаницы, давайте внимательнее посмотрим, что такое операционная система и система точек продаж.
Операционные системы для точек продажЕсли у вас есть компьютер, смартфон или планшет, для его работы установлена операционная система или ОС. Без ОС ваше устройство будет просто дорогим пресс-папье, потому что аппаратному обеспечению или внутренностям вашего компьютера для работы нужна операционная система.Без ОС было бы невозможно установить и использовать какое-либо дополнительное программное обеспечение.
Примеры популярных операционных систем:
- Microsoft Windows: Windows — самая популярная (и самая пиратская) операционная система для компьютеров в мире, которая десятилетиями доминировала в отрасли. Популярность операционной системы Windows отчасти объясняется тем, что она давала пользователю возможность установить ее на любой компьютер, если оборудование могло удовлетворить минимальные требования.Мобильная версия Windows — Windows Phone.
- Linux: Linux — популярная операционная система, которую можно бесплатно загрузить и использовать на любом компьютере. Это проект с открытым исходным кодом, популярный среди разработчиков, потому что они могут настраивать и изменять его в соответствии со своими текущими потребностями. Платформа Android основана на Linux. Ubuntu Linux работает над мобильным телефоном, который будет работать под управлением Linux.
- OS X: Операционная система Apple. OS X, известная своей стабильностью и способностью легко справляться с ресурсоемкими задачами, является фаворитом среди графических дизайнеров, компаний по редактированию видео и студий звукозаписи.Не так широко используется, как Windows, потому что вы не можете установить его на любой компьютер, и он будет правильно работать только с оборудованием, сертифицированным Apple. Однако есть обходной путь (метко названный Hackintosh), но не все работает, и вы должны знать, что делаете. iOS — это мобильная операционная система Apple, установленная на iPhone и iPad.
- Android: Google произвела огромный фурор, когда разработала Android, чтобы бросить вызов статус-кво, установленному Apple и немногими оставшимися игроками на мобильных телефонах на момент его выпуска.В настоящее время Android является самой популярной мобильной операционной системой в мире, поскольку количество смартфонов, работающих на Android, намного превышает количество компьютеров.
POS-системы — это набор оборудования и программного обеспечения для торговых точек, предназначенный для помощи предприятиям в продажах, отслеживании и управлении запасами. Вся «система» в этом случае будет включать POS-терминал (с установленным программным обеспечением POS), кассовый ящик, принтер чеков, сканер штрих-кода и считыватель кредитных карт.
Таким образом, программное обеспечение для торговой точки устанавливается поверх любой текущей операционной системы. Например, Lightspeed POS Onsite устанавливается исключительно на Mac. Программное обеспечение не будет работать в среде Linux или Windows, потому что архитектура программного обеспечения отличается.
Все программное обеспечение POS зависит от ОС, поэтому вы должны убедиться, что выбранное вами программное обеспечение может быть установлено в вашей текущей конфигурации. Лучший способ приблизиться к этому — получить всю систему — компьютеры и все остальное — от компании, поставляющей вам систему POS, чтобы избежать любых конфликтов программного обеспечения и проблем совместимости в будущем.
Облако и торговая точкаНе бойтесь использовать ту или иную операционную систему. Lightspeed POS Retail полностью основан на облачных технологиях, и все, что вам когда-либо понадобится, — это компьютер со стабильным подключением к Интернету и веб-браузер, совместимый с HTML5. Существует также приложение для iPad, которое также требует подключения к Интернету для работы.
Спутать операционную систему с программным обеспечением POS вполне понятно, учитывая, что программное обеспечение POS обычно единственное, что оператор видит и использует ежедневно.Мы надеемся, что эта статья немного проясняет различие между операционной системой и программным обеспечением для торговых точек.
Создайте незабываемый опыт розничной торговли
Умный, масштабируемый, надежный. Управляйте всем своим розничным бизнесом с универсальной платформы Lightspeed. Поговорите с экспертом сегодня, чтобы узнать, как Lightspeed может помочь вашему бизнесу процветать.
Лучшие операционные системы — обзоры, цены и демонстрации 2021 года
Независимо от того, являетесь ли вы игроком, графическим дизайнером, разработчиком или медицинским работником, вы используете персональный компьютер (настольный или портативный), планшет и / или мобильное устройство для выполнять задачи, хранить файлы и использовать различные приложения.Без операционной системы вы не смогли бы ничего из этого сделать.
На вашем ноутбуке или мобильном устройстве уже установлена операционная система, которая позволяет вам получить доступ к устройству и использовать его. Однако иногда вам необходимо обновить или изменить операционную систему на более продвинутую версию, которая со временем будет соответствовать вашим потребностям.
Операционные системы (ОС) действуют как мост между физическими компонентами компьютера или устройства и программами и приложениями, которые вы используете на нем. ОС предоставляет пользователям интерфейс для управления устройством и связи с ним.Эти системы способны управлять компьютерным оборудованием, данными и программными файлами.
Какие бы компьютеры или устройства вы ни использовали, мы создали это руководство для покупателей, чтобы предоставить всю важную информацию, необходимую для выбора или обновления до нужной операционной системы.
Вот что мы рассмотрим:
Что такое операционная система?
Операционные системы выступают в качестве платформы для запуска другого программного обеспечения. Эти системы предоставляют интерфейс для подключения компьютеров / устройств к другим технологиям, таким как сканеры, принтеры и копировальные аппараты.Типичная ОС может одновременно обрабатывать и выполнять такие операции, как управление хранилищем / памятью, управление файлами, безопасность, управление процессором и управление устройствами.
Пользовательский интерфейс в программном обеспечении CentOS Linux (исходный код)
Общие черты операционных систем
Управление памятью | Выделять программам части памяти / дискового пространства и перераспределять это пространство, когда оно больше не требуется. |
Обновления системы | Улучшите или внесите изменения в текущую версию на основе отзывов пользователей, тенденций и других факторов.Эта функция содержит исправления для функций, которые не работают должным образом, добавляет незначительные улучшения и совместимость программного обеспечения, решает проблемы безопасности и улучшает работу оборудования. |
Пользовательский интерфейс | Разрешить пользователям взаимодействовать со своим компьютером, устройством или приложением. Этот интерфейс связывает пользователя и систему, позволяя им обмениваться информацией и инструкциями с минимальными усилиями пользователя для достижения желаемого результата. |
Управление приложениями | Управлять работой, обслуживанием, управлением версиями и обновлением приложения на протяжении всего его жизненного цикла.Контролируйте все компоненты приложения, чтобы убедиться, что они запущены и работают. |
Безопасность данных | Защитите информацию и конфиденциальные данные, предоставив пользователям надежные авторизованные ключи или зашифровав данные, хранящиеся в системе. Это позволяет программному обеспечению как можно скорее исправлять ошибки и предотвращать атаки вредоносных программ. |
Управление файлами | Управляйте файлами в системе, разрешая пользователям создавать, изменять и удалять файлы.Эта функция также позволяет пользователям создавать новые файлы, находить и делиться ими с другими пользователями или передавать их на подключенные устройства. |
Какой вы покупатель?
Перед покупкой операционной системы вам следует определиться с категорией покупателя, чтобы вы могли выбрать подходящий инструмент. Большинство покупателей попадают в следующие категории:
- Для личного использования: Эти покупатели используют ноутбуки и устройства в развлекательных целях, таких как игры, хранение личных файлов и исследовательские цели.Часто такие покупатели не используют те же приложения, которые требуются бизнесу, и предпочитают операционную систему, которая проста в использовании.
Некоторые бесплатные операционные системы предлагают такие функции, как управление файлами и приложениями, удобный интерфейс, управление памятью и обновления системы, и могут работать для таких покупателей. - Для предприятий: Организациям, использующим сеть компьютеров и устройств для ведения бизнеса, требуется несколько приложений. У этих покупателей часто есть сервер для обработки пользовательских подключений, хранилища и нескольких компьютеров и устройств.Этим пользователям требуется ОС, которая обеспечивает безопасность и конфиденциальность, удаленный доступ, поддержку мобильных устройств, общий доступ к файлам и принтерам, резервное копирование и многое другое.
Покупателям из этой категории часто приходится платить за свои операционные системы, которые могут быть адаптированы к их уникальным бизнес-потребностям. Некоторые системы даже предлагают такие функции, как расширенная защита от угроз. Этим покупателям следует искать масштабируемые системы, совместимые с любыми приложениями и оборудованием, которые они уже используют. Масштабируемость позволяет пользователям увеличивать или уменьшать производительность системы в ожидании изменений в приложениях и требованиях к обработке.
Преимущества программного обеспечения операционных систем
- Графический интерфейс пользователя (GUI): Большинство операционных систем теперь имеют графический интерфейс пользователя (GUI), который позволяет взаимодействовать с устройством через визуальные представления, такие как меню, значки и кнопки. Это улучшение по сравнению с традиционным интерфейсом, которое требовало от пользователей написания команд для доступа к функциям системы.
- Безопасность данных: Операционная система позволяет пользователям получать доступ к данным, хранящимся на компьютерах или устройствах, и отвечает за безопасное и надежное управление данными.ОС отслеживает все данные и имена файлов программ, а также их расположение и выполняет общие функции, такие как копирование / стирание / резервное копирование. Большинство операционных систем имеют встроенные инструменты для защиты от угроз безопасности, включая утилиты поиска вирусов и настройку брандмауэра для блокировки подозрительной сетевой активности.
- Совместное использование ресурсов: Операционные системы предоставляют сетевые службы и возможности совместного использования файлов, поэтому вы можете совместно использовать такие ресурсы, как принтеры, сканеры и модемы, с другими пользователями.Вы даже можете передавать файлы, такие как видео, изображения и приложения, на подключенные устройства и отправлять данные нескольким пользователям, используя встроенные функции электронной почты, если они включены.
Тенденция рынка, чтобы понять:
- Операционные системы виртуальной реальности (VR-OS): Технология виртуальной реальности вызывает серьезные сбои во многих отраслях, включая игры, здравоохранение, мероприятия, инженерию и образование. В ответ на это поставщики операционных систем должны создавать решения, которые могут поддерживать 2D-приложения и 3D-контент с эффектом присутствия.Эти VR-OS позволяют пользователям работать в пустом пространстве с помощью носимых устройств, таких как головной дисплей, подключенный к беспроводной мыши / клавиатуре, и не требуют для работы ноутбука или настольного компьютера. Крупные игроки работают над созданием собственных операционных систем VR, поскольку технология виртуальной реальности набирает обороты; Ожидается, что поставщики программного обеспечения последуют их примеру.
Примечание. Приложение, выбранное в этой статье, является примером для демонстрации функции в контексте и не предназначено для одобрения или рекомендации.Он был получен из источников, которые на момент публикации считались надежными.
Операционная система | Microsoft Wiki
Операционная система ( OS ) — это набор компьютерных программ, которые управляют аппаратными и программными ресурсами компьютера. Популярные операционные системы включают Microsoft Windows, Mac OS X и Linux.
Операционная система выполняет основные системные задачи, такие как управление устройствами ввода и вывода, упрощение работы в сети, управление файловыми системами, управление приложениями, выделение памяти и приоритезация системных запросов.
Современные операционные системы предоставляют оболочку графического интерфейса пользователя (GUI), в которой пользователь может взаимодействовать с ОС, запускать приложения и управлять своей компьютерной системой. Большинство ОС по-прежнему имеют интерпретатор командной строки, а некоторые (особенно Linux) часто работают без графического интерфейса пользователя для экономии ресурсов. Сетевыми компьютерами часто можно управлять удаленно, хотя это может иметь последствия для безопасности.
Взаимодействие пользователя с ОС включает установку устройств и управление ими, установку приложений и управление ими, сохранение файлов и управление ими, а также настройку самой ОС.Взаимодействие с приложениями включает выделение памяти, доступ ко времени обработки, доступ к файлам и согласование доступа к сети.
История
На первых компьютерах не было операционных систем — они были вручную настроены для выполнения одной серии задач. К началу 1960-х производители поставляли обширные инструменты для оптимизации разработки, планирования и выполнения заданий в этих системах пакетной обработки.
В 1960-х годах несколько основных концепций стимулировали разработку операционных систем.В результате разработки IBM System / 360 появилось большое семейство мэйнфреймов, для которых планировалась единая операционная система. Система OS / 360 оказалась успешной, и современные системы IBM все еще происходят от этой ранней ОС. OS / 360 также представила жесткий диск для постоянного хранения и беспрепятственного разделения системных ресурсов по времени между несколькими одновременно работающими пользователями.
Система разделения времени Multics была самой известной из ряда новых операционных систем, разработанных для использования преимуществ концепции разделения времени; и послужил источником вдохновения для ряда операционных систем, разработанных в 1970-х годах, особенно Unix Деннисом Ричи и Кеном Томпсоном.
Первые микрокомпьютеры не обладали мощностью (или необходимостью) для сложных операционных систем, которые были разработаны для мэйнфреймов и мини-компьютеров. Для управления этими системами были разработаны минимальные операционные системы, часто загружаемые из ПЗУ и известные как мониторы. Одной из примечательных ранних дисковых операционных систем была CP / M, которая поддерживалась на многих ранних микрокомпьютерах. CP / M был главным источником вдохновения для Microsoft MS-DOS, которая стала бешено популярной в качестве операционной системы, выбранной для IBM PC.Основной альтернативой на рынке микрокомпьютеров в 80-е годы была Mac OS, по-прежнему эксклюзивная для компьютеров Apple Macintosh.
К 1990-м годам микрокомпьютеры достигли точки, в которой все более востребованы надежные и сложные операционные системы. Ответом Microsoft на это изменение стала разработка Windows NT, которая послужила основой для линейки операционных систем Microsoft для настольных ПК, начиная с 2001 года. Apple перестроила свою операционную систему поверх ядра Unix, как Mac OS X, также выпущенная в 2001 году.
Публично разработанные версии Unix, собранные с помощью инструментов проекта GNU, также стали популярными; версии, основанные на ядре Linux, на сегодняшний день являются самыми популярными, при этом UNIX, производные от BSD, занимают небольшую часть рынка серверов.
Растущая сложность встроенных устройств привела к увеличению использования встроенных операционных систем. В некоторых случаях программное обеспечение «операционной системы» напрямую связано с приложением для создания монолитной программы специального назначения.В простейших встроенных системах нет различия между ОС и приложением. Встроенные системы, требующие определенных временных затрат, известны как операционные системы реального времени.
Выбор ОС может зависеть от архитектуры оборудования, в частности от ЦП, при этом только Linux и BSD работают практически на любом ЦП. Windows NT 3.1, которая больше не поддерживается, была перенесена на DEC Alpha и MIPS Magnum. На мэйнфреймах и встроенных системах используется множество различных операционных систем, многие из которых не имеют прямого подключения к Windows или Unix.QNX и VxWorks — две распространенные встроенные операционные системы, последняя используется в аппаратном оборудовании сетевой инфраструктуры. Вариант Windows Server 2003 для центра обработки данных также доступен для некоторых систем мэйнфреймов.