Skip to content

m5tshift/int-stack-chardev

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

int-stack-chardev

Модуль ядра int_stack создает символьное устройство (/dev/int_stack), которое ведет себя как структура данных стека целых чисел. Модуль создает устройство только при обнаружении USB-ключа с определенным VID и PID.

Сборка и загрузка / выгрузка

Сборка модуля

make

Загрузка модуля

sudo insmod int_stack.ko

Проверка

Можно проверить успешно ли загружен модуль:

  1. Через список модулей:

    lsmod | grep int_stack
  2. Через системные журналы:

    sudo dmesg | tail
  3. Через файл устройства (файл будет создан только после подключения USB-ключа):

    ls -l /dev/int_stack

Установка прав доступа

По умолчанию файл устройства создается с доступом только для root. Чтобы использовать утилиту без sudo нужно изменить права доступа:

sudo chmod 666 /dev/int_stack

Выгрузка модуля

sudo rmmod int_stack

Утилита для работы со стеком

Утилита kernel_stack.py предоставляет CLI для взаимодействия со стеком:

  • python3 kernel_stack.py set-size <size> - Установить емкость стека
  • python3 kernel_stack.py push <value> - Добавить значение в стек
  • python3 kernel_stack.py pop - Извлечь значение из стека
  • python3 kernel_stack.py unwind - Извлечь все элементы из стека

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published