Где я могу получить список системных вызовов UNIX?

Где некоторые списки системных вызовов на UNIX?

Это не было моим исходным вопросом, но спасибо так или иначе :)

9
задан Ken Bloom 20 April 2010 в 18:38
поделиться

7 ответов

man 2 syscalls

Кроме того, вы можете посмотреть /usr/include/sys/syscall.h (который в моей системе просто # включает /usr/include/bits/syscall.h). Он генерируется во время сборки libc из списка системных вызовов ядра.

Вы также можете использовать grep для исходного кода ядра Linux для SYSCALL_DEFINE. (Я не эксперт по BSD, но думаю, что эквивалент во FreeBSD - SYSCALL_MODULE)

7
ответ дан 4 December 2019 в 11:04
поделиться

Прочтите руководство Fine . Для системных вызовов начните с

man 2 intro

. Так я начал работать с UNIX. Тогда у нас не было модного интернета ...

4
ответ дан 4 December 2019 в 11:04
поделиться

В большинстве сред ls / usr / man / 2 / подойдет, хотя это может быть / usr / local / man или / usr / share / man или даже / usr / local / share / man .

РЕДАКТИРОВАТЬ: Может даже быть переменная среды MANPATH , указывающая на нужное место.

0
ответ дан 4 December 2019 в 11:04
поделиться

Что вам действительно нужно сделать, так это взять копию "Расширенного программирования в среде Unix" У. Ричарда Стивенса. Это классическая книга о том, как программировать Unix-подобные ОС. Книга старая, и MacO / iPhoneO - это разные самые традиционные разновидности Unix, но книга - отличный способ изучить основы и понять, как предполагается использовать API. Проверьте это на Amazon

1
ответ дан 4 December 2019 в 11:04
поделиться

Для официального авторитетного IEEE Std. 1003.1 / Single UNIX Specification (UNIX 2004), см .:

полный список функций (системных интерфейсов) можно найти в разделе «Системные интерфейсы» или по ссылке. Я также хотел бы использовать это как возможность подключить мою систему пользовательского поиска Development / Coding Search , которая включает единую спецификацию UNIX / IEEE Std. 1003.1. Например, при стандартном поиске fopen , close , unix и т. Д. Проводятся рекламные акции, чтобы гарантировать, что результаты из авторитетной документации находятся на самом верху . Добавление слова «человек» перед запросом сильно влияет на результат в пользу стандарта IEEE Std. 1003.1 справочная страница, как в man find , man free , man inttypes.h и т. Д., Хотя большинство запросов должно отдавать предпочтение IEEE Std. 1003.1, даже без добавления «человека» (если это не так, введите неверный запрос и сообщите мне).

3
ответ дан 4 December 2019 в 11:04
поделиться

Какая именно операционная система? Раздел 2 документа документирует системные вызовы, но полностью набор варьируется в зависимости от того, какой у вас UNIX.

POSIX.1 определяет стандартный набор интерфейсов операционной системы, однако ни одна операционная система не ограничивается только ими. Как правило, у вас есть варианты BSD и SYSV. которые имеют немного другую семантику. Однако в настоящее время предполагаемые системные вызовы на самом деле являются квази-библиотечными функциями.

Единственный ИСТИННЫЙ ответ требует специальной установки и изучения файла

 /usr/include/syscall.h
2
ответ дан 4 December 2019 в 11:04
поделиться
Другие вопросы по тегам:

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