Почему появился компьютерный жаргон
Компьютеры оказались такими хитрыми устройствами, что со всё более возрастающими скоростями стали быстро увлекать человека в свой цифровой, весьма привлекательный виртуальный мир. В нем многое возможно из того, чего нет в мире реальном.
И, естественно, у живущих в той или иной мере в сети, появляется свой собственный язык – как средство обособления и средство адаптации необходимой терминологии. Кстати, адаптация есть, на мой взгляд, куда более важный мотив, движущая сила, которая способствует обогащению компьютерного жаргона.
Подросток говорящий: «мне купили новый жёсткий диск и модулятор-демодулятор» будет выглядеть забавно среди своих сверстников. Молодежь не будет использовать точную терминологию. Они скажут: «мне купили новый винт и модем». В этой фразе «винт» означает «винчестер, жесткий диск», а «модем» – это сокращение от первых букв двух слов: МОдулятор-ДЕМодулятор.
Почему же компьютерные термины требуют специального толкования, точнее, дополнительного объяснения того, что они на самом деле означают?
Компьютерная территория, как бы нам не хотелось обратного, – территория Америки и англоговорящих стран. Основное программное обеспечение и комплектующие производятся именно там, ну или в Китае. Последнее пока никак не влияет на терминологию. Посему основной источник обогащения словаря компьютерных терминов – английский. И даже не английский, а жаргонный компьютерный английский.
Стандартное подключение и определение HID-совместимой мыши
Если рассматривать данный вопрос с практической точки зрения, сегодня любое устройство управления, подключаемое посредством интерфейсов USB, Bluetooth или даже Wi-Fi, распознается именно как стандарт HID. Как уже понятно, к съемным накопителям это не относится.
Что же касается подключения HID-совместимой мыши, достаточно просто использовать нужный тип соединения с компьютером или ноутбуком, а использовать можно и проводные, и беспроводные устройства. Обычно сразу же после того, как система сообщит, что обнаружено новое устройство, начнется поиск и установка драйвера, который необходим для обеспечения работы девайса (впрочем, как и для любого другого оборудования).
Ввод и общие порты
В современных компьютерах последовательные порты практически уже не используются они были вытеснены более современными параллельными портами, которые имеют лучшую производительность работы. Но на многих материнских платах все еще есть разъемы для этих интерфейсов. Это сделано для совместимости со старыми устройствами, такими как мыши и клавиатуры.
PS/2
Разъем PS/2 был разработан корпорацией IBM для подключения мыши и клавиатуры. Он начал использоваться начиная с устройства персонального компьютера IBM/2. От имени этого компьютера и было образовано имя порта. Интерфейс имеет специальную маркировку — фиолетовый для клавиатуры и зеленый для мыши.
Как вы можете видеть, это разъем на шесть контактов, вот его схема:
Даже несмотря на то что цоколи и раскладка контактов для мыши и клавиатуры одинаковы, компьютер не обнаружит устройство, если вы подключите его не в тот разъем. Как я уже говорил, на данный момент PS/2 уже вытеснен другой технологией. Теперь подключение к компьютеру периферийных устройств чаще всего выполняется по USB.
Последовательный порт (Serial Port)
Несмотря на то, что последовательными портами называется целая группа портов, включая PS/2, есть еще одно значение у этого термина. Он используется для обозначения интерфейса совместимого со стандартом RS-232. К таким интерфейсам относятся DB-25 и DE-9.
DB-25 — это вариант разъема D-Sub изначально разработанный в качестве основного порта для соединения по протоколу RS-232. Но большинство устройств используют не все контакты.
Затем был разработан DE-9, который работал по тому же протоколу, а DB-25 стал использоваться чаще для подключения принтера вместо параллельного порта. Сейчас DE-9 — это основной последовательный порт, работающий по протоколу RS-232. Его также называют COM портом. Этот разъем все еще иногда применяется для подключения мыши, клавиатуры, модемов, ИБЛ и других устройств, работающих по этому протоколу.
Сейчас интерфейсы подключения устройств компьютеру DB-25 и DE-9 применяются все реже, потому что их вытесняет USB и другие порты.
Параллельный порт Centronics или 36-pin порт
Порт Centronics или 36-pin был разработан для связи компьютера и принтера по параллельному протоколу. Он имеет 36 контактов и перед началом широкого применения USB был достаточно популярен.
Переустановка драйвера
Если учесть, что для любого, имеющегося в системе устройства (внешнего или внутреннего) и его корректной работы необходимо специальное управляющее программное обеспечение, называемое драйвером, логично предположить, что проблема может быть именно в нем. Убедиться в этом можно совершенно просто, если вызвать «Диспетчер устройств». Если оборудование с неполадками будет обнаружено, его сразу можно будет увидеть в списке HID-устройств, для которых драйвер не установлен или в его функционировании произошли сбои. Обычно производители поставляют носители с драйверами под свою периферию, так что переустановить драйвер можно самостоятельно.
Но в большинстве случаев это не нужно, поскольку все оборудование класса HID должно распознаваться любой компьютерной системой и без этого.
В этой ситуации лучше всего удалить проблемное устройство целиком и полностью, а затем перезагрузить компьютер. По идее, Windows найдет и установит недостающий драйвер сама.
Устройство интерфейса пользователя — Human interface device
Устройство интерфейса с человеком или HID — это тип компьютерного устройства, обычно используемого людьми, которое принимает ввод от людей и выдает вывод людям.
Термин «HID» чаще всего относится к спецификации USB-HID . Этот термин был придуман Майком Ван Фландерном из Microsoft, когда он предложил комитету USB создать рабочую группу класса «Устройства ввода для человека». Рабочая группа была переименована в класс устройств интерфейса человека по предложению Тома Шмидта из DEC, поскольку предлагаемый стандарт поддерживает двунаправленную связь.
Менее распространенные HID
Требования для приложений для телефонов с Windows 8. x
Приложения для телефонов Windows 8. x могут получить доступ к API Windows. Devices. хуманинтерфацедевице , если производитель ПОДДЕРЖИВАЛ протокол HID для конкретных устройств и предоставил соответствующие данные устройства разработчикам приложений. Список поддерживаемых устройств HID, а также данные, необходимые для реализации обнаружения устройств, см. в документации производителя.
Есть много странных терминов, связанных с использованием компьютера. Возможно, вы видели «Устройство интерфейса человека» или «HID». Звучит как что-то из научно-фантастического фильма, но что именно это означает?
Урок #4. Опыты с программатором PICkit2
Компания Microchip Technology Inc. выпускает недорогой программатор разработчика PICkit2, который в первую очередь используется для программирования Flash-контроллеров. Отличительной особенностью этого программатора является доступность полной документации и исходных кодов прошивки для микроконтроллера, и программы оболочки для компьютера. PICkit2 получает питание от USB, формирует регулируемые напряжения программирования и питания, а так же имеет 3 линии входа-выхода для подключения к программируемому устройству. Для возможности обновления прошивки программатора в PICkit2 реализована программа бутлоадер. |
Примеры атак
При проведении реальных HID-атак можно начать с быстрого создания локального пользователя. Демонстрирую это на примере Windows 10 сборки 1607.
Согласись — удобно. Незаметно вставил микроардуину в USB-порт чужого компа, и через несколько секунд на нем уже появилась локальная учетка с заданными тобой параметрами логин/пароль.
Глянем чуть глубже и немного усложним. Подготовим FTP-сервер и загрузим на него боевую нагрузку. И вот так будет выглядеть загрузка файла и его запуск. Благодаря самой загрузке это займет чуть больше времени, но, к примеру, админская сессия того стоит.
Поясню момент с файлом: да, можно выполнить все команды вводом, но суть опять в тайм-ауте исполнения. Мы не знаем, как долго может сервер реагировать на команды (на это влияет скорость интернет-соединения, скорость работы самого компьютера и еще куча разных факторов). Также стоит учесть то, что ты можешь использовать в своих тестах SSD (и все вроде бы работает), но при подключении к компьютеру с HDD. думаю, ты уловил смысл.
Наверняка ты обращал внимание, что USB-клавиатура определяется BIOS еще до загрузки ОС. В UEFI вообще интегрирована расширенная поддержка USB-портов разных версий с готовыми профилями для HID-девайсов и USB-накопителей
Большой объем флеш-памяти современных материнок и унифицированная структура UEFI позволяют загрузить низкоуровневый бэкдор, просто вставив копеечный хакерский девайс из ардуины.
Графический пользовательский интерфейс
Этим термином чаще обозначаются UI мобильных и веб-приложений, а также игр и сервисов для развлечений.
Мобильные интерфейсыВыделяется в отдельную группу SIMP (Screen, Icon, Menu, Pointer). Подход к дизайну мобильных интерфейсов отличается от подхода к дизайну настольных приложений. Поведение пользователей при взаимодействии со смартфонами отличается от работы на компьютере из-за размера экрана и отсутствия отдельной клавиатуры с мышью/тачпадом. Элементы здесь заполняют экран полностью, а блоки и системы зависят от требований операционной системы.
Дизайн мобильных приложений также зависит от поведенческих паттернов пользователей, например того, как они держат смартфон в руке, какие действия удобно совершать на ходу и т.д.
Преимущество таких приложений в том, что их не нужно устанавливать на компьютер — все функции доступны в браузере. Создают такие приложения с помощью JavaScript, HTML и CSS.
Игровой и материальныйСвязан с механикой геймплея. Именно в нем лучше всего раскрывается сопровождающая роль интерфейса, так как игрок лучше ощущает, что движется к какой-то цели (например, победить босса и пройти уровень). Интерфейс зависит от игры: кнопки, жесты, движения мыши или взаимодействие с сенсором на экране или 3D интерфейс в VR, нажатие клавиш на джойстике.
Компьютер не включается
Вероятно, это проблема № 1, с которой сталкиваются многие из нас. Чтобы понять эту проблему, вы можете сравнить ее с нашим человеческим телом.
Когда мы болеем, у нас часто поднимается температура. Это механизм организма для борьбы с инфекцией. Точно так же, когда компьютер сталкивается с какой-либо проблемой, он обычно не включается, пока вы не исправите это.
Существуют сотни причин, по которым ПК не загружается. Проблемы могут варьироваться от сбоя питания до заражения вирусом. Обычно, следуя инструкциям, приведенным ниже, ваш компьютер должен запускаться.
Решения:
1. Проверьте блок питания
Если это ноутбук , потеря энергии может произойти из-за полностью разряженной батареи. Итак, первое, что нужно сделать, это подключить его и оставить заряжаться на несколько часов. Если это не сработает, это может означать, что зарядное устройство неисправно, поэтому, если вы можете попробовать другое зарядное устройство. Если у зарядного устройства есть индикатор питания, проверьте, загорается ли он при подключении.
Если ваш ПК является настольным компьютером и не запускается, убедитесь, что это не штепсельная розетка по ошибке, подключив его к другой розетке. Если это не сработает, возможно, произошел сбой блока питания вашего компьютера.
2. Убедитесь, что монитор или дисплей работает
Если вы видите, что на вашем ПК есть питание, потому что вентиляторы запускаются или загораются индикаторы питания, но больше ничего не происходит, есть пара возможных неисправностей.
Если у вас есть настольный ПК, подключенный к внешнему монитору, это может быть неисправный дисплей. Проверьте подключение питания монитора и убедитесь, что он правильно подключен к компьютеру. Попробуйте отключить его и снова подключить. Если это не помогает, попробуйте подключить другой монитор, если это возможно. Таким образом, вы сможете либо определить причину ошибки монитора, либо исключить ее.
Если у вас есть ноутбук или вы исключили внешний дисплей, возможно, ваш компьютер находится в спящем режиме и у него возникают проблемы с пробуждением. Чтобы проверить это, выключите его полностью и перезапустите с холода. Для этого нажмите и удерживайте кнопку питания в течение 5 секунд, а затем нажмите ее еще раз, чтобы запустить компьютер.
3. Устраните проблемы с внешним оборудованием
Если ни один из вышеперечисленных шагов не сработает, виновником могут быть периферийные устройства. Это может произойти либо из-за проблем с электричеством, либо из-за внешних аппаратных сбоев.
После этого попробуйте перезапустить систему еще раз, чтобы увидеть, работает она или нет. Если это не так, переходите к следующему заключительному шагу.
4. Переустановите систему
Если ни один из шагов не работает, последнее, что вам нужно сделать, это переустановить Windows. Потому что до этого момента вы можете быть уверены, что это проблема программного, а не аппаратного обеспечения.
Поскольку вы не можете включить компьютер, нет доступа к вашему файлу. Тем не менее, есть способы для резервного копирования ваших файлов с жесткого диска. Чистая установка поможет восстановить все до нормального состояния, если ваша система заражена или повреждена.
USB
Интерфейс Universal Serial Bus (USB) заменил последовательные и параллельные порты, PS/2 игровые порты и зарядные устройства. Этот порт может применяться для передачи данных, выступать в качестве интерфейса для подключения периферийных устройств и даже использоваться в качестве источника питания. Сейчас существует четыре вида USB: Type-A, Type-B, Type-C, micro-USB и mini-USB. С помощью любого из них может быть выполнено подключение внешних устройств к компьютеру.
USB Type-A
Порт USB Type-A имеет 4-контактный разъем. Существует три различных, совместимых версии — USB 1.1, USB 2.0 и USB 3.0. Последний является общим стандартом и поддерживает скорость передачи данных до 400 Мбит/сек.
Позже был выпущен стандарт USB 3.1, который поддерживает скорость до 10 Гбит/сек. Черный цвет обозначает USB 2.0, а USB 3.0 — помечена синим. Вы можете видеть это на изображении:
Схема подключения контактов:
USB Type-C
Type-C — это последняя спецификация USB и в этот разъем можно вставлять коннектор любой стороной. Планируется, что со временем она заменит Type-A и Type-B.
Порт Type-C состоит из 24 контактов и может пропускать ток до 3А. Эта особенность используется для современной технологии быстрой зарядки.
Типы устройств с человеческим интерфейсом
Как упоминалось ранее, USB-устройства являются наиболее распространенными устройствами с интерфейсом пользователя, которые вы увидите, но есть и другие типы.
USB-устройства относятся к классу «USB-HID». Сюда входят обычные предметы, такие как клавиатуры, мыши, веб-камеры, трекпады и игровые контроллеры. К другим устройствам USB-HID относятся термометры, аудиоинструменты, медицинское оборудование, телефоны и тренажеры.
Другой распространенный тип — Bluetooth-HID. Это тот же протокол USB-HID с небольшими изменениями для Bluetooth. Как и следовало ожидать, сюда входят устройства, похожие на USB-HID, но они подключаются через Bluetooth. Мышь Bluetooth будет работать независимо от того, подключена она к ПК с Windows, Mac или Chromebook.
Устройства с интерфейсом пользователя — одни из самых распространенных устройств, которые мы используем с компьютерами. Нам не очень нравится, насколько они просты в использовании. Было время, когда все было не так просто.
HID не только отвечает за упрощение использования компьютеров, но и вносит свой вклад в массовый рынок запасных частей. Существуют тысячи клавиатур, мышей, веб-камер, контроллеров и других продуктов, о несовместимости которых вам просто не нужно беспокоиться.
В истории компьютеров было много достижений, но стандарт Human Interface Device оказался очень успешным.
ПК становится медленным
Я знаю, что вы чувствуете, когда требуется всего 5 минут, чтобы открыть только приложение. Ну, это еще одна распространенная проблема, с которой люди сталкиваются в своей повседневной жизни.
Основная причина обычно связана с продолжительностью работы компьютера. Компьютер старше 2 лет будет испытывать это независимо от их технических характеристик.
Решения:
1. Найти ресурсоёмкую программу
В вашей системе полно программ, безусловно, будет одна или две программы, которые используют множество ваших ресурсов, например, оперативную память.
Чтобы узнать, откройте диспетчер задач. Вы можете щелкнуть правой кнопкой мыши на панели задач и выбрать опцию «Диспетчер задач» или нажать Ctrl + Shift + Escape, чтобы открыть ее. В Windows 8, 8.1 и 10.
Щелкните заголовки «CPU», «Memory» и «Disk», чтобы отсортировать список по приложениям, использующим наибольшее количество ресурсов. Если какое-либо приложение использует слишком много ресурсов, вы можете закрыть его как обычно — если вы не можете, выберите его здесь и нажмите «Завершить задачу», чтобы принудительно закрыть его.
2. Отключить запуск программы
Автозапуск программ во время запуска системы может быть основной причиной замедления работы ПК.
В Windows 8, 8.1 и 10 теперь есть диспетчер запуска в диспетчере задач, который вы можете использовать для управления программами запуска.
Щелкните правой кнопкой мыши панель задач и выберите «Диспетчер задач» или нажмите Ctrl + Shift + Escape, чтобы запустить его. Перейдите на вкладку «Автозагрузка» и отключите автозапуск приложений, которые вам не нужны.
Windows подскажет вам, какие приложения больше всего замедляют процесс запуска.
3. Сканирование на наличие вредоносного и рекламного ПО.
Ежедневное использование компьютеров может заставить вас случайно поймать вредоносное и рекламное ПО.
Обычно это небольшие вредоносные программы, которые вылавливаются из Интернета, когда мы что-то просматриваем или скачиваем.
Эти программы предназначены для кражи вашей информации и для этого они должны передавать информацию через Интернет, что потенциально может замедлить работу вашей системы.
Чтобы удалить их, просто используйте встроенное антивирусное программное обеспечение для сканирования и обнаружения. Для получения дополнительной информации о том, как удалить шпионское и рекламное ПО, ознакомьтесь с моей статьей здесь .
Делаем хакерский девайс за пять долларов
Приступим к практической части на примере платы Arduino micro Pro и переходника mini-USB USB Type A. В качестве основной ОС используется Kali Linux (4.14.0-kali3-amd64), но на других сборках Linux и в Windows проблем возникнуть не должно. Arduino IDE v. 1.8.6 скачана с официального сайта. В качестве жертвы выбран тот же компьютер.
Готовим софт
Скачиваем дистрибутив, распаковываем. В каталоге лежит файл с символичным названием install.sh. Его и запустим на исполнение:
Минуту-две смотрим на надпись Adding desktop shortcut, menu item and file associations for Arduino IDE. и вуаля! На рабочем столе появляется ярлык для запуска.
Теперь подключаем нашу плату. Весь нужный софт установился вместе с IDE, поэтому нет необходимости что-то доустанавливать, монтировать и запускать.
Командой lsusb можно проверить, что устройство определено верно и все идет по плану (Arduino Micro Pro определяется как Leonardo).
Следующая команда покажет порт, на котором повис наш Leonardo:
Теперь можно открыть саму IDE. Сразу после запуска идем в меню «Инструменты» и в разделе «Платы» выбираем Arduino Leonardo. Там же в «Инструментах» выбираем нужный порт (он там, скорее всего, будет один) из списка tty.
После этих действий связь платы с компьютером установлена, программное обеспечение настроено, можно переходить к написанию скетча (так называют код для Arduino-совместимых макетных плат).
После запуска Arduino IDE картинка будет следующая.
Есть еще один вариант запустить подобие Arduino IDE. На сайте представлен Arduino Web Editor. На мой взгляд, он менее удобен, но тут уже кому как по вкусу. Для его использования будет необходимо зарегистрироваться на сайте либо авторизоваться через Google-аккаунт. Также для связи браузера с устройством потребуется установить плагин (он есть для Chrome и Firefox). Его удобство в том, что все написанные скетчи будут онлайн (с любой точки земли можно получить доступ к ним), но я в таких тонких деталях предпочитаю локальную работу.
В остальном редакторы похожи.
Изначально присутствует заготовка из void setup() и void loop() . Напомню, что код, написанный в функции setup(), будет исполняться сразу при подаче питания на плату, причем он исполнится один раз. Функция loop() отреагирует на питание таким же образом, вот только повторяться действие будет постоянно (цикл с бесконечным счетчиком и неизменным кодом на каждый проход).
Типы устройств интерфейса пользователя
Как упоминалось ранее, USB-периферийные устройства являются наиболее распространенными устройствами с интерфейсом пользователя, которые вы увидите, но есть и другие типы.
USB-устройства относятся к классу «USB-HID». Это включает в себя обычные вещи, такие как клавиатуры, мыши, веб-камеры, трекпады и игровые контроллеры. Другие устройства USB-HID включают термометры, аудио инструменты, медицинское оборудование, телефоны и тренажеры.
Другой распространенный тип — Bluetooth-HID. Это тот же протокол USB-HID с небольшими изменениями для Bluetooth. Как и следовало ожидать, сюда входят устройства, аналогичные USB-HID, но они подключаются через Bluetooth. Мышь Bluetooth будет работать независимо от того, подключена ли она к ПК с Windows, Mac или Chromebook.
Устройства интерфейса пользователя — одни из наиболее распространенных устройств, которые мы используем с компьютерами. Мы не очень ценим, насколько легко ими пользоваться. Было время, когда это было не так просто.
HID не только упростил использование компьютеров, но и внес свой вклад в массовый рынок аксессуаров. Существуют тысячи клавиатур, мышей, веб-камер, контроллеров и других продуктов, о несовместимости с которыми вам просто не нужно беспокоиться.
В истории компьютеров было много достижений, но стандарт Human Interface Device имел оглушительный успех.
Источник
Заключение
- HID или Human Interface Devices — основные устройства, которые используются для работы с персональным компьютером (например мышь, клавиатура).
- Отключать без необходимости не стоит.
HID button drivers
Use the Microsoft-provided button driver for GPIO buttons; otherwise, implement your driver that injects HID data to the operating system.
Buttons (Power, Windows, volume and rotation lock) are typically used for tasks that occur while the physical keyboard is not available to the user, on form factors such as convertibles or slates. Buttons declare themselves to the operating system as HID devices by supplying HID button report descriptors. This allows the system to interpret the purpose and events of those buttons in a standardized way. When a button state changes, that event is mapped to a HID Usages. A HID transport minidriver reports those events to upper-level drivers that then send details to HID clients in user mode or kernel mode.
For physical general-purpose I/O (GPIO) buttons, the HID transport minidriver is a Microsoft-provided in-box driver that reports the events based on the interrupts that are received on the defined GPIO hardware resources.
The in-box driver cannot service a button that is not wired to an interrupt line. For such buttons, you need to write a driver that exposes the button as a HID button and reports state changes to the HID class driver (Microsoft-provided). Your driver could be a HID source driver or a HID transport driver.