Как Linux взаимодействует с оборудованием вокруг процессора?

Если вы используете последнюю версию bash (Я думаю, что это было введено в bash 4 ), вы можете использовать wait -n.

В противном случае вы можете передать waitаргумент с pid запускаемого вами фонового процесса, который возвращается в $!сразу после того, как вы это сделаете.

Дополнительную информацию о статусе возврата команды waitсм. в документации по команде ожидания .

Так и должно быть:

set -e
false &
wait -n
echo "lol"

И это тоже хорошо:

set -e
false &
background_pid=$!
wait "${background_pid}"
echo "lol"

1
12.03.2020, 19:50
2 ответа

Купите себе что-нибудь вроде макетной платы z80 и попробуйте что-нибудь выбить из последовательного порта или запустите эмулированный компьютер IBM с DOS и проделайте то же самое, используя DOS irq.

В старых машинах Z80 с отображаемым в памяти текстовым дисплеем легко отображать хотя бы текст.

Можно (с легкостью или немного сложнее или непрактично )делать подобные вещи, используя :ассемблер, Pascal, Ada, C (почему вы должны использовать для этого C++ ), BASIC и немало других языков, ожидайте МНОГО РАБОТЫ!

Для довольно современного процессора, который может поддерживать достаточный объем памяти, взгляните на MIPS2000 и его соотечественников (большой объем памяти, который легко обеспечивает прямой доступ к 512 МБ ОЗУ ), если вы хотите программировать в C/Assembler/Ada (я думаю, что Паскаль. )Я говорю это потому, что это семейство процессоров имеет довольно простую архитектуру памяти.

Проверьте исходники grub !

Если вас интересует, как загрузить программу (загрузчик )при загрузке, или ознакомьтесь с играми, -модифицированными grub, например, космическими захватчиками (клоном космических захватчиков, который работает на голом металл.)

Вы можете загрузить grub -захватчиков на виртуальной машине см. grub -захватчиков

0
28.04.2021, 23:20

То, как это работает, во многом зависит от архитектуры/машины. Linux (ядро ​​)создает дерево, отображающее доступные устройства и их соединения при загрузке (и при появлении/исчезновении подключенных устройств ). Откуда поступает информация, зависит от базового оборудования.

Другие операционные системы, работающие на той же машине, будут делать это по-своему, если они должны быть очень переносимыми, они, вероятно, используют аналогичный подход.

Возиться с, например,. оригинальный ПК (или эмуляция )дает вам доступ к ряду фиксированных устройств, доступ к которым осуществляется определенным фиксированным(или почти )способом. Некоторые Unices, которые я имел удовольствие пасти, поставлялись с объектным кодом для системы, добавление/перенастройка устройств означало редактирование некоторых файлов C, перекомпиляцию и повторную компоновку ядра. Тонны веселья.

1
28.04.2021, 23:20

Теги

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