Задать вопрос
@randomDanila

Можно ли получить контроль над аппаратным обеспечением и BIOS с помощью Python?

Именно контроль: возможность отдавать команды по типу: "переместить головку жесткого диска на сектор такой-то" или
в BIOS "установить вольтаж материнской платы на 1.2V'; а не получение информации о hardware, про что есть УЙМА инфы и что сравнительно бесполезно.
Также прошу не закидывать меня голыми ссылками, а рассказать что и как
P.S. Извините меня за слишком сильное выделение, просто боюсь что меня не поймут прочитав полвопроса
  • Вопрос задан
  • 204 просмотра
Подписаться 1 Простой 7 комментариев
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev
Седой и строгий
Нет, нельзя.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Нет. Ни на питоне, ни на перле, ни на php. Ни даже на С. Возможно можно сделать на ассемблере.

Но сделать мало - надо его где-то еще запустить. Прямой доступ к железу только у ведра - следовательно нужно писать драйвер уровня ядра. Причем непосредственное управление позиционированием головок диска все равно будет невозможно - оно давным-давно не выходит за границы контроллера диска, а управление матерью может быть банально недоступно извне BIOS.
Обычно такое никому не нужно, разве только малолетним "какерам".
Ответ написан
Комментировать
@Voland69
Короткий ответ: нельзя
Чуть более длинный: код на питоне исполняется в рамках довольно изолированной виртуальной машины, где доступа к непосредственно биосу, диску и прочему железу просто нет за ненадобностью.
Да и в ОС пользовательскому коду доступны гораздо более высокоуровневые функции - например не переместить головку на CHS или конкретный LBA а отдать файл по такому-то пути а где именно этот файл, да хоть в ipfs, не важно.
Остается вариант взять какой-то специфичный софт от вендора компа или msi afterburner, но это уже будет не "на питоне", от питона там только вызов функции из чужой библиотеки.
Ответ написан
Комментировать
15432
@15432
Системный программист ^_^
Можно, конечно. Я описывал, как это сделать, в своей статье:
https://habr.com/ru/articles/527006/

Если корректно реализовать необходимые команды, то можно всё, что умеет сама система, в том числе:
- изменение напряжения процессора (нужно отреверсить AMD ryzen master utility или Intel XTU, чтобы узнать, какие регистры для этого записывать, делал когда-то по просьбе знакомого, даже проц спалить реально, у него случайно получилось)
- управление диском через ATA команды (понадобится реализовать драйвер AHCI интерфейса, это я уже для себя делал)
- взаимодействие с USB на низком уровне параллельно основной системе (тоже для себя делал)
- изменение настроек BIOS (тупо перезапись NVRAM раздела флешки, см статью, там чтение, но запись тоже возможна, если почитать доки на чипсет ;)

Короче на что фантазии хватит.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы