Вопросы по теме 'iokit'

Невозможно найти ссылки на символы для IOKit kext
Я подписался на это руководство на сайте разработчиков Apple . При запуске kextlib он показывает 2 неопределенных символа, вот результат: sudo kextlibs -xml -undef IOKitTest1.kext/ <key>OSBundleLibraries</key>...
1076 просмотров
schedule 23.10.2021

Как мне отменить регистрацию обратного вызова IOKit.HID?
Я использую IOHIDDeviceRegisterInputReportCallback для прослушивания входящих отчетов при использовании устройства HID. Когда я отключаюсь от устройства (программно, а не физически), я хочу отменить регистрацию этого обратного вызова. Однако я не...
353 просмотров
schedule 02.12.2021

отправка команды IOKit с динамической длиной
Я использую инфраструктуру IOKit для связи с моим драйвером, используя IOConnectCallMethod из клиента пользовательского пространства и IOExternalMethodDispatch на стороне драйвера. До сих пор я мог отправлять команды фиксированной длины, и...
943 просмотров
schedule 12.11.2021

Утечка памяти - не знаю, как / где использовать CFRelease () CFSet
Я снова борюсь с утечкой памяти, и мне нужна помощь в ее выяснении. Я знаю (или почти уверен), что проблема в CFSet. Я предполагаю, что мне нужно выполнить CFRelease (), но я не знаю, как это сделать, поскольку мне также нужно вернуть CFSet в...
228 просмотров

Класс Singleton в драйвере kext на основе IOKit
У меня есть класс, который поддерживает экземпляр типа class IOSharedDataQueue : public IODataQueue , который является объектом IOKit. Класс отделен и вызывается из различных методов основного класса, который является классом на основе IOKit...
206 просмотров
schedule 02.12.2021

Дарвин - использовать расширение ядра в качестве UserClient для другого расширения ядра.
Мне было интересно, можно ли написать расширение ядра, которое будет действовать как UserClient для другого расширения ядра. Обычно мы используем IOConnect на стороне пользователя для доступа к IOUserClient методам расширения ядра. Но такой...
233 просмотров
schedule 27.10.2021

При переносе KEXT на DEXT невозможно создать запись последовательного TTY ACM
В настоящее время мы переносим драйверы последовательного порта usb ядра в драйверы последовательного интерфейса пользователя (Dext) в соответствии с объявлением Apple WWDC19, dext перенесен и может загружаться, когда целевое устройство подключено к...
304 просмотров

Какао получить статус адаптера питания
В настоящее время я работаю над приложением для резервного копирования, и я получил много запросов на добавление функций в последнее время, и главный из них — добавление флажка, такого как «Резервное копирование при питании от батареи», как у Time...
640 просмотров
schedule 21.02.2022

Получение пути IODeviceTree с помощью IOKit
Я пытаюсь получить путь IODeviceTree к устройству, используя структуру IOKit. Я могу получить путь IOService ( IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/SATA@B/AppleMCP79AHCI ) устройства, используя этот код: CFMutableDictionaryRef...
1627 просмотров
schedule 14.03.2022

Аутентифицируйте приложение macOS, чтобы вывести Mac из спящего режима
Я ищу способ аутентификации приложения macOS, которое позволило бы приложению вывести Mac пользователя из спящего режима. Я знаю, что могу запланировать событие питания, чтобы разбудить компьютер, используя код, аналогичный предоставленному здесь...
187 просмотров
schedule 12.04.2022

Как определить, что закрываемый файл изменен или создан в действии KAUTH_FILEOP_CLOSE из Mac KEXT
Замечено, что FWRITE или KAUTH_FILEOP_CLOSE_MODIFIED не всегда устанавливаются в действие KAUTH_FILEOP_CLOSE во время модификации или копирования файла. Мой вариант использования: я пытаюсь выяснить, является ли закрываемый файл измененным файлом...
624 просмотров
schedule 15.05.2022

Драйвер IOKit загружен, но не запущен
У меня есть базовый драйвер IOKit, который не запускается аппаратно и происходит из IOResources. он также предоставляет клиентский класс пользовательского пространства с использованием IOServiceOpen , но я думаю, что это не имеет отношения к моей...
243 просмотров
schedule 31.05.2022

Уведомления о добавлении / удалении устройства IOKit - только один раз?
Я пытался получать уведомления, когда определенное USB-устройство добавляется или удаляется. Я прочитал документ «Доступ к оборудованию из приложений» и имею простое демонстрационное приложение, в основном основанное на коде, представленном в этом...
4057 просмотров
schedule 23.06.2022

Как уменьшить объем памяти, которую IOKit резервирует при запуске процесса?
Я разработчик, работающий над очень большим 32-битным приложением с интенсивным использованием памяти. Исчерпание виртуального адресного пространства (памяти) является для нас проблемой. Во время моего исследования некоторых недавних проблем я...
2219 просмотров

извлечение значения из IOPSCopyPowerSourcesInfo() swift
У меня есть этот код: var source = IOPSCopyPowerSourcesInfo() print(source) Когда я запускаю его, он возвращает это: Optional(Swift.Unmanaged<Swift.AnyObject>(_value: <__NSCFArray 0x60800026f4c0>( { "Battery Provides Time...
560 просмотров
schedule 04.08.2022

IOUSBInterfaceOpen не работает, но я могу заставить его работать, отключив камеру. Что происходит?
Я пытаюсь написать драйвер USB камеры Pentax для MacO без особого опыта. Мне удалось установить связь с камерой, используя пример кода в разделе «Работа с интерфейсами USB-устройств», но только если я использую асинхронные уведомления и если я...
568 просмотров
schedule 18.08.2022

OSDynamicCast не компилируется в примере базового набора драйверов
У меня есть очень простой драйвер из комплекта драйверов. Это почти котельная. Я получаю сбой сборки при попытке использовать OSDynamicCast , как показано ниже kern_return_t IMPL(MyHIDDriver, NewUserClient) { IOService* client;...
31 просмотров
schedule 12.08.2022

Как я могу получить номер порта USB в Mac OS X?
Я обнаружил один класс IORegistryEntry в IOKit. У него есть API для получения значений свойств. Я пытаюсь использовать этот класс, но не могу его скомпилировать. Я добавил IOKit и Kernel Frameworks. Выдает ошибку компиляции:...
768 просмотров
schedule 20.09.2022

Переопределить метод, определенный другим kext?
Мне нужно переопределить метод, определенный kext, чтобы выполнить собственную обработку и вернуть собственное значение, поэтому всякий раз, когда kext вызывает метод, он будет перенаправлен на мой. Итак, что я хочу сделать, так это определить этот...
312 просмотров
schedule 16.01.2023

Монтирование HFS+ и UDF с гибридного видео-DVD
Я разработал программное обеспечение для Mac (используя DiscRecordingFramework и IOKit), которое создает гибридный Video-DVD. Полученный DVD полностью совместим со спецификациями Video-DVD. Гибридный диск содержит файловые системы HFS+, UDF и ISO....
830 просмотров