В данной статье описываются альтернативные способы установки Firefox в качестве вашего браузера по умолчанию, когда установка Firefox в качестве браузера по умолчанию из окна Настройки не работает.
Симптомы этой проблемы могут включать:
- Firefox сообщает, что он не является браузером по умолчанию, когда вы проверяете это с помощью окна Настройки в Firefox.
- Firefox предлагает установить Firefox в качестве браузера по умолчанию при каждом запуске.
- Firefox не открывается после нажатия на ссылки в других программах.
Используя Firefox
Предпочтительный способ установки Firefox в качестве браузера по умолчанию описан в статье Как сделать Firefox браузером по умолчанию. Большинство внешних программ будут открывать ссылки в Firefox, если он установлен в качестве браузера по умолчанию с использованием этого метода.
Следуйте инструкциям ниже, если вы попробовали шаги в статье Как сделать Firefox браузером по умолчанию и обнаружили, что они не работают.
Используя вашу операционную систему
- Откройте меню Пуск Windows и щёлкните по значку Настройки.
- Щёлкните Приложения, затем выберите Приложения по умолчанию на левой панели.
- Пролистните вниз и щёлкните по полю под Веб-браузер.
- Щёлкните по Firefox в открывшемся диалоговом окне со списком доступных браузеров.
- Firefox теперь установлен как браузер по умолчанию. Закройте окно настроек, чтобы сохранить изменения.
- Откройте приложение Параметры ПК (нажмите и отпусте кнопку Пуск, затем щёлкните по значку шестерёнки).
- Выберите на боковой панели .
- Выберите на боковой панели .
- В окне Выбрать приложения по умолчанию выберите из списка программ слева и щёлкните Установить эту программу по умолчанию. Затем щёлкните OK, чтобы закрыть окно.
- Нажмите на логотип Windows, чтобы открыть меню Пуск, а затем выберите Панель Управления. Откроется окно Панель управления.
- Нажмите на ссылку Программы. Откроется панель Программы.
- Нажмите на ссылку Установка программ по умолчанию. Откроется панель Установки программ по умолчанию.
- В списке Программ в левой части окна, нажмите Firefox.
- В правой части окна нажмите Использовать эту программу по умолчанию.
- Нажмите кнопку Пуск, а затем нажмите на значок Панель управления, чтобы открыть Панель управления Windows.
- Нажмите значок Установка и Удаление Программ, чтобы открыть апплет установки и удаления программ.
- В левой части окна, нажмите значок Выбор программ по умолчанию.
- Нажмите на радио кнопку Другая для открытия категории Другая.
- Под Выберите веб-браузер по умолчанию нажмите переключатель рядом с Mozilla Firefox.
- Нажмите OK в нижней части окна.
- В меню , откройте , затем .
- На вкладке под Веб-Браузер, выберите в выпадающем меню Firefox.
- Нажмите Закрыть.
- В , перейдите на вкладку , щёлкните по значку .
- Нажмите вкладку под , выберите Firefox в меню, поднимите его в верхнюю часть списка.
- Нажмите Применить.
- В меню , откройте вкладку , затем перейдите на значок .
- Нажмите на строку в списке отображённых служб и наберите firefox в меню .
- Нажмите Применить.
Используйте один из этих методов, чтобы настроить Firefox в качестве браузера по умолчанию в вашем Mac:
В меню apple
- Выберите в меню Apple.
- Щёлкните Основные.
- Выберите Firefox в выпадающем меню Веб-браузер по умолчанию.
В safari
- Из Dock откройте Safari.
- В панели меню откройте меню и выберите .
- Нажмите на значок , чтобы отобразить панель параметров Общие.
- В выпадающем списке Веб-браузер по умолчанию: выберите Firefox.
jpg» class=»wiki-image frameless lazy» src=»https://user-media-prod-cdn.itsre-sumo.mozilla.net/uploads/gallery/images/113f7b1b820e1b71faeb5aa77e042443-1259803440-200-1.jpg»>
- Выйдите из Safari.
У некоторых программ могут быть функции, которые открывают другой браузер для отображения собержимого, даже если Firefox выбран в качестве браузера по умолчанию. Например:
- В Microcoft Outlook есть функция «Просмотр в браузере», которая будет открывать окно браузера для отображения содержимого сообщения в виде HTML-письма. Outlook конвертирует содержимое сообщения в формат MHTML (MHT) и затем открывает программу, связанную с этип типом файлов, обычно Internet Explorer.
Эти прекрасные люди помогли написать эту статью:
История провала Firefox OS — android.mobile-review.com
Продолжаю серию материалов об операционных системах, которые так и не смогли добиться успеха на мобильном рынке. Уже были тексты про Ubuntu Touch и Sailfish OS, пришла пора познакомиться с Firefox OS от Mozilla.
Легкий старт
Летом 2011 года компания Mozilla, которая выпускает
браузер Firefox,
объявила
о планах создать свою универсальную операционную систему — для смартфонов и
планшетов. Представители Mozilla
объясняли
этот шаг необходимостью создать конкурента новой системе Chrome OS, которая на тот момент была
ограничена дешевыми ноутбуками, и Android, которая страдает от фрагментации.
При этом Mozilla не стала создавать операционную систему с нуля. Она взяла ядро и драйверы от Android и свой веб-движок Gecko, поэтому система получила название Boot to Gecko или B2G.
Разработчики хотели, чтобы приложения для нее создавались с помощью языков веб-программирования — HTML5, CSS и JavaScript. Задумка в том, что любое приложение на смартфоне можно запускать на компьютере в браузере и наоборот.
Поэтому Mozilla не нужно было создавать свою операционную систему для ПК, для этого достаточно запустить браузер Mozilla на Windows или macOS.
Первая демонстрация операционной системы Mozilla появилась только весной 2012 года. Тогда Boot to Gecko находилась на стадии ранней альфы, весь интерфейс сводился к нескольким плиткам с приложениями. Даже на флагмане Galaxy SII все работало медленно.
Летом Mozilla официально объявила, что система Boot to Gecko будет называться Firefox OS. Также компания назвала своих основных партнеров — компанию ZTE и TCL (бренд Alcatel).
Они сразу ограничили рынок Firefox OS бюджетными смартфонами и развивающимися странами, хотя изначально целились на разные ценовые сегменты, в том числе и флагманы.
Первый смартфон планировали выпустить в начале 2013 года в Бразилии вместе с компанией Telefonica.
В конце 2012 года Firefox OS появилась в качестве расширения браузера. Прямо на компьютере через Firefox запускался эмулятор операционной системы в небольшом окне.
Эмулятор предназначался разработчикам и гикам, которым
интересно посмотреть на новую систему. До финальной версии было еще далеко, но
это уже больше похоже на рабочий продукт. Можно посмотреть экран блокировки,
лаунчер с рабочими столами и даже магазин приложений.
В целом это было больше похоже на Android с
нестандартной оболочкой, чем на новую систему.
Первые смартфоны на Firefox OS представили
22 января — они создавались компанией Geeksphone в партнерстве с испанской
Telefonica.
Телефоны были предназначены только для разработчиков, чтобы они знакомились с
системой и начинали писать приложения.
Один смартфон был ультрабюджетным — модель Keon с
экраном 3,5 дюйма, 512 МБ оперативной памяти и процессором Snapdragon S1. А второй, Peak, был почти флагманом с экраном 4,3
дюйма и двухъядерным процессором Snapdragon
S4,
но оперативной памяти тоже 512 МБ.
На тот момент опробовать Firefox OS можно
было только тремя путями: установить эмулятор в браузере на ПК, запустить
оболочку на Android-смартфоне
через мобильный Firefox
или установить систему на смартфон через прошивку. Теперь появились первые
смартфоны с предустановленной Firefox
OS,
но достать их было непросто.
На выставке MWC 2013 в феврале представили еще два смартфона на Firefox OS — ZTE Open и Alcatel One Touch Fire. В отличие от смартфонов на Android, эти использовали только одну сенсорную кнопку, которая отвечала за возврат на главный экран.
Фото Engadget
В это же время Mozilla подписала
контракты с 18 операторами из разных стран мира — среди них были российские
«Вымпелком» (Билайн) и «МегаФон». Очевидно, что сама компания бы не справилась
с продажами смартфонов — это совсем другой рынок для разработчика браузера.
Разработка Firefox OS полностью прекращена
28 Сентября 2016 11:52 28 Сен 2016 11:52 |
Mozilla полностью прекратила разработку Firefox OS, так как не смогла получить от продвижения этой платформы тех результатов, на которые рассчитывала.
Полное прекращение разработки Firefox OS
В июле 2016 г. Mozilla полностью прекратила коммерческую разработку операционной системы Firefox OS (кодовое имя B2G — Boot To Gecko). Об этом Ари Джакси (Ari Jaaksi), старший вице-президент Mozilla по интернет-устройствам, и Дэвид Брайант (David Bryant), вице-президент по разработке платформы, объявили в корпоративном блоге.
По их словам, решение о том, что разработку Firefox OS следует прекратить, было принято в конце 2015 г. После этого команда постепенно сворачивала работу в этом направлении. Стратегия выпуска смартфонов на базе Firefox OS при участии коммерческих партнеров не принесла Mozilla ожидаемых результатов, пояснили они причину принятого решения.
После принятого решения в Mozilla планировали продолжить развитие Firefox OS для «умных» телевизоров (эту платформу, в частности, использует Panasonic). И изначально об этом был сделан анонс. Однако позже руководство компании осознало, что этой работой следует заниматься кому-то другому, например, производителям телевизоров. Поэтому позже они отказались и от этой задачи.
Удаление кода проекта
Наконец, Mozilla не планирует сохранять код Firefox OS на своем девелоперском портале (developer.mozilla.org). В основе Firefox OS лежит браузерный движок Mozilla Gecko.
В процессе работы над операционной системой новый код был был наслоен на Gecko, при этом сам Gecko тоже развивался в рамках этого проекта.
Сейчас этот код мешает дальнейшему развитию Gecko и соответственно браузера Firefox, в основе которого тоже лежит этот движок, пояснили в компании желание удалить код.
Проект Firefox OS не удался, Mozila отказалась от него
В Mozilla понимают, что контрибьютором будет сложно продолжить работу над Firefox OS, учитывая их желание и тот факт, что код распространяется в рамках открытой лицензии. Фактически контрибьюторы должны скопировать этот код, пока он цел, и самостоятельно создать форк. В компании добавили, что, возможно, найдут другой способ решить проблему, не столь болезненный для сообщества.
Нереализованные амбиции
Создавая собственную мобильную платформу, Mozilla рассчитывала отхватить часть мирового рынка смартфонов, предложив доступные устройства жителям развивающихся стран.
Анатолий Вершинин, «АТБ Электроника»: Есть ли перспективы у российских процессорных модулей?
техника
Впервые о том, что Mozilla планирует разработать собственную ОС для смартфонов, стало известно в июле 2011 г., а через год оператор Telefonica, который одним из первых записался в сторонники проекта, продемонстрировал первый прототип смартфона на новой платформе.
Первые два смартфона на базе Firefox OS были выпущены в 2013 г. Их производителем стала испанская компания Geeksphone, которая спустя два года решила покинуть этот бизнес, несмотря на то, что спрос на новинки оказался ажиотажным.
В конце 2015 г., когда Mozilla приняла решение отказаться от дальнейшей разработки платформы, линейка смартфонов на базе Firefox OS включала 18 моделей, выпускаемых Alcatel, LG, ZTE, Huawei и другими партнерами Mozilla. Стоимость аппаратов при этом начиналась с $33 и достигала нескольких сотен долларов в зависимости от производителя и характеристик.
В мае 2015 г. руководство Mozilla призналось, что идея выпускать сверхдешевые аппараты на базе Firefox OS оказалась неудачной, и решило сфокусироваться на их функциональности.
Гендиректор Mozilla Крис Берд (Chris Beard) заявил в открытом письме, что, как они поняли, потребителей в большей степени волнует опыт пользовательского взаимодействия, который способно подарить устройство, а не его стоимость.
Кибербезопасность КИИ: от теории к практике
Защита данных
В декабре 2015 г.
стало известно, что гонконгский стартап Acadine Technologies продолжит начатое компанией Mozilla дело по развитию альтернативной Linux-платформы для смартфонов: Acadine создала и развивает форк проекта Firefox OS. В июле 2015 г. стартап привлек $100 млн от гонконгской Tsinghua Unigroup на этот проект. Tsinghua Unigroup находится под контролем правительства Китая и Университета Цинхуа в Пекине.
- Бесплатный фотошоп: лучшие программы для обработки фото онлайн
Сергей Попсулин
Подписаться на новости Короткая ссылка
Ошибка: «извините, но Firefox не может быть установлен. Для работы требуется Windows 7 или выше»
Если вы решили установить новую версию Mozilla Firefox на Windows XP или Vista, то вас может ждать неприятный сюрприз. Система выдаст ошибку, в которой будет написано следующее: «извините, но Firefox не может быть установлен. Для работы данной версии требуется операционная система Microsoft Windows 7 или выше».
«Видимо я скачал какую-то не ту версию» – решит неопытный пользователь, попробует загрузить Firefox с другого сайта и в итоге увидит всю ту же ошибку. На самом деле, увы, любая актуальная версия Firefox будет выдавать указанное выше сообщение, если вы являетесь пользователем старых операционных систем, а конкретно Windows XP или Vista.
Вышедший в апреле 2017 года Firefox 53 стал первым крупным обновлением браузера от Mozilla, недоступным для этих ОС. Проще говоря, установить Firefox 53 или новее на системы Microsoft выпущенные до Windows 7 с этого момента стало невозможно.
«Извините, но Firefox не может быть установлен. Для работы требуется Windows 7 или выше»: решение
Что делать, если вы столкнулись с невозможностью установки актуальной версии Firefox? Разумное решение – установить предыдущую версию браузера, которая полностью работоспособна на Windows XP/Vista.
Таковой является Firefox 52. Вы можете прямо сейчас отправиться искать эту версию самостоятельно, но мы всё же рекомендуем официальный сайт Mozilla. Да, на главной странице сайта можно увидеть ссылки лишь на актуальную в данный момент версию, что нам не подходит. Однако у Mozilla есть специальный архив, где можно найти и скачать любую версию их браузера, вплоть до самых-самых старых.
Откройте этот архив, кликните по ссылке releases (релизы), прокрутите появившуюся длинную страницу почти до конца и там вы увидите ссылки на дистрибутивы Firefox 52.
Firefox OS — Википедия
Firefox OS Домашний экран Firefox OS 2.5
Разработчик
Mozilla Foundation
Семейство ОС
Linux
Основана на
Gecko, Android
Исходный код
свободное программное обеспечение
Первый выпуск
2 июля 2013 года
Последняя версия
2.2.0 (29 апреля 2015 года)
Последняя тестовая версия
2.5.0[1]
Поддерживаемые языки
15 языков: английский, арабский, венгерский, иврит, испанский, китайский, немецкий, польский, португальский, русский, румынский, сербский, французский, хорватский, чешский
Поддерживаемые платформы
ARM[2]
Тип ядра
Linux
Интерфейс
Gaia (интерфейс)
Лицензия
MPL, GPL, LGPL
Состояние
проект закрыт
Репозиторий исходного кода
github.com/mozilla-b2g/B…
Веб-сайт
mozilla.org/firefox/os/ — официальный сайт Firefox OS
Медиафайлы на Викискладе
|
|
Категория |
Firefox OS (кодовое имя Boot to Gecko, B2G[3]) — свободная операционная система, предназначенная для смартфонов[4], планшетных компьютеров[5] и Smart TV[6][7]. Разработку вела Mozilla Foundation на базе свободного веб-движка Gecko[8][9]. В декабре 2015 года было объявлено о частичном приостановлении разработки для смартфонов[10]. 27 сентября 2016 года компания Mozilla разослала уведомления о том, что прекращает работу над проектом Firefox OS[11]; существующие наработки будут переданы opensource-сообществу[12].
Преемниками Firefox OS являются: разработанная сообществом B2G OS[13], H5OS разработки Acadine Technologies, KaiOS от KaiOS Technologies[14] и My Home Screen от Panasonic[8][15][16].
История
Схема архитектуры Firefox OS
На создание этого проекта разработчиков подтолкнуло появление движка для обработки PDF средствами HTML5 и JavaScript PDF.js[8][нет в источнике].
26 июля 2011 года представитель Mozilla Foundation сообщил о начале работ над операционной системой, основанной на движке Gecko, используемом в браузере Mozilla Firefox.
В феврале 2012 года испанская телекоммуникационная компания Telefónica совместно с Mozilla Foundation разработали концепт Open Web Device, использующий в качестве операционной системы Boot to Gecko, позднее был создан прототип устройства на базе процессора Qualcomm[17][18].
Сообщается также о сотрудничестве с Deutsche Telekom[19].
Однако последний пресс-релиз Mozilla открыл для интересующихся несколько новых фактов о готовящейся операционной системе.
Создатели решили отказаться от не знакомого широкой публике бренда Boot to Gecko, заменив его более узнаваемым Firefox.
Маркетологи компании уверены, что раскрученный бренд будет более популярным и интересным для конечного потребителя к моменту выпуска операционной системы.
23 апреля 2013 года проект GeeksPhone начал продажу устройств на базе Firefox OS. Две модели телефонов были доступны пользователям по предварительной подписке.
В течение нескольких часов устройства были раскуплены, также в первые часы после начала продаж интернет-магазин неоднократно становился недоступен, так как не справлялся с потоком посетителей, что свидетельствует о том, что разработчики не рассчитывали на такой ажиотаж[20].
2 июля 2013 года стартовали продажи первого Firefox OS смартфона ZTE Open в Испании[21].
В начале мая 2014 года на eBay стартовали продажи ZTE Open C — первого смартфона под Firefox OS 1.3[22].
Весной 2014 года появился первый планшет под управлением Firefox OS — InFocus New Tab F1.
16 декабря 2014 года четырнадцать операторов в 28 странах мира предпочли смартфоны Firefox OS[23].
В декабре 2015 года появилась информация о закрытии проекта как платформы для смартфонов[24][25]. При этом не исключалось появление других устройств на этой платформе. Однако позже стало известно, что в Mozilla имели в виду только отказ от сотрудничества с операторами связи.
Сама операционная система для смартфонов продолжит существование в виде открытой платформы и может быть использована производителями устройств по их усмотрению[26]. Также намекалось на то, что операционная система, как проект для смартфонов, будет активно развиваться в будущем[27].
В официальном блоге компании сообщалось, что разработка версии системы для смартфонов полностью завершится после релиза Firefox OS 2.6. Это обновление так и не вышло.
После старта обновления уже почти никто в Mozilla не работал над Firefox OS для смартфонов.
Компания пока не оставляет надежд на то, что её операционная система когда-нибудь снова посетит мобильные устройства, но определённо не в ближайшее время[28].
Также Mozilla заявила, что 29 марта 2016 года перестанут приниматься приложения в Mozilla Marketplace для Android, планшетов и компьютеров, однако нативные программы для Firefox OS будут появляться в каталоге до 2017 года — компания не собирается так быстро закрывать поддержку своей мобильной платформы[источник не указан 1481 день].
Разработка
В операционной системе реализован собственный Web API, поддерживающий стандартные телефонные функции: звонки, работу с SMS-сообщениями, Bluetooth, NFC и т. д.
Кроме того, разработчики планируют использовать часть кода Android в модулях поддержки драйверов, загрузчике и ядре.
Планируется широкая поддержка W3C Device API, в том числе, System Information API, обеспечивающего доступ из веб-браузера к системному вводу-выводу, датчикам, звуковому и сетевому оборудованию[8].
В качестве стартовой аппаратной платформы используются чипы Qualcomm.
В июле 2012 года Boot to Gecko был переименован в «Firefox OS»[29], после того популярного браузера у Mozilla, Firefox, и скриншоты Firefox OS стали публиковаться в августе 2012 года[30].
Версии релизов
1.0 | 14 августа 2012 | Gecko 18 | 21 февраля 2013 | TEF | Gecko 18 |
1.0.1 | 25 января 2013 | Gecko 18 | 6 сентября 2013 | Shira | Gecko 20 |
1.1.0[31] | 20 февраля 2013 | Gecko 18+ (new APIs) | 9 октября 2013 | Leo | Gecko 23 |
1.1.1 | 24 августа 2013 | Gecko 18+ | HD | Gecko 23 | |
1.2.0 | 21 июня 2013 | Gecko 26 | 9 декабря 2013 | Koi | Gecko 26 |
1.3.0 | 4 декабря 2013 | Gecko 28 | 17 марта 2014 | Gecko 28 | |
1.4.0 | 10 декабря 2013 | Gecko 30 | 8 августа 2014 | Gecko 30 | |
2.0.0 | 21 февраля 2014 | Gecko 32 | Gecko 32 | ||
2.1.0 | 9 июня 2014 | Gecko 34 | Gecko 34 | ||
2.2.0 | 2 сентября 2014 | Gecko 37 | 20 августа 2015 | Gecko 37 | |
2.5.0 | 12 января 2015 | Gecko 44 | 10 ноября 2015 | Gecko 44 | |
2.6.0 | 30 октября 2015 | ориентировочно май 2016 |
Аппаратные требования
Версия 2.5, в которой появилась возможность прикреплять различные ярлыки на домашний экран
В феврале 2013 года команда Mozilla определила минимальные аппаратные требования для устройств на базе Firefox OS[32]:
- CPU не меньше 800 МГц.
- RAM от 256 МБ.
- Дисплей 240×320 точек и выше.
Приложения
Mozilla работала над магазином приложений, но, поскольку Firefox OS — открытая платформа, любой желающий может запустить свой. Представители Telefónica заявляли, что на её территории обслуживания будет обеспечен сервис прямой оплаты приложений.
Особенность Firefox OS в том, что на ней запускались только те приложения, которые основаны на web-технологиях (HTML5, CSS и JavaScript).
Ограничившись только языками веб-программирования, разработчики платформы хотели ускорить работу системы при выполнении некоторых задач.
Основными недостатками вышеописанного является затруднённая разработка сложных приложений, в этом случае разработчики прибегают к использованию JavaScript, который тоже имеет ограничения.
Конкурентные преимущества
- Открытый исходный код и аппаратная платформа.
- Малая требовательность к аппаратному обеспечению.
- Быстрое выполнение несложных приложений.
- Поддержка HTML5.
Кроме этого, ОС имеет и большое количество недостатков.
Примечания
- ↑ Firefox OS 2.5 Developer Preview, an experimental Android app (неопр.). Дата обращения: 12 ноября 2015. Архивировано 12 ноября 2015 года.
- ↑ Создатели Firefox делают аналог Chrome OS для смартфонов, Вести.Ru (26 июля 2011). Архивировано 4 июля 2012 года. Дата обращения 26 июля 2011.
- ↑ B2G OS — Archive of obsolete content | MDN (неопр.) (недоступная ссылка). Дата обращения: 2 июля 2018. Архивировано 30 апреля 2016 года.
- ↑ Прами Олсон, «Want to Buy A Webphone?». Forbes (бумажная версия), с. 52. 15 апреля 2013 года.
- ↑ Mozilla Launches Contribution Program to Help Deliver Firefox OS to tablets — Mozilla Hacks — the Web developer blog (неопр.). Дата обращения: 2 июля 2018. Архивировано 26 июня 2018 года.
- ↑ Now you can buy a Panasonic Smart TV with Firefox OS (in Europe) — Liliputing (неопр.). Дата обращения: 2 июля 2018. Архивировано 2 июля 2018 года.
- ↑ Mozilla and Partners to Bring Firefox OS to New Platforms and Devices — The Mozilla Blog (неопр.). Дата обращения: 2 июля 2018. Архивировано 2 июля 2018 года.
- ↑ 1 2 3 4 B2G (англ.), MozillaWiki. Архивировано 7 августа 2011 года. Дата обращения 26 июля 2011.
Что нужно знать, чтобы написать операционную систему
Создание операционной системы — одна из сложнейших задач в программировании, поскольку требует обширных и комплексных знаний о работе компьютера. Каких именно? Разбираемся ниже.
Что такое ОС
Операционная система (ОС) — это программное обеспечение, которое работает с компьютерным железом и его ресурсами и является мостом между аппаратной и программной частью компьютера.
Компьютеры первого поколения не имели операционных систем. Программы на первых ЭВМ включали в себя код для непосредственной работы системы, связи с периферийными устройствами и вычислений, для выполнения которых эта программа и писалась. Из-за такого расклада даже простые по логике работы программы были сложны в программной реализации.
По мере того как компьютеры становились более разнообразными и сложными, писать программы, которые работали и как ОС, и как приложение, стало попросту неудобно. Поэтому, чтобы программы было легче писать, владельцы компьютеров начали разрабатывать программное обеспечение. Так и появились операционные системы.
ОС предоставляет всё необходимое для работы пользовательских программ. Их появление означало, что теперь программам не нужно контролировать весь объём работ компьютера (это отличный пример инкапсуляции). Теперь программам нужно было работать именно с операционной системой, а система уже сама заботилась о ресурсах и работе с периферией (клавиатура, принтер).
Кратко об истории операционных систем
Первая операционная система была создана в 1956 году компанией General Motors для единственного компьютера IBM. Остальные владельцы этих компьютеров последовали примеру и начали создавать собственные ОС.
Как можно догадаться, первые ОС сильно отличались друг от друга. Почти на каждом компьютере стояла своя система. Хоть они и облегчали написание программ, использовать такие программы можно было только на одном компьютере.
В 1960-х годах IBM стала первой выпускающей компьютеры компанией, которая взяла на себя процесс написания ОС под свои же компьютеры. Компания начала распространять компьютеры вместе со своей операционной системой.
В эти же годы компании Control Data Corporation, Computer Sciences Corporation, Burroughs Corporation, GE, Digital Equipment Corporation и Xerox тоже начали реализовывать свои ОС.
В конце 60-х была разработана первая версия ОС Unix. Написанная на Си, свободно доступная первые годы, Unix привлекала всё больше внимания и аудитории. Она легко портировалась на новые системы и начала набирать обороты.
Многие современные ОС, включая Apple OS X и все разновидности Linux-систем, являются дальними потомками Unix.
Microsoft Windows, в свою очередь, была написана для ряда персональных компьютеров IBM.
Первая ОС от Microsoft называлась не Windows, а MS-DOS. Эта система была создана в 1981 году, когда систему 86-DOS купили у компании Seattle Computer Products и модифицировали её под требования IBM.
Всем привычное название Windows появилось в 1985, когда MS-DOS обзавелась графическим интерфейсом.
Apple OS X, Microsoft Windows и ряд Linux-систем (включая Android) сейчас контролируют большую часть рынка операционных систем.
Составляющие операционной системы
ОС состоит из двух основных частей:
- ядро системы;
- системные программы.
Ядро (англ. kernel)
Сердце операционной системы. Именно оно запускается первым при включении компьютера (не считая BIOS и загрузчик). Ядро контролирует ресурсы компьютера и обрабатывает запросы от системных программ.
Системные программы
Работают поверх ядра. Такие программы нужны, в целом, не для пользователя, а для связи ядра с пользовательскими приложениями и периферией. Примеры системных программ: драйвера устройств, файловая система, сетевые программы, утилиты для дефрагментации диска.
Пользовательские программы
Не являются частью операционной системы. Именно эти программы уже имеют конкретное назначение. Текстовые редакторы, браузеры, медиа-плееры — всё это пользовательские программы. Они контролируются ядром и используют системные программы для доступа к периферии.
Что необходимо знать
Список вещей, которые необходимо знать для создания собственной ОС, очень длинный. Но в нём есть три основных пункта, на которые нужно обратить внимание в первую очередь:
- базовое понимание компьютерной науки (информатики);
- теория и опыт в программировании;
- знание высоко- и низкоуровневых языков программирования.
Изучение информатики
Разработка ОС — это не тоже самое, что, скажем, веб-разработка. Тут нельзя будет просто и быстро разобраться в базовых вещах. Для начала нужно получить крепкий базис информатики и только потом переходить к другим темам.
Coursera: Computer Science 101 — это курс, который подойдёт для тех, кто только начал осваиваться в информатике и программировании. Если у вас уже имеются элементарные знания в в этой области, то пропустите этот курс и переходите к следующему.
Udacity: Intro to Computer Science использует веб-разработку в качестве подхода к обучению компьютерной науке. Хоть курс и не направлен на непосредственную разработку ОС, он даёт мощный базис в области программирования.
edX: Introduction to Computer Science — этот курс является самым исчерпывающим и углублённым в этом списке. Несмотря на это, он полностью бесплатен. Курс был разработан в Гарвардском Университете. В нём вас научат алгоритмам, структурам данных, управлению ресурсами, разработке ПО, а так же познакомят с такими языками программирования, как C, PHP и JavaScript.
Подборка книг для самостоятельного изучения Computer Science.
Изучение программирования
С крепкими знаниями в области информатики и хотя бы базовым пониманием программирования вам нужно набраться опыта в разработке проектов.
Udacity: Software Development Process — отличный курс для тех, кто ещё не принимал участие в крупных проектах. Тут вас ознакомят с подробностями рабочего процесса и работой с инструментарием (например Git), а также расскажут о настройке интегрированной среды разработки.
Изучение языков программирования
Для разработки операционной системы вам понадобится освоить минимум два языка программирования:
- низкоуровневый язык ассемблера;
- высокоуровневый язык программирования.
Первый используется для работы напрямую с процессором. Процессор «понимает» только машинный код, и для каждого типа процессора есть только один соответствующий язык.
Одной из самых популярных архитектур процессора является x86. Она была разработана компанией Intel и на текущий момент широко используется многими производителями компьютерного железа, включая AMD.
По этой причине в этой статье акцент будет именно на архитектуру x86.
Высокоуровневые языки программирования, в свою очередь, работают сразу на нескольких архитектурах. Самый популярный из таких языков — Cи. Чаще всего именно на нём и пишутся операционные системы. Но это не означает, что этот язык единственный. Для написания ОС можно использовать и более высокоуровневые языки, например C++ или Python.
Прим. перев. Есть пример написания «игрушечных» операционных систем на C#. Cosmos — некий конструктор ОС. В этой статье на практическом примере показывают написание системы всего в нескольких десятках строк.
Язык ассемблера для x86
«x86 Assembly Guide» — неплохо подойдёт для начального изучения ассемблера. Несмотря на то, что эта статья коротка для полного курса, в ней содержится всё необходимое для дальнейшего углубления.
Книга «Programming from the Ground Up» Джонатана Бартлетта является одной из основных по изучению ассемблера. В ней основами языка программирования подкрепляются базисы информатики.
Для изучения ассемблера есть ещё одна показательная книга — «The Art of Assembly Language», написанная Рэнди Гайдом. Изначально книга писалась специально для курсов, которые вёл автор в Калифорнийском университете Cal Poly и UC Riverside. В середине 90-х годов книга была признана определяющей в этой сфере.
Если вдруг вышеописанные материалы вам не подошли, вот ещё пара отличных книг:
Кроме того, на нашем сайте есть статья о написании простейшего ядра под x86 на C.
Язык Cи
Как уже упоминалось выше, для написания ОС есть несколько высокоуровневых языков программирования. Однако самый популярный из них — Си.
Начать изучать этот язык можно отсюда. Этот ресурс ознакомит вас с базовыми понятиями и подготовит к более сложным задачам.
«Learn C the Hard Way» — название ещё одной книги. Кроме привычной теории в ней собрано много практических решений. Этот учебник расскажет обо всех аспектах языка.
Либо же можете выбрать одну из этих книг:
Разработка ОС
После освоения всего необходимого, что касается информатики, языка ассемблера и Cи, вам стоит прочесть хотя бы одну или две книги про непосредственную разработку ОС. Вот несколько ресурсов для этого:
«Linux From Scratch». Здесь рассматривается процесс сборки операционной системы Linux (учебник переведён на много языков, в том числе и на русский). Тут, как и в остальных учебниках, вам предоставят все необходимые базовые знания.
Полагаясь на них можно попробовать себя в создании ОС.
Чтобы сделать программную часть ОС более профессиональной, присутствуют дополнения к учебнику: «Beyond Linux from Scratch», «Automated Linux from Scratch», «Cross Linux from Scratch» или «Hardened Linux from Scratch».
«The little book about OS development» Эрика Хэйлина и Адама Ренберга. Этот учебник разработан в рамках продвинутого курса информатики и на момент его написания авторы являлись студентами Королевского Института Технологий в Стокгольме.
В этой книге рассматривается разработка ОС для архитектуры x86 (причём с самого начала — с установки среды разработки).
В этом курсе рассказывается о многих интересных темах, включая многозадачность, управление памятью и разработку файловой системы.
- «Operation System Development Series» Broken Thorn Entertainment — серия из 25 уроков, посвящённых разработке ОС с нуля.
- Примечание Эти уроки рассчитаны на то, что вы уже знакомы с IDE и владеете как языком ассемблера, так и Cи.
- Вот ещё три книги, которые помогут вам ознакомиться с дисциплиной разработки ОС:
Сообщества, посвященные разработке ОС
Заниматься разработкой ОС в одиночку смело, но сложно. Гораздо проще найти единомышленников, которые, как и вы, решили попытать удачу в этом нелёгком деле. Существует пара подходящих мест:
Заключение
Обучение разработке ОС — достаточно сложная задача. Однако в процессе вы разберётесь в работе процессора и аппаратного уровня, что поможет лучше понимать работу и оптимизацию высокоуровневых приложений и их взаимодействие друг с другом. Ну и в глазах коллег вы наверняка будете выглядеть очень крутым (но это не точно).
Перевод статьи «How To Program Your Very Own Operating Systems (OS)»