Rst7 5 6 июня, 2019 Опубликовано 6 июня, 2019 · Жалоба Ищем человека, готового разработать WDM Audio driver для нашего железа. Драйвер должен будет поддерживать Win7...Win10. Собственно говоря, непосредственно с железом драйвер работать не будет, а получать-отправлять данные будет через серверную часть с доступом к ней через shared memory. Сейчас серверная часть работает в user space. У серверной части есть и другие user space-клиенты. Работа видится состоящей из нескольких этапов: 1. Заготовка драйвера, который определяется как аудиоустройство в системе. А потоки данных (ввод и вывод) имитирует работой с файлами. Собственно говоря, примерно такая заготовка и есть в WDK Samples, но нужно будет не просто ее собрать, а понять, какие именно переделки нужны будут на втором этапе. 2. Работа с файлами заменяется на работу с серверной частью. Сами данные лежат в shared memory (точнее в терминах Windows - File Mapping Object). Тут будет тонкость, связанная с тем, что есть примитивы синхронизации с серверной частью (сейчас там именованные мьютексы используются), которые, возможно, нужно будет переделать, дабы получить к ним доступ из ядра. Код клиента для user space предоставим, живой девайс для тестирования в полном объеме - тоже. 3. Необходимая параметризация - переключение всяких частот дискретизации, количества входов/выходов и прочего. Что-то надо делать на этапах 1/2, что-то отложить на более позднее время. 4. Алгоритм инсталляции/деинсталляции драйвера в систему, чтобы мы его могли прикрутить ко всей остальной нашей инфраструктуре развертывания. 5. Тестирование нами и исправление багов (понятное дело, что начнется оно где-то прямо с п.1) и закончится тут. 6. Придется уделить какое-то время потом на поддержку. Скорее всего, основные баги мы выловим при собственном тестировании, но при попадании к расширенному кругу тестеров скорее всего какие-то огрехи вылезут. Их надо будет исправить. Территориально - крайне предпочтительно Украина. Так можно будет намного более проще решать возникающие вопросы плюс тестирование с живым девайсом. Ну и ответ на главный вопрос жизни, вселенной и всего такого будет не 42, а, скажем, $1K за всю работу (до п.5 включительно). Пункт 6 - отдельный разговор, доп. оплата вполне обсуждаема, потому как по п.5 будем гонять и в хвост, и в гриву. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
leocat 0 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба "точнее в терминах Windows - File Mapping Object" А ещё точнее, в стандарте POSIX - Named Shared Memory. И в вашем случае вполне возможно сделать этот "драйвер" кросс-платформенным. За 1к - не берусь. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rst7 5 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 6 hours ago, leocat said: И в вашем случае вполне возможно сделать этот "драйвер" кросс-платформенным. Это лишнее. Нужен только WDM и все. Остальное - наша забота. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
axiieflex 0 8 июня, 2019 Опубликовано 8 июня, 2019 (изменено) · Жалоба Для пункта .4 вам обязательно надо будет купить сертификат для подписывания кода, без него ваш драйвер не будет работать кроме как в режиме тестирования Windows (на x64 системах). Не думали использовать UMDF ? Если нужна будет консультацию кодеру по сборке, фаззингу и деплою драйвера - можете написать, помогу. Изменено 8 июня, 2019 пользователем axiieflex Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
leocat 0 9 июня, 2019 Опубликовано 9 июня, 2019 · Жалоба 8 hours ago, axiieflex said: Для пункта .4 вам обязательно надо будет купить сертификат для подписывания кода, без него ваш драйвер не будет работать кроме как в режиме тестирования Windows (на x64 системах). Да ну? Первый пришедший наглядный пример: драйвера VirtualBox. Пишут предупреждения, что нет подписи. Тычешь педаль "Всё равео установить" и вуаля! Работает без проблем. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rst7 5 9 июня, 2019 Опубликовано 9 июня, 2019 · Жалоба 14 hours ago, axiieflex said: Не думали использовать UMDF ? а) Так один фиг я не умею что в WDM, что в UMDF. Все равно человек нужен. б) А в Win7 оно сможет работать? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
axiieflex 0 9 июня, 2019 Опубликовано 9 июня, 2019 · Жалоба 36 минут назад, Rst7 сказал: а) Так один фиг я не умею что в WDM, что в UDMF. Все равно человек нужен. б) А в Win7 оно сможет работать? б) работает начиная с Vista и выше Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
axiieflex 0 9 июня, 2019 Опубликовано 9 июня, 2019 · Жалоба 6 часов назад, leocat сказал: Да ну? Первый пришедший наглядный пример: драйвера VirtualBox. Пишут предупреждения, что нет подписи. Тычешь педаль "Всё равео установить" и вуаля! Работает без проблем. Вообще вас спрашивают не потому-что нету подписи, а спрашивают доверять ли этому издателю - это разные вещи. Вы не правы. ВСЕ драйвера VirtualBox подписаны, причем также подписаны расширенной подписью с сигнатурой Microsoft Hardware. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
leocat 0 9 июня, 2019 Опубликовано 9 июня, 2019 · Жалоба 2 axiieflex, Да, подписаны. Но... Oracle Corporation, никак не $M. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
axiieflex 0 9 июня, 2019 Опубликовано 9 июня, 2019 (изменено) · Жалоба 1 час назад, leocat сказал: 2 axiieflex, Да, подписаны. Но... Oracle Corporation, никак не $M. Установите последнюю версию VirtualBox, зайдите в папку drivers, натравите на файл VBoxDrv.sys утилиту signtool из комплекта Windows SDK and DDK signtool verify /debug /v /all VBoxDrv.sys Verifying: VBoxDrv.sys Signature Index: 0 (Primary Signature) Hash of file (sha1): 607B215503738D6A686EE4B46B8694F0E6366FB3 Signing Certificate Chain: Issued to: DigiCert Assured ID Root CA Issued by: DigiCert Assured ID Root CA Expires: Mon Nov 10 04:00:00 2031 SHA1 hash: 0563B8630D62D75ABBC8AB1E4BDFB5A899B24D43 Issued to: DigiCert Assured ID Code Signing CA-1 Issued by: DigiCert Assured ID Root CA Expires: Tue Feb 10 16:00:00 2026 SHA1 hash: 409AA4A74A0CDA7C0FEE6BD0BB8823D16B5F1875 Issued to: Oracle Corporation Issued by: DigiCert Assured ID Code Signing CA-1 Expires: Wed Mar 23 16:00:00 2022 SHA1 hash: 6F474206BCBB391BB82BA9E5DC0302DEF37AEBBE The signature is timestamped: Mon May 13 17:15:31 2019 Timestamp Verified by: Issued to: Thawte Timestamping CA Issued by: Thawte Timestamping CA Expires: Fri Jan 01 03:59:59 2021 SHA1 hash: BE36A4562FB2EE05DBB3D32323ADF445084ED656 Issued to: Symantec Time Stamping Services CA - G2 Issued by: Thawte Timestamping CA Expires: Thu Dec 31 03:59:59 2020 SHA1 hash: 6C07453FFDDA08B83707C09B82FB3D15F35336B1 Issued to: Symantec Time Stamping Services Signer - G4 Issued by: Symantec Time Stamping Services CA - G2 Expires: Wed Dec 30 03:59:59 2020 SHA1 hash: 65439929B67973EB192D6FF243E6767ADF0834E4 Signature Index: 1 Hash of file (sha256): 62DEF2295D28261828C8717FC6A80CDC6D93455C6A8AD0EDCE9924461E5B627B Signing Certificate Chain: Issued to: Microsoft Root Certificate Authority 2010 Issued by: Microsoft Root Certificate Authority 2010 Expires: Sun Jun 24 02:04:01 2035 SHA1 hash: 3B1EFD3A66EA28B16697394703A72CA340A05BD5 Issued to: Microsoft Windows Third Party Component CA 2014 Issued by: Microsoft Root Certificate Authority 2010 Expires: Tue Oct 16 00:41:27 2029 SHA1 hash: 1906DCF62629B563252C826FDD874EFCEB6856C6 Issued to: Microsoft Windows Hardware Compatibility Publisher Issued by: Microsoft Windows Third Party Component CA 2014 Expires: Sat Sep 07 01:30:32 2019 SHA1 hash: 2629E86AAE6EB9C9ADCC1C548D601A50FD96927A The signature is timestamped: Mon May 13 19:18:44 2019 Timestamp Verified by: Issued to: Microsoft Root Certificate Authority 2010 Issued by: Microsoft Root Certificate Authority 2010 Expires: Sun Jun 24 02:04:01 2035 SHA1 hash: 3B1EFD3A66EA28B16697394703A72CA340A05BD5 Issued to: Microsoft Time-Stamp PCA 2010 Issued by: Microsoft Root Certificate Authority 2010 Expires: Wed Jul 02 01:46:55 2025 SHA1 hash: 2AA752FE64C49ABE82913C463529CF10FF2F04EE Issued to: Microsoft Time-Stamp Service Issued by: Microsoft Time-Stamp PCA 2010 Expires: Sat Jan 11 01:14:28 2020 SHA1 hash: D0D47BA23CC03219A7A1F6C1F0A89DE2ABB2C5D5 Signature Index: 2 Hash of file (sha256): 62DEF2295D28261828C8717FC6A80CDC6D93455C6A8AD0EDCE9924461E5B627B Signing Certificate Chain: Issued to: VeriSign Class 3 Public Primary Certification Authority - G5 Issued by: VeriSign Class 3 Public Primary Certification Authority - G5 Expires: Thu Jul 17 03:59:59 2036 SHA1 hash: 4EB6D578499B1CCF5F581EAD56BE3D9B6744A5E5 Issued to: Symantec Class 3 SHA256 Code Signing CA Issued by: VeriSign Class 3 Public Primary Certification Authority - G5 Expires: Sun Dec 10 03:59:59 2023 SHA1 hash: 007790F6561DAD89B0BCD85585762495E358F8A5 Issued to: Oracle Corporation Issued by: Symantec Class 3 SHA256 Code Signing CA Expires: Fri Mar 19 03:59:59 2021 SHA1 hash: 173A19BF8E6272BE2504D308AA68B1B00E03332C The signature is timestamped: Mon May 13 17:15:32 2019 Timestamp Verified by: Issued to: VeriSign Universal Root Certification Authority Issued by: VeriSign Universal Root Certification Authority Expires: Wed Dec 02 03:59:59 2037 SHA1 hash: 3679CA35668772304D30A5FB873B0FA77BB70D54 Issued to: Symantec SHA256 TimeStamping CA Issued by: VeriSign Universal Root Certification Authority Expires: Sun Jan 12 03:59:59 2031 SHA1 hash: 6FC9EDB5E00AB64151C1CDFCAC74AD2C7B7E3BE4 Issued to: Symantec SHA256 TimeStamping Signer - G3 Issued by: Symantec SHA256 TimeStamping CA Expires: Fri Mar 23 03:59:59 2029 SHA1 hash: A9A4121063D71D48E8529A4681DE803E3E7954B0 Number of signatures successfully Verified: 1 Number of warnings: 0 Number of errors: 2 Обратите внимание на 2 запись в цепочке сертификатов - Microsoft Windows Hardware Compatibility Publisher, если не знаете что это такое - то читайте - https://docs.microsoft.com/en-us/windows-hardware/design/compatibility/whcp-specifications-policies Изменено 9 июня, 2019 пользователем axiieflex Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rst7 5 11 июня, 2019 Опубликовано 11 июня, 2019 · Жалоба Всем спасибо за обсуждение, человек найден. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться