Программная платформа
Платфо́рма (компьютерная) — совокупность компьютеров, совместимых между собою в том или ином смысле.
Можно различить как минимум четыре толкования этого термина, так что одна платформа с точки зрения одного толкования может распасться на компьютеры совсем разных платформ с точки зрения другого.
Аппаратная платформа
Основная статья: Аппаратная платформа компьютера
Рассматривается совместимость с точки зрения аппаратных компонент, работы шин и т.п. Аппаратную платформу называют также архитектурой. Примером аппаратной платформы является IBM PC.
Платформа процессора
Основная статья: Архитектура системы команд
Процессорная платформа или архитектура системы команд связана со способностью процессора выполнять один и тот же код, при этом игнорируются различия во внутреннем устройстве процессоров и их интерфейсе. Примером платформы процессора является IA-32.
Платформа операционной системы
Рассматривается совместимость или сходство на уровне операционных систем, например, системных вызовов, файловых систем и пользовательской среды. Примером платформы операционной системы является POSIX.
Сочетание этого толкования и платформы процессора приводит к понятию совместимости на уровне исполняемых файлов.
Виртуальные машины
Рассматривается возможность компьютерных систем, различных во всех трёх предыдущих смыслах, выполнять одно и то же программное обеспечение в так называемой виртуальной машине. Примером виртуальной машины является кроссплатформенном.
Ссылки
Wikimedia Foundation . 2010 .
- Программная библиотека
- Программная лицензия университета Беркли
Полезное
Смотреть что такое «Программная платформа» в других словарях:
- Java (программная платформа) — Не следует путать с JavaScript. Программная платформа Java ряд программных продуктов и спецификаций компании Sun Microsystems, ранее независимой компании, а ныне дочерней компании корпорации Oracle, которые совместно предоставляют систему для… … Википедия
- Национальная программная платформа — Эта статья предлагается к удалению. Пояснение причин и соответствующее обсуждение вы можете найти на странице Википедия:К удалению/23 ноября 2012. Пока процесс обсуждени … Википедия
- аппаратно-программная платформа — 3.1 аппаратно программная платформа: Единый комплекс средств вычислительной техники и системных программ. Источник … Словарь-справочник терминов нормативно-технической документации
- Microsoft Tablet PC — HP Compaq tablet PC с поворотным экраном Microsoft Tablet PC аппаратно/программная платформа, представляющая собой бесклавиатурный или клавиатурный планшетный компьютер, который благодаря операционной системе Microsoft Windows Tablet … Википедия
- S40 — Series 40 S40 (Series 40, Nokia Series 40) наиболее широко используемая программная платформа и интерфейс пользовательских приложений для широкого спектра телефонов Nokia среднего класса … Википедия
- .NET Framework — Для термина «.NET» см. другие значения. .NET Framework Тип Комп … Википедия
- Смартфон — Samsung Galaxy Nexus смартфон на базе Android OS … Википедия
- Список поглощений Oracle — Эта страница информационный список. В данном списке приводятся сведения об опубликованных поглощениях, осуществлённых корпорацией Oracle, включая приобретение компаний и отдельных подразделений … Википедия
- Mobilinux — Разработчик MontaVista Software Семейство ОС Unix like … Википедия
- ГОСТ Р 53622-2009: Информационные технологии. Информационно-вычислительные системы. Стадии и этапы жизненного цикла, виды и комплектность документов — Терминология ГОСТ Р 53622 2009: Информационные технологии. Информационно вычислительные системы. Стадии и этапы жизненного цикла, виды и комплектность документов оригинал документа: 3.1 аппаратно программная платформа: Единый комплекс средств… … Словарь-справочник терминов нормативно-технической документации
- Обратная связь: Техподдержка, Реклама на сайте
- Путешествия
Экспорт словарей на сайты, сделанные на PHP,
WordPress, MODx.
- Пометить текст и поделитьсяИскать в этом же словареИскать синонимы
- Искать во всех словарях
- Искать в переводах
- Искать в ИнтернетеИскать в этой же категории
Классификация платформ для разработки
Если вы введете в поисковике «best java framework», то, вероятнее всего, наткнетесь на эту статью. В ней превосходно описано состояние дел в мире Java Enterprise, но при этом, как мне кажется, не хватает очень важной детали — классификации перечисленных фреймворков. Предлагаю посмотреть на эту экосистему под другим углом и не ограничиваться Java-экосистемой.
По сути, выбор лучшего фреймворка (или их набора) для разработки приложения — это поиск оптимального баланса между следующими критериями:
- Диапазон применения — какую часть приложения можно написать с помощью этого фреймворка? Сколько фреймворков понадобится — один или несколько?
- Скорость разработки — сколько времени сэкономит фреймворк?
- Управляемость и гибкость — какие у фреймворка ограничения по архитектуре приложения, производительности и т.д.?
Классификация фреймворков
Я решил совместить эти критерии, основные самые популярные фреймворки разных классов и их особенности в одной диаграмме, и вот что получилось:
Языки программирования высокого уровня, или подход «Без фреймворков»
«Без фреймворков» — это вырожденный случай, который подходит для любых задач и отличается наибольшей управляемостью и гибкостью. Очевидно, что этот способ разработки корпоративных приложений самый медленный, ведь, по сути, вам приходится изобретать велосипед. Этот подход хорош для создания узкоспециализированных фреймворков, которые, в свою очередь, повышают скорость разработки.
Узкоспециализированные фреймворки
Это самый многочисленный класс. Все его представители упрощают разработку за счет повышения уровня абстракции и предоставления понятного API. При этом каждый такой фреймворк предназначен для своей узкой области. Связать воедино ORM, Middleware, UI, Messaging и прочие фреймворки — задача нетривиальная. У этого подхода есть своё преимущество — неплохой баланс между скоростью разработки и действительно высокой гибкостью.
Генераторы кода/Агрегаторы
Этот класс позволяет ускорить разработку на стадии старта проекта. По сути, генераторы кода и агрегаторы просто выстраивают структуру приложений, основанных на узкоспециализированных фреймворках, о которых я говорил выше. Например, JHipster генерирует приложение на базе Spring с пользовательским интерфейсом на Angular. Однако, на других стадиях такие фреймворки уже не сильно или вообще не помогут.
Высокоуровневые full-stack фреймворки
Этот класс — следующий после Узкоспециализированных фреймворков уровень абстракции. Готовая инфраструктура, которую предлагают такие фреймворки, позволяет создавать корпоративные full-stack системы в разы быстрее. Например, Платформа CUBA предоставляет готовую архитектуру для создания 3-слойных приложений и включает в себя функции, без которых редко обходятся корпоративные системы: soft deletion, data-aware компоненты, хранилище файлов, а также модули высокого уровня: аутентификация и авторизация, аудит данных, и т.п. Этот класс, пожалуй, лучше всего подходит для разработки систем типа ERP, бизнес-приложений или другого пользовательского ПО для корпоративного сегмента.
Low/No Code фреймворки
В таких фреймворках вы вообще не контролируете кодовую базу и можете писать только отдельные кусочки логики в заданных точках расширения. Если вам не интересен сколь-нибудь ощутимый контроль за своим решением в плане производительности, деплоймента, интеграций и т.п. — тогда это самый быстрый способ создания приложений. Однако будьте готовы к тому, что однажды вы не сможете обойти архитектурные ограничения таких фреймворков.
Итоги
Чтобы выбрать подходящий фреймворк для разработки корпоративной системы, недостаточно просто поискать в интернете «top frameworks for enterprise» и взять первый из списка. Во-первых, для каждого конкретного проекта нужно найти оптимальный баланс между Применимостью, Скоростью разработки, а также Гибкостью и Управляемостью. После этого можно приступить непосредственно к выбору фреймворка из подходящего класса. При выборе уже самого фреймворка стоит учитывать уже более широкий круг параметров, например, предпочтительный язык программирования, размер сообщества, качество поддержки вендора, истории успеха и т.д.
Для наглядности я внёс в одну таблицу все классы фреймворков и типы задач, которые они решают лучше всего:
Подход «Без фреймворков»
- Узкоспециализированные фреймворки
- Низкоуровневые продукты, такие как in-memory grids, алгоритмы обработки больших данных, распознавание изображений и т.д.
- Корпоративные приложения с уникальной или нетипичной архитектурой
- Микросервисы
- Свой собственный backend
- Платформы E-commerce
- Enterprise Service Bus
- Значительное ускорение на стадии запуска тех же типов проектов, что и в классе узкоспециализированных фреймворков
Высокоуровневые Full-stack фреймворки
- ERP-приложения
- Собственные BPMS-приложения
- Управление мастер-данными
- Сеть бизнес-приложений
- Собственные приложения с типовыми энтерпрайз-требованиями
Low/No Code фреймворки
- Простые сайты
- Стандартные интернет-магазины
- Корпоративные порталы
- Простые/Типовые BPMS
- Простые CRUD-приложения (учётные системы)
Компьютерная платформа
Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена.
Вы можете отредактировать эту статью, добавив ссылки на авторитетные источники.
Эта отметка установлена 13 мая 2011.
Вы можете помочь проекту, объединив статьи (cм. инструкцию по объединению).
В случае необходимости обсуждения целесообразности объединения, замените этот шаблон на шаблон > и добавьте соответствующую запись на странице ВП:КОБ.
Платфо́рма (компьютерная) — аппаратный и/или программный комплекс, служащий основой для различных вычислительных систем.
Аппаратная платформа
Основная статья: Аппаратная платформа компьютера
Нижний слой многоуровневой организации вычислительной системы (аппаратура, операционная система, прикладное программное обеспечение), на который опираются ОС и прикладное ПО. Аппаратные платформы отличаются друг от друга архитектурой центрального процессора и используемыми шинами связи функциональных блоков.
Каждой аппаратной платформе соответствуют совместимые с ней операционные системы и прикладные программы, которые могут на ней запускаться.
Платформа ОС
Представляет собой общую организацию исполнения прикладных программ, задавая, например, порядок запуска программы, схему использования ею адресного пространства, зафиксированные в архитектуре операционной системы, плюс — интерфейс для программирования приложений (API), на уровне операционной системы.
При рассмотрении совместимости, или сходства, на уровне операционных систем, например, системных вызовов, файловых систем и пользовательской среды, при сравнении родственных операционных систем (например, UNIX) или семейства (например, Microsoft Windows), речь идет о совместимости на уровне API операционной системы, например, в рамках семейства ОС, а не абстрактного понятия «платформы»
Примеры платформ ОС
- Win32 — Win32 API,
- API POSIX для ОС Unix.
Кроссплатформенное программное обеспечение
Кроссплатформенность программного обеспечения — возможность исполнять его, без перекомпилирования программы, как на различных аппаратных платформах, так и под управлением разных операционных систем (иначе говоря, возможность запуска исполняемого файла на платформах различных ОС).
Типичная цель создания кроссплатформенного программного обеспечения — «пережить» ту конкретную платформу, для которой оно создавалось.
Примерами программного обеспечения, выполняющегося на разных аппаратных платформах и под управлением разных операционных систем, являются разнообразные программы, написанные на языках программирования для виртуальных машин, таких, как, например, PHP, Perl, Python, Java, и многие другие, а также — кроссплатформенные среды разработки приложений.
Ссылки
Литература
- Э. Таненбаум. Архитектура компьютера = Structured Computer Organization. — 5-е изд. (Классика Computer Science). — СПб. : Питер, 2007. — С. 848. — ISBN 5-469-01274-3
- Барри Брэй. Микропроцессоры Intel: 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Processor, Pentium 4. Архитектура, программирование и интерфейсы. — 6-е изд. — СПб. : БХВ-Петербург, 2005. — С. 1328. — ISBN 5-94157-422-3
Это заготовка статьи о компьютерах. Вы можете помочь проекту, исправив и дополнив её. Это примечание по возможности следует заменить более точным. |
- Программное обеспечение
- Компьютерное аппаратное обеспечение
- Платформы программирования
Wikimedia Foundation . 2010 .
Понятие платформы программного обеспечения
В традиционном понимании платформа — это комплекс аппаратных и программных средств, на котором функционирует программное обеспечение пользователя ЭВМ. Основа аппаратной платформы (hardware-платформы) — процессор. Тип процессора определяет архитектуру аппаратных средств — аппаратную платформу, т. е. тип и характеристики компьютера.
Понятия «программная платформа» (software-платформа), или «программное обеспечение» вошли в жизнь с развитием компьютерной индустрии. Без программного обеспечения компьютер — всего лишь электронное устройство, которое не управляется и потому не может приносить пользы. В зависимости от функций, выполняемых программным обеспечением, его можно разделить на две большие группы: системное и прикладное программное обеспечение.
^ Системное программное обеспечение— это «программная оболочка» аппаратных средств, предназначенная для отделения остальных программ от непосредственного взаимодействия с оборудованием и организации процесса обработки информации в компьютере. Прикладное программное обеспечение предназначено для решения определенных задач пользователя. К системному программному обеспечению относятся такие типы программ, как операционные системы, различные сервисные средства, функционально дополняющие возможности операционных систем, инструментальные средства (системы управления базами данных, программирования, оболочки экспертных систем).
Основная компонента системного программного обеспечения — операционная система выполняет следующие функции:
1) организация многоцелевой работы компьютера, при которой возможно одновременное выполнение нескольких программ пользователя;
2) организация хранения программ и данных пользователя на носителях информации и, возможно, санкционирование доступа к этой информации;
3) обеспечение взаимодействия с пользователем на основе графического интерфейса;
4) обеспечение сетевых возможностей, т. е. возможности доступа к информации, хранимой в памяти другого компьютера локальной или глобальной сети.
Последняя функция в настоящее время стала стандартной для любой современной операционной системы. Тем не менее, проводя классификацию операционных систем, можно выделить две их группы по данному признаку. Это, во-первых, системы, предназначенные для использования в узлах коммуникаций корпоративных сетей, и системы для рабочих станций сети. Примером таких систем могут служить Microsoft Windows NT Server 4.0, Novell Netware 4.x (для узлов коммуникаций) и Microsoft Windows NT Workstation 4.0 — (для рабочих станций).
Сравнительный анализ операционных систем: Windows, Linux, MacOS
Операционная система — это комплекс взаимосвязанных системных программ, которые загружаются при включении компьютера и постоянно находятся в памяти компьютера. Они производят диалог с пользователем, осуществляют управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускают другие (прикладные) программы на выполнение. Операционная система обеспечивает пользователю и прикладным программам удобный способ общения (интерфейс) с устройствами компьютера.
Основная причина необходимости операционной системы состоит в том, что элементарные операции для работы с устройствами компьютера и управления ресурсами компьютера — это операции очень низкого уровня, поэтому действия, которые необходимы пользователю и прикладным программам, состоят из нескольких сотен или тысяч таких элементарных операций.
Например, накопитель на магнитных дисках “понимает” только такие элементарные операции, как включить/выключить двигатель дисковода, установить читающие головки на определенный цилиндр, выбрать определенную читающую головку, прочесть информацию с дорожки диска в компьютер и т.д. И даже для выполнения такого несложного действия, как копирование файла с одной дискеты на другую (файл — это поименованный набор информации на диске или другом машинном носителе), необходимо выполнить тысячи операций по запуску команд дисководов, проверке их выполнения, поиску и обработке информации в таблицах размещения файлов на дисках и т.д.
Операционная система скрывает от пользователя все эти сложные и ненужные подробности и предоставляет ему удобный интерфейс для работы. Она выполняет также различные вспомогательные действия, например копирование или печать файлов. Операционная система осуществляет загрузку в оперативную память всех программ, передает им управление в начале их работы, выполняет различные действия по запросу выполняемых программ и освобождает занимаемую программами оперативную память при их завершении.
В функции операционной системы входит:
осуществление диалога с пользователем;
ввод-вывод и управление данными;
планирование и организация процесса обработки программ;
распределение ресурсов (оперативной памяти и кэша, процессора, внешних устройств);
запуск программ на выполнение;
всевозможные вспомогательные операции обслуживания;
передача информации между различными внутренними устройствами;
программная поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).
Операционные системы можно разделить на группы (классифицировать) по следующим признакам:
По количеству пользователей: однопользовательская операционная система (обслуживает только одного пользователя); многопользовательская (работает со многими пользователями)
По числу процессов: однозадачные (обрабатывают только одну задачу — уже не используются); многозадачные (располагает в оперативной памяти одновременно несколько задач, которые попеременно обрабатывает процессор)
По типу средств вычислительной техники: однопроцессорные, многопроцессорные (задачи могут выполняться на разных процессорах; серверы, как правило, многопроцессорные), сетевые (обеспечивают совместное использование ресурсов всеми выполняемыми в сети задачами).
По типу интерфейса (способа взаимодействия с пользователем) операционные системы делятся на 2 класса: ОС с интерфейсом командной строки и ОС с графическим интерфейсом.
Существует несколько видов операционных систем: Windows, Lunix, Mac os. Наиболее распространенной является операционная система Windows. Рассмотрим сначала ее, и остальные системы будем сравнивать с Windows.
Данные за 2006 год по использованию операционных систем в мире:
Все другие ОС — 1%
Сравнительный анализ операционных систем
История Windows (разработка фирмы Microsoft) берет свое начало в 1986 году, когда появилась первая версия системы, но популярность она завоевала далеко не сразу — в 1990 году, когда вышла версия Windows 3.0. Популярность новой версии Windows объяснялась несколькими причинами. Графический интерфейс позволяет работать с объектами вашего компьютера не с помощью команд, а с помощью наглядных и понятных действий над значками, обозначающими эти объекты. Возможность одновременной работы с несколькими программами значительно повысила удобство и эффективность работы. Кроме того, удобство и легкость написания программ для Windows привели к появлению все больше разнообразных программ, работающих под управлением Windows. Наконец, лучше была организована работа с разнообразным компьютерным оборудованием, что также определило популярность системы. Последующие версии Windows были направлены на повышение надежности, а также поддержку средств мультимедиа (версия 3.1) и работу в компьютерных сетях (версия 3.11).
Процесс развития операционных систем не стоит на месте, и в 1995 появилась система Windows 95, ставшая новым этапом в истории Windows: значительно изменился интерфейс, выросла скорость работы программ, в состав системы был включен браузер Internet Explorer.
Продолжением развития Windows 95 стала операционная система, появившаяся в 1998 году (Windows 98). При сохранившемся интерфейсе внутренняя структура была значительно переработана. Много внимания было уделено работе с Интернетом, а также поддержке современных протоколов передачи информации — стандартов, обеспечивающих обмен информацией между различными устройствами. Кроме того, особенностью Windows 98 является возможность работы с несколькими мониторами.
Следующим этапом в развитии Windows стало появление Windows 2000 и Windows ME (Millennium Edition — редакция тысячелетия). Система Windows 2000 разработана на основе Windows NT и унаследовала от нее высокую надежность и защищенность информации от постороннего вмешательства. Операционная система Windows ME стала наследницей Windows 98, но приобрела многие новые возможности. Прежде всего, это улучшенная работа со средствами мультимедиа, возможность записывать не только аудио, но и видеоинформацию, мощные средства восстановления информации после сбоев и многое другое.
Операционная система Microsoft Windows XP (от англ. eXPerience — опыт), известная также под кодовым наименованием Microsoft Codename Whistler, является ОС семейства Windows, созданной на базе технологии NT. Первоначально в планы корпорации Microsoft входила разработка двух независимых операционных систем нового поколения. Первый проект получил рабочее название Neptune, эта ОС должна была стать очередным обновлением Windows Millennium Edition, новой системой линейки Windows 9X. Второй проект, называвшийся Odyssey, предполагал создание ОС на платформе Windows NT, которая должна была придти на смену Windows 2000. Однако руководство Microsoft посчитало нецелесообразным рассредоточивать ресурсы на продвижение двух разных ОС, вследствие чего оба направления разработок были объединены в один проект — Microsoft Whistler. Возможно, именно благодаря этому решению Windows XP объединяет в себе достоинства уже знакомых пользователям операционных систем предыдущих поколений: удобство, простоту в инсталляции и эксплуатации ОС семейства Windows 98 и Windows ME, а также надежность и многофункциональность Windows 2000. В настоящее время Windows XP для настольных ПК и рабочих станций выпускается в трех модификациях: Home Edition для домашних персональных компьютеров, Professional Edition — для офисных ПК и, наконец, Microsoft Windows XP 64bit Edition — это версия Windows XP Professional для персональных компьютеров, собранных на базе 64-битного процессора Intel Itanium с тактовой частотой более 1 ГГц.
Если сравнить Windows XP с более ранними версиями Microsoft Windows, в новой операционной системе легко обнаружить множество значительных отличий. Несмотря на то, что эта ОС была разработана на основе платформы NT и, на первый взгляд, по своим характеристикам во многом схожа с Microsoft Windows 2000, фактически Windows XP относится к принципиально иному поколению операционных систем семейства Windows. Теперь пользователь Windows не привязан к какому-либо стандартному интерфейсу, устанавливаемому в системе по умолчанию. Если вам не нравится традиционный вид окон, элементов управления и Панели задач, доставшийся новой ОС «в наследство» от Windows 2000, то вы можете без труда изменить их, загрузив из Интернета любой из сотен специально разработанных «Тем». Традиционное Главное меню, открывающее доступ к установленным на компьютере программам, хранящимся на дисках документам и настройкам операционной системы, также претерпело ряд значительных изменений. Теперь при нажатии кнопки Пуск появляется динамическое меню, содержащее значки лишь пяти программ, которыми пользуется наиболее часто. Благодаря этому можно начать работу с нужными приложениями значительно быстрее. Здесь же расположены кнопки Выход из системы (Log Off) и Выключение компьютера (Turn Off Computer), позволяющие завершить текущий сеанс работы с Windows и выключить компьютер.
В среде Microsoft Windows пользователю часто приходится одновременно работать с несколькими документами или набором различных программ. При этом неактивные приложения сворачиваются в Панель задач, вследствие чего она рано или поздно переполняется значками, и переключение между задачами становится затруднительным. Для того чтобы разгрузить Панель задач и освободить больше рабочего пространства для отображения значков запущенных приложений, в Windows XP используется так называемый алгоритм группировки задач, согласно которому однотипные программы, работающие на компьютере одновременно, объединяются в логическую визуальную группу.
Windows имеет существенные проблемы с безопасностью в плане удаленного взлома системы. Windows вообще имеет в своей поставке (т.е. сразу после инсталляции) большое количество «дыр», позволяющих хакерам не только получить административный доступ к системе, но и запускать на ней произвольный код. Справиться с этой проблемой частично помогает установка патчей, регулярно выпускаемых разработчиками. Тогда продукты от Microsoft становятся в основном защищенными, однако, если не скачивать обновления, операционные системы могут вновь оказаться открытыми для хакеров.
Впрочем, причины того, что в Windows, самой распространенной в мире операционной системе, постоянно находят дыры, проистекают не столько из-за принципиальной «дырявости» самой операционной системы, сколько от наплыва желающих ее взломать. Если бы на месте Windows (по распространенности) оказалась какая-то другая операционная система, то еще неизвестно, сколько в ней бы стали выявлять дыр. А раз система непопулярна, то смысл выискивать в ней дыры теряется.
Альтернативные операционные системы
Большинство людей уверены, что для работы на компьютере должна быть установлена Windows. Об альтернативных операционных системах знают далеко не все пользователи, еще меньшее число пробовали эти операционные системы в деле.
7 сентября 1991 года финский студент Линус Торвальдс выложил в сети исходный код того, что впоследствии развилось в операционную систему Linux (Линукс). Самое принципиальное отличие Linux от Mac OS и Windows заключается в том, что Linux – это свободное ПО, которое распространяется под лицензией GPL. Для обычного пользователя это означает, что большинство дистрибутивов (разновидностей) Linux являются бесплатными, а для программистов – что они могут свободно и бесплатно использовать программный код как самой Linux, так и входящих в неё программ и на их основе создавать свои продукты. Результатом такой политики явилось то, что сейчас имеется более тысячи различных дистрибутивов Linux. Конечно, они не равноценны и далеко не все достойны внимания, но сама идея создания разных дистрибутивов для разных задач довольно интересна.
Например, есть Puppy Linux размером всего 97,6 мегабайта и работающий даже на Pentium 166 MMX при 128 мегабайтах оперативной памяти. Заметим, что это вполне современная ОС с поддержкой беспроводных интерфейсов и прочих модных вещей. А с другой стороны, есть дистрибутив Debian, полный вариант которого вместе с обновлениями состоит из 4 DVD и содержит огромное количество различных программ. Есть специальные ОС Linux для работы с мультимедиа (Ubuntu Studio, JackLab Audio Distribution, 64 Studio), корпоративные OC (они, как правило, не поддерживают самые последние новинки, зато очень надежны, хорошо защищены, несут в себе полный набор офисного софта). Есть дистрибутивы, предназначенные для учебных заведений (Edubuntu, Skolelinux).
Отдельно можно упомянуть коммерческие дистрибутивы. Они не бесплатны. В основном это корпоративные или специальные варианты Linux, хотя есть и версии для домашних пользователей. Деньги в таких дистрибутивах в основном берутся за техподдержку.
Ещё одно важное отличие Linux от Windows заключается в том, что дистрибутивы Linux поставляются с большим набором прикладного ПО. То есть после установки на компьютере у вас есть полностью готовая к работе система.
В большинстве ОС Linux по умолчанию используется один из двух графических интерфейсов – GNOME или KDE, поэтому даже при смене одного дистрибутива Linux на другой для пользователя никаких проблем не возникает, он попадает в знакомое графическое окружение. Оба интерфейса имеют приблизительно одинаковое распространение. Если охарактеризовать их совсем кратко, то внешне KDE напоминает рабочий стол Windows, а GNOME – рабочий стол Mac OS. Сходство это, конечно, только внешнее. KDE имеет огромное количество инструментов настройки, так что внешний вид и поведение системы можно подогнать под самый прихотливый вкус. Сильной частью GNOME является его простота и интуитивно понятный интерфейс.
Графический интерфейс Windows слишком тесно интегрирован с операционной системой. В противоположность этому, графический интерфейс Linux не встроен в ядро. Соответственно, операционную систему можно загрузить в режиме командной строки, не подключая GUI (Graphical user interface — графический пользовательский интерфейс). Это одно из важнейших преимуществ Linux, позволяющее запускать ее на компьютерах с минимальной конфигурацией.
Важным достоинством операционной системы без GUI является ее повышенная надежность, связанная с меньшим числом работающих компонентов, каждый из которых может стать причиной сбоя. Например, Windows не загрузится по вине плохо написанного графического драйвера монитора, что в принципе невозможно в конфигурации Linux без GUI.
Достоинство Linux в том, что это гибкая ОС. Пользователь может выбрать тот дистрибутив Linux, который больше подходит для решения его задач, а затем ещё и оптимизировать систему «под себя». Для большинства настроек сейчас уже не требуется лезть в консоль или править конфигурационные файлы, все делается через графический интерфейс. Конечно, у такой гибкости есть и оборотная сторона: «не продвинутому» пользователю бывает трудно сделать выбор, так как он обычно не может потратить много времени на изучение достоинств или недостатков разных дистрибутивов, интерфейсов или программ.
Linux идеально подходит для администрирования, т.к. изначально была приспособлена к дистанционному управлению, поскольку произошла от UNIX. Первыми UNIX-машинами были дорогие мини-компьютеры, к которым через последовательные порты подключалось множество терминалов. Единственным различием между локальным и удаленным соединением была более высокая скорость локальной связи (от 4800 бит/с до 19 200 бит/с) по сравнению со скоростью коммутируемого доступа (110, 300 или 1200 бит/с). При этом в обоих случаях применялось одно и то же коммуникационное программное обеспечение, независимо от того, подключен терминал напрямую или через пару модемов и телефонную линию. Даже сегодня, когда UNIX и Linux обзавелись графическим интерфейсом, установка сеанса связи остается одинаково простой на удаленной и локальной машине (при условии, что пользователь имеет право на запуск сеанса с удаленного хоста). Таким образом, если для управления расположенным в другой стране компьютером с Linux мне нужно лишь подключиться к нему с помощью программы telnet, то для решения той же задачи с сервером Windows придется в эту страну съездить.
В связи с тем, что программы для Linux в большинстве своем относятся к свободному ПО, можно сказать, целая армия энтузиастов и некоторое количество оплачиваемых сотрудников пишут код, тестируют программы и занимаются их локализацией.
За годы работы, разумеется, накоплено огромное количество программного обеспечения. Самый простой способ установки ПО для Linux – это установка программ из бинарных файлов (пакетов), которые хранятся в репозиториях (хранилищах данных) того или иного дистрибутива. То есть вам не нужно искать по всему интернету нужную программу. Просто с помощью «менеджера пакетов ОС» выбираете нужную вам программу, и она автоматически скачивается и устанавливается на компьютер. Величина репозиториев зависит от конкретного дистрибутива Linux. Например, репозитории Ubuntu содержат более 23 тыс. пакетов.
Несмотря на очень большой объём ПО, написанного для Linux, пользователи, мигрировавшие с Windows, столкнутся с тем что, часть ПО будет для них незнакомым. Это связанно с тем, что далеко не все программы кроссплатформенны и имеют версии как для Windows, так и для UNIX-систем. Среди самых известных кроссплатформенных программ стоит упомянуть браузеры Firefox и Opera, почтовый клиент Thunderbird, офисный пакет OpenOffice, графический редактор Gimp, программа для просмотра PDF-файлов Adobe Acrobat, FTP-клиент FileZilla, торрент-клиент Azureus, WEB-сервер Apache.
Наибольшие же проблемы возникают со специализированным профессиональным софтом, значительная часть которого написана только для Windows-систем. Равноценной замены некоторым приложениям в Linux нет. Это, к примеру, всем известный Photoshop, AutoCAD, программы для видеомонтажа, а также локально ориентированный софт, созданный с учетом законодательства России (бухгалтерское ПО, справочно-правовые базы).
Для молодежной аудитории серьёзным недостатком является невозможность запустить часть современных игр в Linux-среде, и здесь у Windows огромное преимущество как перед Linux, так и перед Mac OS X, так как индустрия игр для ПК ориентирована в первую очередь на Windows. Для решения этих проблем был создан проект Wine. Это ПО используется для работы с Windows-приложениями и для запуска Windows-игр в Linuх.
Wine – это альтернативная реализация Widows API для UNIX-подобных систем. Это очень активный и востребованный проект, но о 100-процентной совместимости Wine со всем программным обеспечением Windows говорить пока рано.
Последнее время бизнес сообщество более активно заинтересовалось Linux. Такие компании, как Novell, Oracle, Sun, IBM, Google, принимают активное участие в развитии Linux и различных с ней связанных проектах. Это во многом обусловлено открытостью, безопасностью и стабильностью Linux, критериями, очень важными для бизнеса. Положение дел с безопасностью в Linux в общем очень похоже на Mac OS. Они находятся на очень высоком уровне в обеих системах и значительно опережают Windows.
Отличительной особенностью большинства пользователей Mac OS X, является то, что практически все они мигранты с других платформ, в основном – с Windows. Это связано с тем, что наибольшее распространение компьютеры Mac получили после перехода на процессоры семейства Intel в 2005 году.
Переход на новую архитектуру, сильно трансформировал Mac-сообщество и, фактически, разделил представление об их компьютерах на две эры – “до перехода на Intel” и “после перехода на Intel”. Прежнее представление о пользователях компьютеров Mac как о приверженцах определенной секты, в которой состояли музыканты, дизайнеры, журналисты и другие люди творческих профессий, было сломлено. Apple стала более открыта для внешнего мира, а за открытостью последовала и массовость продукции, и быстрое увеличение количества новых пользователей.
Теперь Мacintosh используют стандартное оборудование, представленное на обычном рынке комплектующих. При этом конечная стоимость компьютеров Mac всеравно выше, но она могла быть еще гораздо больше, если бы не существование в постоянной конкуренции с Microsoft.
Сама Mac OS представляет собой сильно переработанную BSD-UNIX-систему со своим ядром (XNU). Несмотря на то, что Mac OS и Linux имеют общие UNIX-корни, между ними есть два принципиальных различия.
Первое – это то, что Mac OS устанавливается (без помощи хакеров) только на компьютеры Мacintosh производства фирмы Apple. Второе же различие заключается в том, что Mac OS – проприетарное программное обеспечение (распространяемое с условиями, запрещающими его свободное дальнейшее распространение, использование пользователем в собственном ПО, внесение в него изменений и т. д. – т. е. с ограничениями свободы пользователя), а Linux относится к «свободному» ПО, соответственно, они отличаются способом распространения.
Первая Mac OS появилась в 1984 году, значительно раньше Windows. Она была разработана специально для компьютеров Мacintosh (Mac). Эти компьютеры имеют в отличие от привычных нам ПК закрытую архитектуру, то есть сами компьютеры собирает только Apple. Ограничение свободы выбора пользователя это далеко не лучшее решение. Но, как показала практика компании Apple, иногда это может быть единственным возможным решением для выживания компании.
Гораздо удобнее и выгоднее сосредоточить процесс выпуска новых компьютеров и операционных систем в одних руках и максимально подстраивать операционную систему под определенный набор комплектующих. При этом драйвера под эти комплектующие написаны наиболее качественно.
Сильной стороной Мас OS является практическое отсутствие вирусов для Мacintosh. И дело не только в не очень большой распространенности Mac OS по сравнению с Windows, но и в том, что традиционные вирусы просто не работают в UNIX среде. Теоретически конечно существуют образцы вирусов, которые могут работать с некоторыми приложениями к Mac OS, но их количество по сравнению с вредоносным программным обеспечением, написанным для Windows, просто ничтожно. Даже удаленный взлом компьютера, работающего под управлением Mac OS, значительно сложнее, чем взлом машины, работающей под управлением Windows, а антивирусные программы могут понадобиться только для того, чтобы не переслать зараженный файл на машину под управлением Windows, вам же он никакого вреда не принесёт.
Интерфейс системы тоже имеет существенные отличия от Windows. Например, если в Windows каждой программе обычно соответствует одно окно с открывающимися в нем вкладками и панелями инструментов, то в Мас OS используются «плавающие» окна и панели, не привязанные к общему окну, а располагающиеся на рабочем столе.
Характерен так же единый интерфейс приложений и операционной системы, построенный по стандартам AHIG. Apple Human Interface Guidelines (AHIG) – основной документ, который описывает принципы построения оконного интерфейса в среде Mac OS X. Это первая книга, которую должен прочитать разработчик перед созданием своих программных продуктов для Mac OS. Цель данного документа – разъяснить правильный и неправильный подход построения дизайна интерфейса в операционной системе Apple. Несмотря на то, что документ скорее имеет рекомендательный характер, практически все разработчики стараются соблюдать указанные требования.
Главной особенностью интерфейса Mac OS является минималистичность. Это значит, что при запуске приложения пользователю предоставляется ключевые, основные элементы интерфейса и управления и, только по мере надобности, пользователь может настраивать рабочую среду по своему вкусу. В таком случае пользователь не будет испытывать трудности в освоении интерфейса ОС.
Операционная система от Apple и так удобна и функциональна, но в Apple с подозрением относятся к самодеятельности пользователя. Руководствуясь принципом “Чем меньше пользователю дано, тем меньше он сломает”, они ограничили свободу настройки оформления Mac OS X. Существует только несколько приложений для смены стандартной темы оформления, например: Magnifique и ShapeShifter (только 10.4 Tiger). Но и они не могут менять оформление координальным образом.
Ещё одной отличительной особенностью Маковского интерфейса является панель dock. Это панель в нижней части рабочего стола, где находятся значки файлов и приложений, к которым требуется быстрый доступ, а также запущенные приложения. Панель можно редактировать, менять размеры, убирать и добавлять значки приложений. Можно также отметить такие элементы интерфейса, как Dashboard и Expose. Dashboard – панель для работы с «виджетами», простейшими графическими приложениями, которые, как правило, выполняют информационные функции. Expose – функция отображения на экране в виде миниатюр всех открытых окон или только окон активной программы.