Как настроить смартфоны и ПК. Информационный портал
  • Главная
  • Обзоры
  • Google chrome на всех операционных системах. Заглядываем под капот Chrome OS

Google chrome на всех операционных системах. Заглядываем под капот Chrome OS

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

Впрочем, были в этом и свои плюсы: для работы системы не требовалось мощное железо, а стоимость ноутбука не превышала 300 долларов. Это дешевле большинства устройств на Windows, не говоря уже о MacBook.

Уже не просто браузер

Charlie Brannan/flickr.com

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

Расчёт Google был верен: люди большую часть времени проводят в браузере. А точнее - в . Его доля составляет около 50%, что делает его самым популярным в мире. «Раз так, - решили в Google, - держите доступный девайс, в котором есть ваш любимый браузер со всевозможными расширениями». И всё, больше ничего лишнего. Интерфейс прост и лаконичен, его освоит даже ребёнок.

Кстати, о детях: чаще всего хромбуки закупаются для образования и корпоративного сегмента. Благодаря этому в первом квартале 2016 года в США ноутбуки с Chrome OS обошли по продажам ноутбуки Apple. Почти 2 миллиона против 1,76 миллиона - это серьёзное достижение браузерной ОС.

Но главный удар Google нанесла недавно, в мае 2016 года. Случилось то, чего ждали многие: в ближайшее время Chrome OS получит нативную поддержку Android-приложений. Владельцам хромбуков несказанно повезло, ведь уже в ближайшее время им будет доступен практически весь ассортимент Google Play! Сразу решается вопрос о количестве приложений и зависимости от интернета. Важно, что приложения не эмулируются, а являются нативными, то есть имеют доступ к Wi-Fi, оперативной памяти, процессору и другим необходимым компонентам.

По сути, теперь перед нами ещё одно Android-устройство, но с более широкими возможностями. Да, но для подавляющего большинства пользователей функциональности Chromebook будет достаточно.

Плюсы Chromebook


Kohichi Aoki/flickr.com

1. Цена

Начну с самого важного - стоимости хромбуков. В США недорогой ноутбук на Windows обойдётся в 400–700 долларов. Стоимость MacBook стартует с 899 долларов. В то же время цена большинства хромбуков не превышает 300 долларов. Отличный вариант для школьников, студентов и просто людей, которым ноутбук нужен только для того, чтобы в интернете посидеть да с документами поработать.

2. Простота

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

3. Большой выбор

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

4. Экосистема

Если вы владелец Android-смартфона, хромбук станет достойным дополнением к вашей экосистеме. Благодаря сервисам Google все данные синхронизируются. Точно так же можно работать и со сторонним софтом благодаря нативной поддержке Android-приложений.

Минусы Chrome OS


Oll Raqwe/flickr.com

1. Зависимость от Сети

Как ни крути, работа хромбуков завязана на Сети. Без интернета их возможности стремятся к нулю. Несмотря на то, что интернет сейчас есть везде, для многих это может стать серьёзной проблемой.

2. Отсутствие «взрослого» софта

Хромбуки не подойдут для серьёзной работы. Не получится установить Photoshop, AutoCAD и другой софт, с которым работают на Windows и OS X. Подобные девайсы больше подойдут тем, кто большую часть времени проводит в браузере, а также для тех, кто активно пользуется сервисами Google.

А что дальше?

Безусловно, за семь лет Google сделала огромный шаг, но, по словам экспертов, это только начало. После того как система начнёт поддерживать Android-приложения, её популярность возрастёт в разы.

Из забавного эксперимента она превратится в расширенную версию Android для бюджетных ноутбуков. И в таком случае станет конкурентом не Apple, которая ориентирована на премиум-сегмент, а Microsoft. Ведь она в основном зарабатывает на продаже софта для корпоративного сегмента и лицензий для продаж ноутбуков. Резкий рост популярности девайсов на Chrome OS может изрядно подпортить жизнь Microsoft.

Идея создать новую операционную систему Chrome OS созданную специально для мобильных компьютеров на базе уже созданного веб-браузера, выглядит как минимум странно. Хотя, если посмотреть с другой стороны, то становится очевидным, что владельцы и нетбуков большую часть времени проводят именно за чтением сайтов, а ставшие популярными облачные сервисы уже сейчас способны прийти на смену многих десктопных программ, таким как Microsoft Office и даже Adobe Photoshop.

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

Наперегонки со временем

Есть информация, что специалисты компании Google начали разработку Chrome OS еще в 2009 году. В те годы огромное количество экспертов критически относилось к концепции облачной операционной системы, созданной на основе только лишь . Постоянная необходимость быть подключенным к интернету существенно ограничивала сферу применения подобной операционной системы. Нужно сказать и сам браузер Chrome, не особо блистал и лишь «наращивал мускулы» для борьбы с такими конкурентами как Internet Explorer и Mozilla Firefox.

В 2010 году, спустя год после начала работы над ОС, широкой публике был продемонстрирован прототип ноутбука под кодовым названием Cr-48, который работал под управлением Chrome OS. Именно это устройство стало первым в пока немногочисленной линейке «хромбуков».

Уже сегодня, ассортимент ноутбуков с установленной Chrome OS стал намного шире и может похвастаться такими производителями как Acer и Samsung. Они создают «хромбуки» на безе процессора Intel Atom и даже на основе более мощных чипов Intel Celeron.

Чтобы попробовать в действии новую операционную систему Chrome OS (скачать можно тут: chromeos.hexxeh.net) уже сейчас, вовсе не обязательно покупать новенький «хромбук», тем более цены пока находятся на достаточно высоких уровнях. Можно просто запустить операционную систему от компании на своем старом компьютере. Хотя с морально устаревшим «железом» могут возникнуть проблемы при запуске.

Способы установки операционной системы на USB и виртуализацию через VirtualBox, можно прочитать тут: www.3dnews.ru

Рациональный подход

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

О начале загрузки Google Chrome OS вы узнаете из появившегося на экране логотипа с надписью Chromium.

Этой надписи на экране не стоит удивляться, ведь веб-браузер Chromium, взят за основу нашей версии Chrome OS, он также создан компанией Google и его единственное отличие от оригинального Chrome заключается лишь в открытости исходного кода. На нашем устройстве операционная система запустилась довольно быстро – от выбора загрузочного устройства до отображения окна с авторизацией прошло меньше 15 секунд.

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

Если вы первый раз запустили операционную систему Chrome OS, то сначала выберите локализированную версию системы (русская версия присутствует в списке) и установите нужную (в дополнение к установленной вами языковой системе обязательно добавляется английская, которая идет по умолчанию), после этого можете подключиться к одной из беспроводных сетей Wi-Fi.

После этого операционная система Chrome OS ознакомит вас со всем набором поддерживаемых жестов. К сожалению, наше сенсорное поле ноутбука, в отличие от созданных специально для этого оригинальных «хромбуков», не смогло их распознать. На этом процесс начальной настройки Google Chrome OS будет завершен, и вам не понадобится повторять его повторно при последующих загрузках операционной системы. В будущем для авторизации в ОС придется вводить только пароль учетной записи сервиса Gmail.

Настройка операционной системы Chrome OS

Чтобы открыть меню быстрых настроек операционной системы, нажмите кнопкой мыши по специальному системному лотку.

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

Открывается расширенное меню настроек в виде обычной вкладки веб-браузера Google Chrome.

Здесь стоит обратить внимание на отдельные параметры, отвечающие за визуальную составляющую всей операционной системы и отдельно браузера.

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

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

Для отображения дополнительных настроек Chrome OS, нажмите на кнопку «Показать дополнительные настройки». В дополнительных настройках можно поменять локализацию компьютера, часовой пояс, размер шрифта и масштаб отображаемых страниц.

Если хотите отключить в файловом менеджере отображение облачного сервиса Google Drive, то поставьте флажок в чекбоксе напротив данной опции.

Стандартные приложения Google Chrome OS

Популярный браузер Google Chrome, так же как и его свободно распространяемая копия Chromium, известен подавляющему большинству пользователей компьютеров. Работает он без каких-либо нареканий, если правда исключить проблему с плагином Adobe Flash. При переходе на страницу http://get.adobe.com/ru/flashplayer пользователю говорится, что плагин Adobe Flash установлен и не требует обновления.

При этом на страницах сайтов с активным содержимым нельзя ничего просмотреть. Спасает только то, что на популярном видеохостинге YouTube, видеоролики воспроизводятся с помощью технологии HTML5 и их можно посмотреть без использования плагина Adobe Flash.

Теперь давайте остановимся и подробно рассмотрим файловый менеджер системы Chrome OS. Запускается он нажатием по значку расположенному на рабочем столе операционной системы. Как и меню настроек, открывается он в виде отдельной вкладки веб-браузера. На левой стороне вкладки располагаются доступные диски, а с правой стороны показывается все содержимое выбранного диска.

В дереве каталогов система Chrome OS представлена в виде папки для загрузки файлов, облачным сервисом Google Drive для хранения файлов и системным разделом диска.

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

Все фотографии в операционной системе Chrome OS можно не только просматривать, но и редактировать в редакторе.

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

Рабочего стола Chrome OS можно нажатием привычной кнопки «PrintScm» расположенной на клавиатуре. Все сделанные снимки автоматически сохраняются в папку, в которую идет сохранение загруженных файлов из Интернета.

Установка дополнительных приложений

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

Для запуска магазина приложений Chrome Web Store в операционной системе, необходимо нажать на значок на рабочем столе. Попав на главную страницу Chrome Web Store, пользователь сразу увидит различные категории программ, а справа самые популярные приложения.

Нашим первым кандидатом на установку стал плагин «удаленный рабочий стол Chrome» применяемый для управления несколькими компьютерами через сеть интернет. Этот плагин можно легко найти в поисковой строке приложений. Чтобы добавить его в вашу операционную систему нажмите синюю кнопку «Установить», после этого щелкните по кнопке «Добавить» дождитесь окончания установки. После успешной инсталляции значок приложения появится на рабочем столе Chrome OS.

Для удаления этого приложения щелкните по значку приложения правой кнопкой мыши и выберите из контекстного меню пункт «Удалить из Chromium». Остальные дополнения устанавливаются и удаляются аналогичным образом.

Дополнительные приложения:

Google Mail Офлайн. Удобное приложение для оффлайнового доступа к вашему почтовому ящику Gmail.- IMO Instant Messenger. Довольно мощный клиент обмена мгновенными сообщениями с встроенной поддержкой различных сервисов, таких как ICQ. Skypc, Google Talk. Jabber и других.- Cut The Rope. Забавная игра, которая обязательно понравится пользователям всех возрастов.

Девайсы не вечны. Даже самый навороченный ноутбук через пару лет превращается в компьютер «среднего уровня». После 5-6 лет со дня покупки он и вовсе рискует стать тыквой.

Так произошло с моим старичком HP Pavilion g7. В 2011 году поставлялся ноутбук с фейловой Windows Vista, которая была тут же снесена на более адекватную Windows 7. Но производительность девайса в среде Windows в 2018 году оказалась уж очень сомнительной.

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

Как оказалось зря.

Что за Chrome OS

Google давно подумывала о выпуске собственной десктопной операционной системы. О проекте Chromium OS впервые услышали в ноябре 2009 года. Потом Google пообещала представить работающие под управлением этой ОС ноутбуки и к 2011 году все-таки анонсировала пару моделей.

Основа Google Chrome OS - гибридное ядро, некая смесь Linux и служб Google. Предусмотрена специально разработанная оконная система, а главным инструментом для работы выступает браузер. Разумеется, наличие постоянного доступа к интернету строго обязательно.

По сути, Chrome OS - это компактный дистрибутив, который потребляет минимум системных ресурсов ноутбука, а все основные вычислительные процессы осуществляются на серверах Google – в облаке.

В результате, получается отличное решение для маломощных компьютеров, которое можно запускать как с флешки, так и установив вместо популярных Windows и Linux систем.

Как установить Chrome OS

Перед установкой нужно немного подготовиться. Для Chrome OS необходимы:

Приступаем к установке. Подготовку флешки желательно выполнять на вашем основном ноутбуке, будь то Windows, Linux и Mac-совместимый лэптоп.

Шаг 1. Переходим на сайт Neverware по этой ссылке и качаем дистрибутив Chrome OS от CloudReady. Объем образа для macOS составляет чуть больше 900 МБ.

Загружайте 64-битную версию, если ваш ноутбук выпущен после 2007 года.

Шаг 2. Распаковываем загруженный архив.

Шаг 3. Для создания флешки понадобится браузер Google Chrome. Без него никак. Запускаем браузер и для установки расширения Chromebook Recovery Utility .

Шаг 4. Запускаем установленное расширение и перед тем, как нажать Начать , вставляем флешку или SD-карту (объем от 4 ГБ).

Дополнительно необходимо нажать на шестеренку и выбрать пункт Использовать локальный образ , указав путь к распакованному в пункте 2 дистрибутиву.

Теперь можно приступить к созданию флешки.

Шаг 5. Выбираете вашу флешку и нажимаете Начать .

В зависимости от скорости USB-флешки/SD-карты процесс создания накопителя занимает от 2 до 10 минут.

Шаг 5. MacBook откладываем в сторону и вставляем флешку в наш потрепанный жизнью ноутбук.

Включаем ноутбук и выбираем накопитель, с которого следует загрузиться. Для этого в настройка BIOS (вызывается нажатием клавиши Del сразу после включения) находим пункт First Boot Devise и выставляем USB Flash или имя вашей флешки.

После перезагрузки ноутбук увидит флешку и начнется процедура установки.

Шаг 6. Через пару секунд на экране появится логотип системы, а вам останется лишь указать желаемый язык системы и подключиться к WiFi. На этом установка Chrome OS окончена.

Обратите внимание , система требует постоянного подключения к интернету и наличия флешки или SD-карты. В связи с этим предпочтительнее использовать именно SD-карту.

После запуска с флешки можно установить систему и на встроенный в ноутбук накопитель. Но тут уже решать вам.

Впечатления от работы

Один из лучших способов проверить производительность ноутбука - запустить видео в высоком разрешении на том же YouTube.

На Windows 7 старенький HP Pavilion g7 в базовой комплектации с трудом вытягивал HD-ролики с разрешением 720p. На Windows 10 ситуация примерно такая же. И это при включенном режиме Высокой производительности .

После установки Chrome OS первым делом решил протестировать возможности старичка и запустил видео на YouTube.

360p/480p - летает (но хуже по качеству уже некуда)
720p - ни одной глюка, все плавно, перемотка срабатывает моментально
1080p - тормоза ощущались первые 2-3 секунды, а дальше стабильная и нормальная картинка без замедлений и утомительной буферизации
1440p - всему есть предел, и с таким разрешением ноутбук уже справляется с трудом.

Тем не менее, ноутбуку намного легче работать практически с «голой» системой. Все окна переключаются моментально, при вводе с клавиатуры нет никаких задержек и фризов, приложения запускаются моментально.
Да, о приложениях. В Chrome OS есть встроенный магазин приложений. Представлен он стандартным маркетплейсом, знакомым пользователям браузера Chrome.

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

Chrome OS - это удобный и быстрый способ воскрешения старого ноутбука, который еще послужит в качестве печатной машинки, устройства для серфинга, прослушивания видео или просмотра видеороликов.

Что десктопные приложения, да и сам десктоп рано или поздно переедет в веб, было понятно едва ли не после рождения JavaScript, поэтому появление Chrome OS во многом предсказуемо. И что облачную ОС выпустила именно Google, тоже абсолютно закономерно. Но давай попробуем отойти от бесконечных дебатов о будущем десктопа, разжигаемых консервативной частью айтишников, и посмотрим на Chrome OS с точки зрения технической реализации.

Дорога в облака

Google анонсировала Chrome OS летом 2009 года и уже в ноябре продемонстрировала ее публике и выложила исходники в открытый доступ под именем Chromium OS. Тогда операционка была довольно проста и представляла собой запущенный на полный экран браузер Chrome, работающий поверх сильно урезанного дистрибутива Ubuntu. В ней были реализованы все те же механизмы изоляции вкладок браузера и плагинов, все та же многопроцессная модель работы браузера, но в целом ничем особенным операционка не отличалась.

На протяжении следующих пяти лет Google непрерывно, но не особо афишируя свою работу развивала Chrome OS. Попутно она выпускала так называемые Chromebook’и и Chromebox’ы, ставшие популярными среди юниксоидов, которые сносили Chrome OS сразу после покупки. Постепенно Gooogle отказалась от Ubuntu в пользу Gentoo (судя по всему - чтобы получить возможность сборки пакетов без «бесполезных» для нее зависимостей и плюшки Hardened-версии дистрибутива) и заменила-таки однооконный режим на стандартный для десктопов многооконный со стандартной панелью задач снизу. Google сознательно отказалась от него в первых версиях Chrome OS, поскольку ОС была ориентирована на нетбуки с их небольшими экранами, но, судя по всему, пользователи этого не оценили.

Появились и офлайновые веб-приложения (доступные также в обычном Chrome) и, наконец, поддержка ряда приложений для Android. Последнее событие стало вполне ожидаемым после того, как руководство разработкой обеих операционок перешло в руки Сундара Пичая (Sundar Pichai), который всегда был ответствен за развитие Chrome, Chrome OS и веб-приложений Google.

Chrome OS развивается вместе с самим браузером, поэтому их версии совпадают. На момент написания статьи это была версия 41, но в отличие от браузера у Chrome OS нет готовых сборок для установки за исключением официально поддерживаемых Chromebook’ов и Chromebox’ов. Однако в Сети вполне можно найти неофициальные сборки на базе исходников Chromium OS. Например, всегда можно скачать ежедневные сборки для x86, x64 и ARM. Достаточно записать одну из них на флешку и загрузиться с нее. Однако надо быть готовым, что не все компоненты машины заведутся (в моем случае отвалился тачпад). К тому же Chromium OS не поддерживает Flash, DRM и Netflix, зато в ней есть доступ к консоли с правами root.

Базовые концепции

Ключевая идея Chrome OS в том, что по большому счету это ОС для тонких клиентов, где все, кроме графического интерфейса и браузера, находится в Сети. Фактически без подключения к интернету и аккаунта Google операционка даже не пустит пользователя внутрь (по крайней мере в первый раз). Файлы Google предлагает сохранять в свой Google Drive (покупателям Chromebook’ов компания дает 100 Гб), настройки, расширения и установленные приложения синхронизируются стандартным для браузера Chrome способом. Для печати предлагается использовать Google Cloud Print.

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

Все начинается с BIOS

Несмотря на то что Chromium OS может работать на компах со стандартным BIOS, Chromebook’и базируются на CoreBoot. И это не просто одна из их технических особенностей, а намеренная оптимизация. CoreBoot - полностью 32-битный «BIOS», лишенный балласта из большого количества кода инициализации оборудования, бесполезного в наши дни. Вкупе с оптимизациями Google он способен выполнить холодный старт от нажатия кнопки питания до загрузки ядра буквально за доли секунды.

Далее CoreBoot находит загрузочный раздел GPT и загружает в память бинарник, содержащий бутлоадер u-boot (он обычно используется во встраиваемой электронике) и ядро Linux, после чего отдает управление u-boot, и начинается почти стандартная для Linux-дистрибутивов процедура загрузки, включающая в себя монтирование корневого раздела, запуск демонов, графической системы и, наконец, интерфейса.

Интересно во всей этой процедуре то, что у загрузчика с ядром и корневой ФС есть «резервные копии» в отдельных разделах, и эта особенность используется для обновления ОС и отката в случае сбоя. Во время автоматического обновления Chrome OS вообще не трогает текущую установку, а вместо этого прописывает новую версию ОС в те самые «резервные разделы», которые становятся «текущими» после перезагрузки. В случае сбоя при загрузке новой версии ОС произойдет обратная перемена местами и юзер сможет получить доступ к заведомо рабочей системе (система сама способна понять, что она успешно загрузилась, и поставить соответствующий флаг на текущие GPT-разделы).

Более того, на каждом этапе передачи управления от одного компонента к другому (например, от CoreBoot к u-boot) происходит сверка цифровой подписи (в случае корневой ФС - поблочная сверка контрольных сумм на лету), при несовпадении которой система также откатится к прошлой версии. Это работает, потому что разделы с текущей версией системы монтируются только на чтение и пользователь даже случайно не сможет их изменить.

INFO

EEPROM Chromebook’а содержит не только две копии firmware (одна из которых резервная), но и неперезаписываемый recovery firmware, позволяющий загрузить систему с USB-флешки или карты памяти и произвести проверку и восстановление системы.

Кроме CoreBoot, EEPROM любого Chromebook’а включает в себя SeaBIOS - открытую реализацию BIOS, которая позволяет без лишних хлопот установить на устройство Windows или Linux.

Вездесущий Linux

Текущие версии Chrome OS основаны на Gentoo Linux с тем исключением, что вместо стандартной для данного дистрибутива системы инициализации OpenRC здесь задействован убунтовский Upstart. По сравнению с обычным дистрибутивом Linux система сильно урезана, поэтому загружать тут особого нечего и стартует она буквально за секунду. Обычного терминала нет, но есть местный shell crosh, доступный по.

Выполнив в нем команду shell, мы получим доступ к стандартному bash с правами root (в Chromium OS, естественно) и сможем исследовать систему. Здесь есть всем нам известные демоны rsyslogd, dbus-daemon (D-Bus используется в Chrome OS для обмена данными между браузером и остальными частями системы), wpa_supplicant (аутентификация в Wi-Fi-сетях), dhcpcd, иксы, ModemManager (работа с 3G-модемами), udev, ConnMan (управляет соединениями с сетью) плюс более десятка специфичных для Chrome OS демонов, отвечающих в том числе за обновление системы (update_engine), работу с TPM-модулем (chapsd), шифрование домашнего каталога (cryptohomed), отладку (debugd) и другие задачи.

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

  1. Запустить X-сервер.
  2. Инициализировать переменные окружения для браузера Chrome.
  3. Создать необходимые каталоги, файлы и правила cgroups для Chrome.
  4. Запустить Chrome.
  5. Вызвать Upstart-событие login-prompt-visible, в результате чего на экране появится окно логина.

Во время этого процесса действительно не запускаются какие-либо компоненты, отвечающие за формирование «рабочего стола» (за исключением окна логина). Его отрисовкой занимается сам браузер, полагаясь на фреймворк Aura, включающий в себя низкоуровневые функции для работы с графикой и окнами (с хардварным ускорением через DRI) и окружение рабочего стола Ash, которое отрисовывает панель задач, декорации окон, Google Now и другие стандартные элементы интерфейса ОС. Являясь частью браузера Chrome, они, тем не менее, работают внутри нескольких независимых процессов.

INFO

В случае сбоя загрузки системы, который регистрируется, если процесс браузера не может быть запущен в течение 30 с, Chromium OS автоматически запускает SSH-сервер и перезапускает опрос ядра на наличие оборудования с помощью команды udevtrigger.

Благодаря интеграции Aura и Ash в сам Chrome получить рабочий стол Chrome OS можно в любой ОС, запустив браузер с флагом —open-ash.

Безопасность

Помимо уже рассмотренных методов обеспечения безопасности и целостности данных, таких как безопасная загрузка системы, зашифрованный домашний каталог с кешированными данными (шифрование выполняется отдельно для каждого юзера), а также стандартных для браузера Chrome методов изоляции процессов, плагинов и Native Client от системы (здесь используется механизм seccomp-bpf, позволяющий фильтровать обращения к системным вызовам), в Chrome OS задействован ряд других подходов к обеспечению безопасности.

Центральное место среди них занимает minijail - небольшое приложение, применяемое для изоляции системных сервисов (демонов) и других компонентов системы. Это очень гибкое приложение, которое позволяет выполнять такие функции, как наделение приложения «возможностями» или их отзыв (capabilities - специальная подсистема ядра Linux для наделения не SUID-бинарников некоторыми возможностями root), запереть его в chroot, отозвать права root, установить лимиты на ресурсы (rlimits), разместить процесс в выделенных пространствах имен (на манер LXC и Docker) и применить к нему правила cgroups.

Если взглянуть на вывод ps aux|grep minijail (см. скриншот) в работающей системе, то можно заметить, что minijail используется для запуска демонов с теми или иными настройками, но число таких демонов по отношению ко всем работающим в системе не так уж и велико. Судя по документам разработчиков , в будущем minijail планируют существенно расширить и применять его к гораздо большему количеству компонентов системы, включая графический стек и Chrome. Пока же что есть, то есть.

Из остальных средств обеспечения безопасности можно отметить применение флагов компилятора для минимизации риска срыва стека (-fno-delete-null-pointer-checks, -fstack-protector, FORTIFY_SOURCE), задействование «усиленного» механизма ASLR (Address space layout randomization) в ядре Linux (патч PaX), использование capabilities вместо SUID-бинарников где это возможно, ограничения на загрузку модулей ядра, использование модуля TPM (в Chromebook’ах) для хранения ключей шифрования диска и пароля пользователя, запрет на запуск обычных ELF-бинарников юзером и некоторые другие вполне стандартные техники, многие из которых пересекаются с Android и Hardened Gentoo.

Выводы

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

Лучшие статьи по теме