Основы компьютеров - Системное ПО
Как вы знаете, системное программное обеспечение действует как интерфейс для базовой аппаратной системы. Здесь мы подробно обсудим некоторые важные системные программы.
Операционная система
Operating system (OS)это спасательный круг компьютера. Вы подключаете все основные устройства, такие как процессор, монитор, клавиатуру и мышь; подключите блок питания и включите его, думая, что у вас все на месте. Но компьютер не запустится и не оживет, если на нем не установлена операционная система, потому что ОС -
- Поддерживает все компоненты оборудования в состоянии готовности следовать инструкциям пользователя
- Координаты между разными устройствами
- Планирует несколько задач в соответствии с приоритетом
- Выделяет ресурс для каждой задачи
- Позволяет компьютеру получить доступ к сети
- Позволяет пользователям получать доступ и использовать прикладное программное обеспечение
Помимо начальной загрузки, это некоторые из функций операционной системы:
- Управление компьютерными ресурсами, такими как оборудование, программное обеспечение, общие ресурсы и т. Д.
- Распределение ресурсов
- Предотвращение ошибок при использовании программного обеспечения
- Контроль ненадлежащего использования компьютера
Одна из первых операционных систем была MS-DOS,разработан Microsoft для IBM PC. Это былоCommand Line Interface (CLI)ОС, которая произвела революцию на рынке ПК. DOS было сложно использовать из-за его интерфейса. Пользователям нужно было запомнить инструкции для выполнения своих задач. Чтобы сделать компьютеры более доступными и удобными для пользователя, Microsoft разработалаGraphical User Interface (GUI) на базе ОС называется Windows, который изменил способ использования компьютеров.
Ассемблер
Ассемблер - это системное программное обеспечение, которое преобразует программы уровня сборки в код машинного уровня.
Это преимущества, предоставляемые программированием на уровне сборки -
- Повышает эффективность программиста, так как запоминание мнемоники легче
- Производительность увеличивается по мере уменьшения количества ошибок и, следовательно, времени отладки
- Программист имеет доступ к аппаратным ресурсам и, следовательно, имеет гибкость в написании программ, адаптированных к конкретному компьютеру.
Переводчик
Основным преимуществом языка ассемблера была его способность оптимизировать использование памяти и аппаратного обеспечения. Однако с развитием технологий у компьютеров было больше памяти и более качественные аппаратные компоненты. Поэтому простота написания программ стала важнее, чем оптимизация памяти и других аппаратных ресурсов.
Вдобавок возникла необходимость взять программирование у горстки обученных ученых и программистов, чтобы компьютеры могли использоваться в большем количестве областей. Это привело к развитию языков высокого уровня, которые было легко понять из-за сходства команд с английским языком.
Системное программное обеспечение, используемое для перевода исходного кода языка высокого уровня в объектный код языка машинного уровня построчно, называется interpreter. Интерпретатор берет каждую строку кода, преобразует ее в машинный код и сохраняет в объектном файле.
В advantageИспользование интерпретатора заключается в том, что их очень легко писать, и они не требуют большого объема памяти. Однако у использования интерпретаторов есть серьезный недостаток, т. Е. Интерпретируемые программы требуют много времени для выполнения. Чтобы преодолеть этоdisadvantage, особенно для больших программ, compilers были разработаны.
Компилятор
Системное программное обеспечение, которое хранит полную программу, сканирует ее, преобразует полную программу в объектный код и затем создает исполняемый код, называется компилятором. На первый взгляд, компиляторы проигрывают интерпретаторам, потому что они -
- сложнее переводчиков
- нужно больше места в памяти
- тратить больше времени на компиляцию исходного кода
Однако скомпилированные программы выполняются на компьютерах очень быстро. На следующем изображении показан пошаговый процесс преобразования исходного кода в исполняемый код.
Это шаги по компиляции исходного кода в исполняемый код -
Pre-processing - На этом этапе инструкции препроцессора, обычно используемые такими языками, как C и C ++, интерпретируются, т. Е. Преобразуются в язык уровня ассемблера.
Lexical analysis - Здесь все инструкции преобразованы в lexical units например, константы, переменные, арифметические символы и т. д.
Parsing - Здесь все инструкции проверяются на соответствие grammar rulesязыка. Если есть ошибки, компилятор попросит вас исправить их, прежде чем вы сможете продолжить.
Compiling - На этом этапе исходный код конвертируется в object code.
Linking- Если есть ссылки на внешние файлы или библиотеки, в программу будут добавлены адреса их исполняемого файла. Кроме того, если код необходимо изменить для фактического выполнения, они будут изменены. Конечный результат - этоexecutable code который готов к исполнению.