Пока я читал системные вызовы, я выполнил поиск "syscalls.h", чтобы найти файл заголовка в LXR. Результаты поиска меня озадачили. Существует дюжина файлов "syscalls.h" из каталогов в каталоге "arch / _arch_name_ / include / asm". Это нормально, это специфичные для архитектуры определения или что-то еще необходимое. Вопрос в том, почему у нас есть два разных заголовка «syscalls.h» в / include / linux и / include / asm-generic?
Также я хочу узнать, для чего нужны заголовки / include / linux и для чего нужны заголовки / include / asm-generic. Как они различают друг друга? Какова логика наличия двух отдельных папок заголовка? Как они связаны друг с другом?
Спасибо