Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
HAL (Hardware Abstraction Layer)
В операционных системах семейства Windows NT HAL является неотъемлемой частью кода, исполняемого в режиме ядра, находится в отдельном загрузочном модуле, загружаемом совместно с ядром. Это обеспечивает возможность использования одного и того же загрузочного модуля собственно ядра ОС Windows NT на ряде систем с различными архитектурами шин ввода-вывода, управления прерываниями и таймерами. К примеру, рабочие станции, основанные на SGI Intel x86, были не совместимы с IBM PC-совместимыми рабочими станциями, но благодаря HAL Windows NT мог запускаться на них. Аналогичным образом одно и то же ядро Windows NT используется как на современных системах с контроллером прерываний APIC, так и на устаревших системах без поддержки APIC.
Windows Vista и выше (Windows Server 2008 и выше для серверов) автоматически определяют, какой уровень HAL должен быть использован во время загрузки.
BSD, Mac OS X, Linux, Solaris, CP/M, MS-DOS и некоторые другие портируемые ОС также имеют HAL, несмотря на то, что он не разрабатывался явно для выполнения описанных выше функций. Некоторые системы, такие, как Linux, имеют возможность вставлять подобный слой, к примеру, Adeos (англ.)русск., во время работы. Ядро операционной системы NetBSD широко известно наличием чистого слоя абстрагирования от аппаратного обеспечения (HAL), что позволяет ему быть высоко-портируемым. Частью этой системы являются uvm(9)/pmap(9), bus_space(9), bus_dma(9) и другие подсистемы. Популярные шины, которые используются более чем на одной архитектуре, такие, как ISA, EISA, PCI, PCI-E и др., также абстрагированы, позволяя написанным под них драйверам также быть высокопортируемыми с минимальным изменением кода.
«Экстремальный» пример HAL может быть найден в архитектурах System/38 (англ.)русск. и AS/400. Большинство компиляторов для таких систем генерируют абстрактный машинный код. Лицензированный внутренний код (LIC) переводит этот виртуальный машинный код во внутренний (собственный) код процессора, на котором он запускается, и выполняет получившийся внутренний код (исключение составляют компиляторы, которые сами генерируют LIC; эти компиляторы не доступны за пределами IBM). К примеру, прикладное программное обеспечение и программное обеспечение операционной системы, расположенные над слоем LIC, скомпилированные на оригинальной архитектуре System/38, запускаются без каких-либо модификаций и перекомпиляций на последних системах AS/400. И это несмотря на тот факт, что лежащее в основе аппаратное обеспечение было кардинально изменено; по крайней мере, три различных типа микропроцессоров находились в использовании.
HAL является даже более низким уровнем в компьютерных языках программирования, чем API, потому что он взаимодействует непосредственно с аппаратным обеспечением вместо ядра системы, следовательно, HAL требует меньше процессорного времени, чем API. Языки высокого уровня часто используют HAL и API для взаимодействия с компонентами более низкого уровня.
Содержание
Текущее состояние
HAL является устаревшим и не рекомендуется к использованию. Решения, поставленные за основу при проектировании HAL, на практике оказались неэффективными и единственным выходом оказалось создание новой подсистемы и перенос функциональности. Такой системой стал udev. В настоящий момент поддержка HAL убрана из ядра, а самые крупные дистрибутивы (Ubuntu[3], Debian и Fedora) завершили переход и используют Udev.
Причины устранения
Основное преимущество в новой подсистеме udev (перед HAL) в том, что первый является событийно-управляемой и имеет тесную интеграцию с ядром, а HAL же, будучи реализованным в userspace в виде демона, вынужден периодически опрашивать ядро. Таким образом, использование событийно-управляемого udev значительно снижает нагрузку на систему, а значит и электропотребление. Также, описания правил для устройств выполнены в виде простых файлов конфигурации и гораздо проще и понятней для пользователей и разработчиков, чем XML примененный ранее в HAL. И наконец, udev разработан «с чистого листа», с учётом предыдущего опыта и в нём отсутствует устаревший или беспорядочный код.
Процесс миграции c HAL на udev
Изначально большая часть логики HAL была перенесена в udev, а правила в новый модуль — DeviceKit (не путать с PolicyKit или ConsoleKit). Однако вскоре схема udev+DeviceKit несколько изменилась — разработчики обнаружили, что большая часть аппаратуры уже управляется различными программными компонентами и необходимы только правила для дисков (udisks) и питания (upower). Проект DeviceKit был разбит на несколько более мелких частей и больше не используется и не упоминается. Таким образом современные дистрибутивы используют только Udev и правила к нему (udisks, upower — часть пакета udev-extras). Однако ввиду инерционности кода, многие программы всё ещё требуют устаревший HAL (в основном для обнаружения дисков) и поэтому дистрибутивы вынуждены поставлять HAL, фактически дублируя логику (например Qt3, и столкнувшийся с этим проект Trinity).
Thread: Armory Crate cant update ASUS HAL Central
Thread Tools
Search Thread
Display
Armory Crate cant update ASUS HAL Central
ROG Member Array Nox01 PC Specs
| Nox01 PC Specs | |
| Motherboard | ROG Maximus XI Hero (Wi-Fi) |
| Processor | Intel 9700K |
| Memory (part number) | Corsair Dominator Platinum RGB 3200Mhz |
| Graphics Card #1 | ROG STRIX 2070 Super A8G |
| Monitor | Asus XG32VQR |
| Storage #1 | Samsung 970 EVO PLUS 1TB |
| Storage #2 | Samsung 970 EVO PLUS 1TB |
| CPU Cooler | ROG Ryujin 360 |
| Case | ROG Strix Helios |
| Power Supply | ROG Thor 1200W |
| Keyboard | ROG Claymore |
| Mouse | ROG Pugio |
| Headset | Creative SoundBlasterX H5 Tournament Edition |
| Mouse Pad | ROG Balteus |
| Headset/Speakers | Creative SoundBlaster Kratos S5 |
| OS | Windows 10 Pro |
Join Date Jan 2020 Reputation 10 Posts 7
Same here. I need update Rog Chakram, but i can’t. error code 12
ROG Gladius II (Error code: 12)
Same problem. I am stuck in an update loop for Rog Gladius II (error code: 12) which has stopped all control over all my aurasync devices. I can not change any settings on mouse, mobo, ram, & led header nor can I use aura creator.
weird.. i was on windows version 1909 it doesn’t work.. update to windows 2004 it still doesn’t work but after 4 days i tried again it suddenly updated.. (macro still doesn’t work when using left click as repeated clicks)
I have a Zenith II Extreme Alpha and ran into similar issues trying to update HAL. Initially, I was some issues with Armoury Crate losing control of my Aura Sync. I tried reinstalling Armoury Crate, but it wouldn’t install. I finally ended up reinstalling Windows 10. After that, I was able to install Armoury Crate. I then found that it said I needed to update HAL. The first time I tried it failed. I don’t remember the error code, but it said to reboot and try again. Then HAL installed. However, Aura Sync only detected 3 of 4 of my memory sticks. No matter what I tried, it only controlled 3 out of 4 of the sticks. I tried reinstalling Armoury Crate but it failed. I restored Windows from an image I had and now I’m up and running again. However, it says I need to update HAL. I’m going to hold off until I hear if problems are fixed.
О том, как я заставлял Ubuntu работать 10 часов от батареи

О том, как заставит ноутбук работать под линуксами как можно дольше, написано немало, в том числе и на хабре. В какой-то степени я еще раз соберу все советы воедино, от очевидных до обскурных, заодно опишу несколько проблем и решений, которые у меня оказались достаточно «индивидуальными».
Устанавливал я Ubuntu 10.10 на ноутбук Acer Aspire Timeline 5810TG. Эта машина обладает экраном в почти 16 дюймов и относительно производительным железом, зато батарея достаточно емкая, чтобы ставить с ней личные рекорды.
Содержание поста.
1. Отключаем дискретную видеокарту.
2. Полезные команды для энергосбережения.
3. Проблемы ноутбука (связанные с энергосбережением) и их решения.
4. Автоматизация.
5. Дополнительные советы.
1. Отключаем дискретную видеокарту.
В моем ноутбуке имеется возможность переключаться между встроенным графическим чипом от Intel, маломощным и малотребовательным к электроэнергии, и сравнительно сильной и энергоемкой карте ATI Radeon HD4330. Многие обладатели ноутбуков с переключаемой графикой испытывают проблемы в работе с Linux-системами. Поиск по «ubuntu switchable graphics» на убунтуформус выдает больше 50 страниц тем.
Мне производительная графическая карта нужна редко, поэтому я задался целью отключить ее по умолчанию с возможностью быстрого и безболезненного включения.
Очень много читал те самые 50 страниц форумных тем. А надо было всего лишь заглянуть в убунту-вики или даже попробовать воспользоваться хабрапоиском.
В версиях ядра, начиная с 2.6.34, присутствует механизм vga_switcheroo, позволяющий переключаться между видеокартами. То есть в Ubuntu 10.10 он есть по умолчанию. О том, как им пользоваться, хорошо было написано здесь (см. второй способ) почти год назад, я по-быстрому напомню, что к чему.
Вначале выполним
Зная, какой GPU как обозначается, посмотрим, какой из них в каком состоянии.
Плюсик стоит на против видеочипа, который используется в данный момент, Pwr означает, что видеокарта включена и потребляет энергию.
Важно: у всех моих немногих знакомых, обладающих ноутбуками с двумя видеокартами, картина одинаковая: что бы вы не делали, при загрузке системы обе карты работают, при этом для вывода используется встроенная «слабая» графика. Это нам на руку, ибо обесточивание неактивной видеокарт происходит бескровно.
Команда отключает неиспользуемую GPU сразу же. Поэтому мы обратимся к файлу /etc/rc.local, добавив в него вышеуказанную команду (перед строчкой exit 0). Так, при загрузке систему дискретная видеокарта уже будет отключена и мне не нужно будет беспокоиться ни о чем.
Важно: насколько я могу судить, vga_switcheroo не работает, если установлены проприетарные драйверы на дискретную видеокарту.
Кстати, если вы хотите переключаться между видеокартами через графический интерфейс, установите Ubuntu Control Center. Программа представляет собой панель управления параметрами Ubuntu, но нас она интересует исключительно из-за опции переключения между GPU (естественно, здесь это тоже происходит средствами vga_switcheroo).
Будьте аккуратны с UCC: во-первых, работает кривовато, например, мне необходимо было вначале переключиться на дискретную видеокарту, а лишь затем на встроенную, чтобы обесточить дискретную (либо вначале выполнить echo OFF > /sys/kernel/debug/vgaswitcheroo/switch, а затем переключаться на встроенную GPU). Но работает. Во-вторых, переключение происходит сразу, то есть без спросу выполняется завершение сеанса и приходится вновь залогиниваться.
Больше о переключаемой графике можно почитать в хабрапосте, на который я дал ссылку выше, а также в Убунту-вики и в этом блоге. Я к этому вопросу возвращаться не буду.
2. Полезные советы по энергосбережению.
Собирались эти советы с lesswatts, ubuntuforums, учитывались хинты от powertop, кое-что было найдено случайно.
1) Если у вас стоит убунту на ноутбуке, стопроцентно у вас установлен пакет laptop_mode, оптимизирующий работу компьютера в зависимости от источника питания. Значение 0, посылаемое в /proc/sys/vm/laptop_mode, отключает режим энергосбережения, 5 устанавливает самый агрессивный. Подробнее о том, как именно laptop_mode сберегает энергию, можно прочесть где угодно.
2) Режим энергосбережение для SATA-устройств.
Не знаю, почему у меня в /sys/class/scsi_host/ целых шесть устройств 🙂 Для включения максимального быстродействия выполнить команды с max_performance вместо min_power.
3) По умолчанию в Ubuntu есть четыре профиля работы процессора:
conservative: медленно повышает частоту процессора в зависимости от нагрузки на систему и резко сбрасывает частоту к минимальной при простое.
ondemand: быстро повышает частоту процессора при возрастании нагрузки и медленно сбрасывает частоту к минимуму при простое.
powersave и performance, очевидно, соответствуют минимальной и максимальной частотам CPU. Многие независимые пользователи крайне не советуют использовать режим performance, поэтому даже для работы от сети, когда экономить на ваттах нет смысла, я использую режим ondemand.
4) Параметр ‘sched_mc_power_savings’ из /sys/devices/system/cpu/ позволяет использовать энергосберегающий режим работы процессора в случае, если у того более одного ядра, благодаря особому распределению нагрузки между ядрами.
5) Встроенные аудио-чипы от Intel (которые принадлежат к т. н. High Definition Audio — HDA) также имеют возможность экономии ватт, если звуковой чип не используется
6) Для того, что выиграть еще чуть-чуть времени работы батареи, можно запретить системе время от времени «опрашивать» cd/dvd-привод на предмет наличия там диска.
7) Можно выключить к черту веб-камеру вместе с драйвером. Не проверял отдельно, но сообщают, что дело очень хорошее при работе от батареи. Естественно, пропустите этот шаг, если вам придется использовать скайп или еще для чего-то понадобится камера.
8) Dirty ratio — максимальный размер памяти (в процентах), для хранения грязных данных прежде чем процесс, их сгенерировавший, будет принужден записать их. Чем выше значение, очевидно, тем реже производится запись и тем меньше активность жесткого диска и системы.
9) Dirty background ratio — минимальное число памяти (в процентах), где позволено хранить гразные данные вместо записи на диск. Этот параметр должен быть намного меньше чем dirty_ratio что бы позволить записывать куски грязных данных за один проход.
10) Dirty Writeback sentisecs — как часто ядро должно проверять есть ли «грязные» (измененные) данные для записи на диск (в сантисекундах). Чем выше значение, очевидно, тем реже используется диск для записи грязных данных.
11) Включение режима энергосбережения PCI Express, как говорят люди, позволяет экономить достаточно много энергии батареи.
3. Некоторые проблемы ноутбука (связанные с энергосбережением) и их решения.
Проблема 1. Не работает изменение яркости экрана. Яркость всегда стоит на максимуме. Это критичный момент для энергосбережения, так как яркая подсветка дисплея съедает уйму электроэнергии. Эта проблема наблюдается на многих ноутбуках, на Acer’ах особенно часто. Симптом: изменение яркости с помощью gnome-апплета не дает эффекта, сколько ползунок не таскай, переключение клавишами FN+Right, FN+Left, или аналогичными Fn-комбинациями вешает систему, помогает лишь хард-ресет.
Решение оказалось не самым практичным, но достаточно простым:
Здесь ХХ принимает значения от 00 до FF в шестнадцатеричной системе. Для работы от батареи я выбрал значение 40, для работы от сети — FF.
Закрылся HAL
Здравствуйте, очень давно пользуюсь софтиной HAL, для поиска по многим торрентам с определенными критериями.
А сегодня к ней обратился и выскочило окно что проект более не поддерживается.
Кто пользует похожий софт, да и есть ли аналоги вообще. Поделитесь опытом.
Программы и Браузеры
181 пост 3.7K подписчиков
Правила сообщества
-При возникновении споров относитесь с уважением друг к другу, а так же приводите аргументы.
Разрешено всё, что не запрещено правилами Пикабу.
Rats on the board вроде бы
@burbulika. Нашли аналог какой?
Блин очень жалко Hal, срочно нужен аналог. есть советы?
Товарищ майор, вы слишком палитесь
А я до сих пор HAL использую. что тотам перекопировал куда-то и он не обновляется и ищет торренты, как раньше
Объёмный виртуальный звук в любимых наушниках на любой звуковой карте. Вплоть до 7.1 + деморолик от меня
Здравствуйте уважаемые Пикабушники!
Не знаю был ли пост на эту тему, но я не нашел.
Речь пойдет о том как добиться так называемого бинаурального звучания в играх, фильмах и музыке, благодаря бесплатным OpenSource проектам на Виндовс. (Если вам понравится этот пост позже выложу инструкцию под Линукс).
Очень полезно для онлайн шутеров, позволяет получить нехилое преимущество.
Так же фильмы начинают звучать совсем по другому! А музыка при прослушивании играет как будто из колонок, из-за чего мозг не так устает при частом прослушивании.
Мой деморолики в конце поста, можете послушать их в наушниках (в колонках не работает) и решить, а нужно ли вам это.
И так что нам понадобится две программы, а точнее программа и модуль для неё.
Следуем инструкции установки, устанавливается просто (как и большинство программ в Виндовс. Будут вопросы, добро пожаловать в комментарии).
3) Скачиваем и устанавливаем программу-модуль Hesuvi (она то и дает объёмный звук).
Следуем инструкции установки, устанавливается просто (как и большинство программ в Виндовс. Будут вопросы, добро пожаловать в комментарии).
4) Настойки ОС Виндовс.
Но не расстраивайтесь, позиционирования звука как в кинотеатре у вас не будет, но звуковой эффект будет как в колонках 2.0 что неплохо для стерео музыки.
5) Настройка Hesuvi
Запускаем программу Hesuvi. Видим такое первым такое окно ка на скриншоте ниже. Это основная рабочая вкладка virtualization. Ставим справа галочки Upmix Content, или не ставим =)..
ВАЖНО: Управление эффектами производится на этой вкладке с меню-списке Common HRIRs.
Выбираем на свой вкус, лично мне нравится dh++.wav (это dolby headphone).
Переходим во вкладку Connection, видим штекеры, наживаем на них, так чтобы они загорелись синим цветом и «вставились в разъем, как на картинке ниже).
Также ниже проверяем установлено ли по умолчанию значение Visualization ниже под изображением штекеров.
Далее переходи на вкладку Addiction и ставим единственную главку как на скриншоте.
(у меня работало и без нее, но не помешает на всякий случай).
Виртуальный звук 7.1
Виртуальный звук 7.1
Если будут вопросы жду вас в комментариях!
Спасибо за внимание! Удачи!
Альтернативы продуктам Adobe в Open source
Мой топ программ для дизайна и не только)
Найти и сохранить таймкоды всех объектов на видео одним кликом или машинное обучение для видеомонтажа
Порог вхождения в видеомонтаж за последние несколько лет понизился до такой степени, что скоро «Режиссер монтажа» вымрет как профессия! Их функции все чаще на себя берут режиссеры, продюсеры, редакторы и прочие.
Этому способствует развитие монтажных систем и цифровых носителей, которые очень упростили процессы, доведя видеомонтаж до банальных «копировать», «обрезать» и «сохранить». Ушли в прошлое сложные монтажки, которые требовали определенной подготовки для пользователя в области коммутации видеооборудования и параметров кодирования.
Аналоговые Betacam-ы были вытеснены всевозможными флешками, а многочисленные кодеки пришли к единым стандартам, таким как H.264.
Новый виток развития наметился в последнее время благодаря повсеместному развитию нейронных сетей. Теперь эти технологии постепенно подбираются в видеопроизводству.
Теперь искать любые фрагменты видео очень просто
Дело в том что почти треть работы видеомонтажера заключается в рутинном поиске видеоряда из исходников, которые надо каждый раз шерстить в поиске контекстного плана под закадровый текст, по моему это не несет никакой творческой составляющей. Ну и подумал я, а что если написать соф, который будет проходится по папке с исходниками, распознавать объекты, аккуратненько записывать их в БД. Далее, в момент поиска видео фрагментов для так называемой «джинсы», вводится поисковое слово, например «Солнце», и все что находится каким то образом передается в монтажную систему.
Сказано-сделано, через какое то время я выложил приложение Videoindex в Mac App Store.
Моя программа предлагает указать путь к папке с исходниками, выбрать одну из двух встроенных в приложение обученных моделей Core ML (или даже использовать свои личные модели, если такие имеются) и запустить сканирование вашей библиотеки видео.
Она будет распознавать объекты на видео и записывать информацию о пути к конкретному файлу и таймкоду найденного обьекта. После завершения сканирования, можно будет воспользоваться поиском, который выдаст все найденные фрагменты, соответствующие поисковому запросу.
Весь найденный список фрагментов можно будет экспортировать в формат XML, который как раз используется для переноса сохраненных секвенций с файлами и поддерживается практически всеми современными монтажными программами.
В итоге буквально в пару кликов все, что вы искали, окажется аккуратно выложено на секвенции в вашем проекте. То, что раньше могло занять буквально половину дня, сейчас займет пару минут.
Похожая (если не та же самая) технология распознавания используется в iOS для распознавания объектов на ваших фото, и облегчает навигацию по альбомам в iPhone.
Базовые модели машинного обучения используются для распознавания видеообъектов. Приложение поставляется с двумя моделями — YOLOv3 и Resnet50. Вы можете использовать их вместе и по отдельности, а также как свои собственные файлы моделей Core ML.
Управление моделями производится в окне настроек где доступныаж три слота для загрузки моделей. Первый слот предназначен для модели YOLOv3, второй — для Resnet50, а третий слот доступен для загрузки ваших собственных файлов модели Core ML.
Videoindex активно отслеживает состояние каталогов, которые вы добавили для сканирования. То есть, если вы удалите или добавите файлы в папку, указанную в программе, эти изменения будут сохранены в базе данных Videoindex при следующем запуске. Если появляются новые файлы, статус просканированной папки изменится на «Еще не просканирован», и вы сможете сканировать новые видеофайлы.
Конечно, нужно учитывать что качество индексации и поиска напрямую зависит от качества обученных моделей, которые содержат информацию о распознаваемых объектах. Но файлов моделей с каждым днем становится все больше, организуются сообщества, где доступны для скачивания файлы моделей в различных форматах, таких как Kaggle, или просто набор картинок – Dataset, которые используются для создания этих самых обученных моделей.
А пока предлагаю скачать Videoindex в Mac App Store и попробовать. На Mac с процессорами M1 программа работает особенно эффективно, так как в этих чипах используются ML-акселераторы. Хотелось бы надеяться, что со временем, запустив последний Adobe Premier, мы увидим всего лишь одну кнопку с надписью «Cмонтировать» и все. 🙂



























