Связь компьютера с периферийными устройствами
Для обмена данными между компьютером и периферийным устройством (ПУ) в компьютере предусмотрен внешний интерфейс (рис. 1.6), то есть набор проводов, соединяющих компьютер и периферийное устройство, а также набор правил обмена информацией по этим проводам (иногда вместо термина интерфейс употребляется термин протокол — подробней об этих важных терминах мы еще поговорим). Примерами интерфейсов, используемых в компьютерах, являются параллельный интерфейс Centronics, предназначенный, как правило, для подключения принтеров, и последовательный интерфейс RS-232C, через который подключаются мышь, модем и много других устройств. Интерфейс реализуется со стороны компьютера совокупностью аппаратных и программных средств: контроллером ПУ и специальной программой, управляющей этим контроллером, которую часто называют драйвером соответствующего периферийного устройства.
Со стороны ПУ интерфейс чаще всего реализуется аппаратным устройством управления, хотя встречаются и программно-управляемые периферийные устройства.
Программа, выполняемая процессором, может обмениваться данными с помощью команд ввода/вывода с любыми модулями, подключенными к внутренней шине компьютера, в том числе и с контроллерами ПУ.
Периферийные устройства могут принимать от компьютера как данные, например байты информации, которую нужно распечатать на бумаге, так и команды управления, в ответ на которые ПУ может выполнить специальные действия, например перевести головку диска на требуемую дорожку или же вытолкнуть лист бумаги из принтера. Периферийное устройство использует внешний интерфейс компьютера не только для приема информации, но и для передачи информации в компьютер, то есть обмен данными по внешнему интерфейсу, как правило, является двунаправленным. Так, например, даже принтер, который по своей природе является устройством вывода информации, возвращает в компьютер данные о своем состоянии.
Контроллеры ПУ принимают команды и данные от процессора в свой внутренний буфер, который часто называется регистром или портом, затем выполняют необходимые преобразования этих данных и команд в соответствии с форматами, понятными ПУ, и выдают их на внешний интерфейс.
Распределение обязанностей между контроллером и драйвером ПУ может быть разным, но обычно контроллер выполняет набор простых команд по управлению ПУ, а драйвер использует эти команды, чтобы заставить устройство совершать более сложные действия по некоторому алгоритму. Например, контроллер принтера может поддерживать такие элементарные команды, как «Печать символа», «Перевод строки», «Возврат каретки» и т. п. Драйвер же принтера с помощью этих команд организует печать строк символов, разделение документа на страницы и другие более высокоуровневые операции. Для одного и того же контроллера можно разработать различные драйверы, которые будут управлять данным ПУ по-разному — одни лучше, а другие хуже — в зависимости от опыта и способностей программистов, их разработавших.
Рис. 1.6. Связь компьютера с периферийным устройством
Рассмотрим схему передачи одного байта информации от прикладной программы на периферийное устройство. Программа, которой потребовалось выполнить обмен данными с ПУ, обращается к драйверу этого устройства, сообщая ему в качестве параметра адрес байта памяти, который нужно передать. Драйвер загружает значение этого байта в буфер контроллера ПУ, который начинает последовательно передавать биты в линию связи, представляя каждый бит соответствующим электрическим сигналом. Чтобы устройству управления ПУ стало понятно, что начинается передача байта, перед передачей первого бита информации контроллер ПУ формирует стартовый сигнал специфической формы, а после передачи последнего информационного бита — столовый сигнал. Эти сигналы синхронизируют передачу байта.
Кроме информационных бит, контроллер может передавать бит контроля четности для повышения достоверности обмена. Устройство управления, обнаружив на соответствующей линии стартовый бит, выполняет подготовительные действия и начинает принимать информационные биты, формируя из них байт в своем приемном буфере. Если передача сопровождается битом четности, то выполняется проверка правильности передачи: при правильно выполненной передаче в соответствующем регистре устройства управления устанавливается признак завершения приема информации.
Обычно на драйвер возлагаются наиболее сложные функции протокола (например, подсчет контрольной суммы последовательности передаваемых байтов, анализ состояния периферийного устройства, проверка правильности выполнения команды). Но даже самый примитивный драйвер контроллера должен поддерживать как минимум две операции: «Взять данные из контроллера в оперативную память» и «Передать данные из оперативной памяти в контроллер».
Существуют как весьма специализированные интерфейсы, пригодные для подключения узкого класса устройств (например, графических мониторов высокого разрешения фирмы Vista), так и интерфейсы общего назначения, являющиеся стандартными и позволяющие подключать различные периферийные устройства. Примером такого интерфейса является интерфейс RS-232C, который поддерживается многими терминалами, принтерами, графопостроителями, манипуляторами типа «мышь» и многими другими устройствами.
Что такое программное обеспечение — Софт
Программное обеспечение (ПО, software, софт) — это программа/ы, которые выполняют какие-либо функции, заложенные в них разработчиком. Это может быть, как просто единичная программа, например, тот же блокнот, так и целая система — та же ОС Windows. Т.е. по сути — это определенный набор правил, написанный в виде кода хранящемся в файле/ах, который обеспечивает работу, как всего аппаратного средства (операционная система), так и работу конкретных функций на нем (программы, утилиты, драйвера и т.д.).
Важно! Программное обеспечение может быть у любого устройства, не только у компьютера или ноутбука. Например, на телевизорах тоже стоит ПО.
Программное обеспечение включает в себя: программы, утилиты, драйвера, исполняемые и неисполняемые файлы и библиотеки. Т.е. любая программа, установленная на вашем ПК или драйвер, относится к программному обеспечению компьютера, и вы их смело можете так называть и не сомневаться. Т.к. ПО это их общее название и по своей сути это софт, который работает на устройстве и выполняет поставленные задачи.
Зачем нужно программное обеспечение
Программное обеспечение нужно, чтобы устройство/железо способно было выполнять заложенные в нем функции. Так, к примеру, чтобы текст набираемый на клавиатуре выводился на экране монитора — нужно ПО, которое будет обеспечивать это.
Любые возможные действия и команды программируются, чтобы устройство вообще могло, что-то делать — обязательно нужен определенный программный код. Совокупность такого кода и называется программным обеспечением.
Существует огромное количество различного ПО с самыми разнообразными функциями. Есть и фоторедакторы, и мессенджеры, и музыкальные плееры, и многое другое. И все это для разного аппаратного обеспечения и работает на разных операционных системах.
Конспект урока «Программное обеспечение компьютера. Операционная система»
Как мы уже говорили, компьютер работает под управлением программ. Вся совокупность программ называется программным обеспечением.
Базовой и необходимой составляющей программного обеспечения компьютера является операционная система.
Операционные системы разные, но их назначение и функции одинаковые. Операционная система является основной и необходимой составляющей программного обеспечения компьютера, без нее компьютер не может работать в принципе.
Операционная система — комплекс программ, обеспечивающих взаимодействие всех аппаратных и программных частей компьютера между собой и взаимодействие пользователя и компьютера.
Первой задачей операционной системы является обеспечение совместного функционирования всех аппаратных устройств компьютера.
Второй задачей операционной системы является представление пользователю доступа к ресурсам компьютера.
Любая операционная система имеет как минимум 3 компонента:
Все операции, связанные с процессами, выполняются под управлением той части операционной системы, которая называется ядром.
Ядро представляет собой лишь небольшую часть кода операционной системы в целом, однако оно относится к числу наиболее интенсивно используемых компонент системы. По этой причине ядро обычно резидентно размещается в основной памяти, в то время как другие части операционной системы перемещаются во внешнюю память и обратно по мере необходимости.
Драйвер — это компьютерная программа, с помощью которой другая программа (обычно операционная система) получает доступ к аппаратному обеспечению некоторого устройства.
В общем случае, для использования любого устройства (как внешнего, так и внутреннего) необходим драйвер. Но обычно с операционными системами поставляются драйверы для ключевых компонентов аппаратного обеспечения, без которых система не сможет работать. Однако для некоторых устройств (таких, как графическая плата или принтер) могут потребоваться специальные драйверы, обычно предоставляемые производителем устройства.
Для упрощения работы пользователя в состав современных операционных систем, входят программные модули, создающие графический пользовательский интерфейс.
Интерфейс — это оболочка, с помощью которой пользователь общается с компьютером
Различают два вила интерфейса: пользовательский и графический интерфейс.
Пользовательский интерфейс — это совокупность правил и приемов, создаваемых программой, с помощью которых пользователь управляет ею. К примеру, программный интерфейс может имитировать изображение проигрывателей компакт-дисков или музыкальных файлов и позволяет управлять ими путем нажатия на соответствующие клавиши проигрывателя.
Графический интерфейс — это комплекс программных средств, позволяющий пользователю ориентироваться в программной среде Windows с использованием графических объектов. Взаимодействие человека с компьютером организовано в форме диалога с использованием ввода и вывода на экран дисплея графической информации, когда управление программами осуществляется с помощью кнопок, меню, окон, экранных панелей и других элементов управления.
Операционная система содержит также сервисные программы, или утилиты. Такие программы позволяют обслуживать диски, выполнять операции с файлами, работать в компьютерных сетях и т. д.
Для удобства пользователя в операционной системе обычно имеется и справочная система. Она предназначена для оперативного получения необходимой информации о функционировании как операционной системы в целом, так и о работе ее отдельных модулей.
А теперь давайте мы с вами разберемся с установкой и загрузкой операционной системы.
Операционные системы распространяются на оптических дисках в форме дистрибутивов. Для начала нужно провести установку операционной системы, в процессе которой файлы операционной системы копируются с оптического диска дистрибутива на жесткий диск компьютера.
После установки файлы операционной системы хранятся в долговременной памяти на жестком диске, который называется системным. Но программы могут выполняться, только если они находятся в оперативной памяти компьютера. Поэтому необходима загрузка файлов операционной системы с системного диска в оперативную память.
В процессе загрузки операционной системы сначала производится тестирование работоспособности процессора, памяти и других аппаратных средств компьютера, но при этом на экран монитора выводятся краткие диагностические сообщения о процессе тестирования.
После окончания загрузки операционной системы пользователь получает возможность управлять компьютером с использованием графического интерфейса операционной системы.
Что такое контроллер периферийных устройств компьютера
Периферийные устройства работают с процессором и оперативной памятью с помощью контроллеров (от английского слова controller – устройство управления). У каждого периферийного устройства есть свой контроллер (или адаптер, который тоже является контроллером).
Контроллер периферийного устройства – это электронное устройство для управления работой периферийного устройства. Контроллер отвечает за:
- передачу данных от периферийного устройства к процессору;
- обратную передачу данных от процессора к периферийному устройству;
- согласование по времени работы медленного периферийного устройства и быстрого процессора.
Каждое внутреннее периферийное устройство подключено к компьютеру (ноутбуку) через контроллер. Каждое внешнее периферийное устройство подключается к порту ввода-вывода, у которого тоже есть свой контроллер. Допустим, периферийное устройство подключено к порту USB. Значит, функцию контроллера будет выполнять контроллер порта USB.
Контроллеры портов ввода-вывода являются универсальными контроллерами. Они умеют перестраиваться в зависимости от того, какое конкретное внешнее периферийное устройство к ним подключено в каждом конкретном случае.
Допустим, с мышкой контроллер порта USB станет работать совсем не так, как с внешним жестким диском. И совершенно иначе контроллер порта USB будет работать с принтером, если его подключить к этому же порту.
Все периферийные устройства подключены к общей шине компьютера через контроллеры. К этой же общей шине подключаются процессор и оперативная память компьютера. Таким образом все составные части компьютера (ноутбука) работают друг с другом через общую шину передачи данных.
Как работает медленное периферийное устройство с быстрым процессором
Контроллер периферийного устройства работает совместно с процессором и оперативной памятью компьютера через общую шину. Контроллер получает данные от процессора или из оперативной памяти. Полученные данные контроллер передает затем «своему» периферийному устройству. И в обратную сторону: контроллер получает данные от периферийного устройства, а затем передает их процессору или отправляет их в оперативную память.
Такая схема работы позволяет быстродействующему процессору «не тормозить». Процессор является самым быстрым устройством в компьютере (ноутбуке). Если его постоянно «притормаживать», например, из-за медлительности принтера, тогда процессор станет простаивать.
Принтер не может мгновенно напечатать, скажем, 10 листов текста. Что же тогда делать процессору, ждать?! В таком случае процессор станет работать со скоростью самого медленного устройства (принтера, сканера, клавиатуры и т.п.). В чем тогда будет смысл от использования процессора с высоким быстродействием, если он будет почти все время простаивать из-за ожидания медленных периферийных устройств?
Оперативная память компьютера (ноутбука) тоже является быстродействующим элементом. Она по скорости немного уступает процессору, но зато прочим устройствам ее «догнать» невозможно. Получается, что и при обмене данными с оперативной памятью остальным периферийным устройствам нельзя мешкать, чтобы память не «подвисала».
Контроллер периферийного устройства работает с самим устройством со скоростью, которое оно может себе позволить, то есть тут контроллер работает медленно. Но с процессором или с оперативной памятью контроллер периферийного устройства работает очень быстро, с сопоставимой скоростью. Вот такой он, этот самый контроллер периферийного устройства!
Контроллер периферийного устройства компенсирует внутри себя все задержки по времени для приема-передачи информации от медленного периферийного устройства к быстрому процессору (оперативной памяти) и в обратном направлении. Именно в контроллере периферийного устройства происходит замедление скорости передачи данных как в одну, так и в другую сторону.
Тем самым контроллер не дает повода для процессора или оперативной памяти простаивать в ожидании медленных периферийных устройств. Контроллер периферийного устройства является «буфером», который согласует между собой разные скорости работы устройств.
Понятие
Любой современный ПК — настольный, портативный или серверный, наполняется по схожему принципу. Если убрать лишнее, то любое ПО, даже простейшее, строится по похожему алгоритму. Должны выполняться пошаговые действия — следующий шаг начинается только после того, как завершился предыдущий.
Так, введенные с клавиатуры символы отображаются на экране, по командному клику пользователя принтер начинает печатать их на бумаге, а расчеты происходят сами после введения формулы. Любой шаг заранее программируется и называется командой для компьютера, совокупность этапов обозначается программируемым кодом.
Программисты — это люди, которые разрабатывают и настраивают ПО. Они могут управлять ПК с помощью одной строчки, в которую вводят части закодированной информации. Несколько символов в определенной последовательности включают музыку, отправляют документ на печать или открывают конкретную страницу интернет-ресурса.
WEB-камера
Одно из популярных ныне периферийных устройств, предназначенное для ввода видеоданных в ПК и последующей их обработки – сохранения, передачи и т. д.
Основные параметры, определяющие качество этого устройства:
- Разрешение. Определяется в пикселях. Чем выше разрешение устройства, тем качественнее картинка будет получаться при вводе в ПК. Неплохим разрешением может считаться размер 640х480, дорогие модели имеют значение этого показателя – 1024х960 и выше;
- Чувствительность матрицы. Очень важный параметр, который характеризует возможность выдавать качественное изображение при низком уровне освещения. Справедливости ради следует заметить, что даже самые дорогие модели тоже имеют помехи при съёмке в плохо освещённых местах;
- Количество кадров в секунду (fps). Чем больше этот параметр, тем чётче изображение, особенно если производится съёмка быстроизменяющихся сцен. Хорошим параметром считается значение от 30 кадров и выше.
Большинство последних моделей веб-камер имеют в качестве дополнительных функций наличие встроенного микрофона, автофокус, подсветку. При этом аудиоданные передаются по тому же интерфейсу, что и видеоданные, что очень удобно – уменьшается количество соединений с ПК, освобождается микрофонный вход, который можно использовать для подключения профессионального микрофона в случае необходимости.
Подключается веб-камера к ПК через USB-порт, при этом для получения качественного изображения, версия USB-порта должны быть не ниже 2.0.
Назначение ПО:
- обеспечение работоспособности компьютера;
- облегчение взаимодействия пользователя с компьютером;
- сокращение цикла от постановки задачи до получения результата;
- повышение эффективности использования ресурсов компьютера.
- усовершенствовать организацию работы вычислительной системы с целью максимального использования ее возможностей;
- повысить производительность и качество труда пользователя;
- адаптировать программы пользователя к ресурсам конкретной вычислительной системы;
- расширить ПО вычислительной системы.
Максимальное использование возможностей вычислительной системы достигается, во-первых, за счет выделения каждому пользователю или задаче минимально необходимых ресурсов для своевременного и качественного решения его задач, во-вторых, за счет подключения к ресурсам вычислительной системы большого числа пользователей (в том числе и удаленных), в-третьих, путем перераспределения ресурсов между различными пользователями и задачами в зависимости от состояния системы и запросов на обработку.
Повышение производительности и качества труда пользователей происходит за счет автоматизации процедур расчетного и оформительского характера, реализуемых с помощью разнообразных средств программирования (алгоритмических языком, пакетов прикладных программ) и удобных устройств ввода-вывода информации.
Адаптируемость программ пользователя к ресурсам конкретной вычислительной системы обеспечивается тем, что операционная система содержит средство обслуживания большого диапазона машинных конфигураций. Кроме того, операционная система позволяет создавать и легко настраивать существующие программы на различные устройства ввода-вывода.
Расширение существующего ПО предполагает наличие следующих возможностей:
- создание пользователем собственных программ и пакетов, реализующих как конкретные расчетные задачи, так и процессы управления отдельными устройствами и всей вычислительной системой в целом;
- дополнение существующего ПО программами, позволяющими расширять возможности операционной системы, работать с новыми типами внешних устройств, новыми вычислительными системами (компьютерами), в новых областях применения.
ПО ориентировано на использование вычислительных систем в различных сферах деятельности и должно обеспечивать своевременное и адекватное поставленным задачам решение. Это вызывает необходимость соблюдения ряда требований при разработке компонентов ПО , основными из которых являются:
- модульность;
- наращиваемость и развитие;
- надежность;
- предсказуемость;
- удобство и эргономичность;
- гибкость;
- эффективность;
- совместимость.