Системные вызовы

Здесь перечислены наиболее важные системные вызовы, которые используются при работе с Linux.

Помните, что %eax хранит номера системных вызовов, и что возвращаемые значения и коды ошибок также сохраняются в %eax.

Таблица важных системных вызовов Linux

%eax Имя %ebx %ecx %edx Примечание
1 exit возвращаемое значение (int) Выход из программы
3 read дескриптор файла начало буфера размер буфера (int) Считывает данные в буфер
4 write декриптор файла начало буфера размер буфера (int) Записывает буфер в файл.
5 open имя файла, завешаемое нулевым символом список опций режим доступа Открывает указанный файл. Возвращает дескриптор файла или номер ошибки.
6 close дескриптор файла Закрывает файл по его дескриптору.
12 chdir имя директории, завершаемое нулевым символом Меняет текущую директория вашей программы.
19 lseek дескриптор файла смещение режим Меняет позицию текущего размещения в файле. Режим равен 1 для абсолютного и 0 для относительного смещения
20 getpid Возвращает ID текущего процесса.
39 mkdir имя директории, завершаемое нулевым символом разрешения Создаёт указанную директорию. Предполагает, что все директории в пути существуют.
40 rmdir имя директории, завершаемое нулевым символом Удаляет указанную директорию.
41 dup дескриптор файла Возвращает новый дескриптор файла, который используется также как и существующий.
42 pipe pipe array Создаёт два дескриптора файлов и в один файл пишет то, что читает в другом файле.
45 brk новое системное прерывание Устанавливает системное прерывание. ...
54 ioctl дескриптор файла запрос аргументы Используется для установки параметров через файлы устройств. Его использование различается в зависимости от типа файла или устройства, на которое ссылается дескриптор.

Полный список системных выховов для конкретных ядер
взято и переведено отсюда