Программа которая является операционной системой

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

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

И что самое грустное — в прикладных программах было бы много одинакового кода, отвечающего за реализацию низкоуровневых команд (обращений к железу). Кроме того, как решить проблему совместной работы разных программ на одном компьютере — еще один вопрос. Поэтому операционные системы и другое системное ПО вполне обоснованно занимают отведенную им роль посредника между прикладным ПО и аппаратным обеспечение компьютера.

08. Операционные системы. [Универсальный программист]

Место операционной системы в логической структуре компьютера

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

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

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

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

Назначение операционной системы

Итак, операционная система выполняет две основные задачи:

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

ОС семейства Windows

На сегодняшний день наиболее популярными являются операционные системы семейства Windows, которые являются проприетарным (коммерческим) продуктом корпорации Microsoft.

10 бесплатных операционных систем, о которых вы, возможно, не знали

Свою «родословную» Windows начинают от операционной системы DOS и первоначально представляли собой надстраиваемые над ней оболочки (Windows запускался из под DOS), увеличивающие возможности DOS и облегчающие неподготовленному пользователю работу с компьютером. Уже более поздние версии (начиная с Windows NT) представляли собой полноценные операционные системы.

Преимуществом Windows считается дружественный для пользователя интерфейс. Из недостатков отмечают ненадежность системы.

Unix-подобные ОС

Операционная система UNIX оказала большое влияние на развитие мира операционных систем, заложив основы работы современных ОС. Изначально UNIX был системой для разработки ПО. В основном в UNIX работали программисты (да и вообще в 70-е годы мало кто другой работал с вычислительными машинами).
UNIX развивался на нескольких фундаментальных идеях. Например, одна небольшая задача должна решаться одной небольшой программой, а сложные задачи должны быть решаемы комбинацией простых программ.

В UNIX большое внимание уделено распределению ресурсов компьютера между пользователями. Эта система является мультитерминальной (каждый пользователь работает с компьютером с помощью своего терминала).

Не смотря на то, что Unix-подобные системы уступают по популярности Windows, они работают на больших типах компьютеров.

Linux

OC Linux

Linux представляет собой множество Unix-подобных операционных систем (дистрибутивов), которые чаще всего являются свободно распространяемыми.

Одной из уникальных особенностей систем GNU/Linux является отсутствие единого географического центра разработки. Linux и программы для нее пишутся миллионами программистов, рассредоточенных по всему миру.

MAC OS

ОС Mac

Это операционная система также создавалась на основе ядра UNIX.

Является продукт компании Apple для ее же компьютеров Macintosh.

Считается надежной и удобной. Но в отличие от Windows не так популярна.

Источник: inf1.info

Что нужно знать для разработки операционной системы

Создание операционной системы — одна из сложнейших задач в программировании, поскольку требует обширных и комплексных знаний о работе компьютера, — пишет tproger.ru в своем переводе статьи «How To Program Your Very Own Operating Systems (OS)».

Как написать свою операционную систему

Какие именно знания нужны? Разбираемся ниже.

Что такое ОС

Операционная системы (ОС) — это программное обеспечение, которое работает с компьютерным железом и его ресурсами и является мостом между аппаратной и программной частью компьютера.

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

Читайте также:
Avast antivirus описание программы

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

ОС предоставляет всё необходимое для работы пользовательских программ. Их появление означало, что теперь программам не нужно контролировать весь объём работ компьютера (это отличный пример инкапсуляции). Теперь программам нужно было работать именно с операционной системой, а система уже сама заботилась о ресурсах и работе с периферией (клавиатура, принтер).

Кратко об истории операционных систем

Первая операционная система была создана в 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-х годов книга была признана определяющей в этой сфере.

Если вдруг вышеописанные материалы вам не подошли, вот ещё пара отличных книг:

  • «Assembly Language Step-by-Step: Programming with Linux» Джефа Дантеманна;
  • «Modern X86 Assembly Language Programming» Дэниэля Кассварма.

Язык Cи

Как уже упоминалось выше, для написания ОС есть несколько высокоуровневых языков программирования. Однако самый популярный из них — Си.

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

«Learn C the Hard Way» — название ещё одной книги. Кроме привычной теории в ней собрано много практических решений. Этот учебник расскажет обо всех аспектах языка.

Либо же можете выбрать одну из этих книг:

  • «The C Programming Language» Кернигхана и Ритчи;
  • «C Programming Absolute Beginner’s Guide» Пэрри и Миллера.

Разработка операционной системы

Разработка ОС

После освоения всего необходимого, что касается информатики, языка ассемблера и 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и.

Вот ещё три книги, которые помогут вам ознакомиться с дисциплиной разработки ОС:

  • «Modern Operating Systems» Таненбаума и Боза;
  • «The Design of the UNIX Operating System» Маурайса Баха;
  • «Operating System Concepts» Сибершатза, Гальвина и Ганге.

Сообщества, посвященные разработке ОС

Заниматься разработкой ОС в одиночку смело, но сложно. Гораздо проще найти единомышленников, которые, как и вы, решили попытать удачу в этом нелёгком деле. Существует пара подходящих мест:

  • OSDev.org — это Вики с исчерпывающей информацией о разработке ОС и отличным форумом, где вы можете попросить о помощи или же наоборот сами кого-нибудь выручить.
  • OS Development Channel на Реддите. Канал, также посвящённый разработке ОС.
  • Computer Science, Programmers, StackOverflow от StackExchange — площадки, где вы можете задавать различные технические вопросы.

Обучение разработке ОС — достаточно сложная задача. Однако в процессе вы разберётесь в работе процессора и аппаратного уровня, что поможет лучше понимать работу и оптимизацию высокоуровневых приложений и их взаимодействие друг с другом. Ну и в глазах коллег вы наверняка будете выглядеть очень крутым (но это не точно).

Источник: techrocks.ru

Понятие, значение и основные задачи
операционной системы

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

Как известно, компьютер в современном виде появился далеко не сразу. Первые компьютеры были очень громоздкими и дорогостоящими. Управлять ими могли исключительно профессионалы, четко понимающие все тонкости их устройства и работы. Для управления компьютерами использовались специальные программы, создаваемые при помощи двоичного кода. Windows или чего-нибудь подобного тогда еще не существовало.

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

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

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

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

Этой программной прослойкой и является операционная система.

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

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

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

Читайте также:
Как соединить аудио файлы в один в программе

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

Таким образом, операционная система компьютера решает три важные задачи:

1) обеспечивает функционирование аппаратного обеспечения компьютера как единого целого, управляет ресурсами процессора, оперативной памяти и других устройств системы;

2) взаимодействует с пользователем, интерпретирует его действия (команды) в понятный компьютеру язык и заставляет его выполнить их;

3) позволяет приспосабливать компьютер к решению определенного круга задач путем установки и управления работой соответствующих программ.

Как и человеческий разум, операционную систему можно развивать и совершенствовать, устанавливая дополнительные программы. В нашем примере эти программы можно сравнить со своеобразными новыми навыками и умениями у человека. Например, чтобы научить компьютер играть с вами в шахматы, необходимо установить в операционную систему соответствующую программу – игру «Шахматы». Чтобы работать с текстом, операционную систему необходимо дополнить текстовым процессором Word или какой-нибудь другой аналогичной программой.

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

Для лучшего понимания сообщу, что при создании компьютера порядок действий специалиста-компьютерщика следующий:

1. Физически сложить компьютер, соединив в единое целое материнскую плату, процессор, оперативную память и другие устройства (создать тело компьютера);

2. Установить на компьютер операционную систему (снабдить тело интеллектом);

3. Установить необходимые дополнительные программы (развитие навыков компьютера в нужном пользователю направлении).

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

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

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

Каждая из версий Windows (XP, Vista, 7, 8, 10, 11) является универсальной и кроме основных утилит для управления компьютером, уже содержат в своем составе базовое программное обеспечение. После установки любой из этих систем пользователь может решать основные задачи, не устанавливая дополнительные программы.

В частности, смотреть видео и слушать музыку можно при помощи проигрывателя Windows Media, для просмотра страниц Интернета предназначен встроенный браузер Internet Explorer или Microsoft Edge, работать с текстом позволит Блокнот и WordPad и т.д. Но, как уже было сказано выше, одни и те же задачи можно решать при помощи разных программ.

Поэтому если вам не нравится встроенный в операционную систему проигрыватель Windows Media, вы всегда можете установить другой проигрыватель (их существует очень много), вместо Internet Explorer можно установить Firefox, Opera или любой другой браузер, и т.д. Не нужно ограничивать себя использованием только штатных средств Windows. Альтернативных программных решений очень много. О том, как устанавливать программы в Windows, читайте здесь.

ПОДЕЛИТЬСЯ:

НАПИСАТЬ АВТОРУ

Похожие материалы

Основы работы на персональном компьютере

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

Из статьи читатель узнает, как на компьютере осуществлять основные операции с файлами и папками (создавать, переименовывать, копировать, переносить, удалять), научится работать с окнами Windows, овладеет навыками навигации в Windows, освоит умение использования компьютерной мышки.

Как узнать дату установки Windows

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

Например, если Вы приобрели б/у компьютер или ноутбук, по дате установки на нем Windows можно примерно предположить, сколько времени он был в эксплуатации.

Посмотреть дату установки Windows иногда хочется просто ради интереса или по каким-то другим причинам. Сделать это можно несколькими способами.

Как научиться пользоваться мышкой

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

Как поставить компьютер на таймер выключения

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

Активировать таймер выключения компьютера можно как штатными средствами Windows, так и при помощи специальных программ.

Как включить гибернацию в Windows 10

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

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

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

Чтобы иметь возможность использовать гибернацию компьютер необходимо настроить.

Как зайти в безопасный режим Windows

Безопасный режим (англ. Safe Mode) — специальный режим работы Windows, позволяющий устранять некоторые неполадки в работе операционной системы, а также изменять ее настройки, недоступные в обычном режиме.

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

Существует несколько способов зайти в безопасный режим Windows.


ПОКАЗАТЬ ЕЩЕ

Источник: www.chaynikam.info

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru