В домашнем задании нам было предложено добавить системный вызов в ядро Linux (Red Hat 2.4.18). Согласно присваиванию, возвращаемое значение нового системного вызова должно быть недействительным. Системный вызов сам по себе довольно прост (всего одно задание), и нет ошибки для ошибки. Из того, что я прочитал и узнал системные вызовы, обычно возвращают отрицательное значение, указывающее на отказ, или 0 для указания успеха. Мой вопрос заключается в том, является ли это обычной практикой или необходимостью? Может ли системный вызов возвращать пустоту?Системные вызовы Linux возвращают значение
3
A
ответ
4
В Linux все системные вызовы возвращаются долго, если они вообще возвращаются. Допустим, вы объявить системный вызов с помощью:
SYSCALL_DEFINE0(mycall)
{
/* ... */
}
Это приводит к:
asmlinkage long sys_mycall(void)
Если вы не имеете никакого полезного возвращения и вызов не может потерпеть неудачу, просто возвращает 0, каждый раз, чтобы сигнализировать успех.
Смежные вопросы
- 1. Linux: Системные вызовы для кого
- 2. Параллельные системные вызовы в Linux
- 3. Системные вызовы и режим Linux Linux
- 4. Где в ядре linux отправляются системные вызовы?
- 5. Как запретить системные вызовы, GNU/Linux
- 6. открытые системные вызовы в C on linux
- 7. Системные вызовы и системные программы
- 8. Системные вызовы, управляющие каталогами
- 9. Системные вызовы в Perl
- 10. Системные вызовы в Windows
- 11. Почему системные вызовы возвращают EFAULT вместо отправки segfault?
- 12. Системные вызовы Linux и API зависят от дистрибутивов Linux?
- 13. Системные вызовы Windows-программ
- 14. Системные вызовы, сделанные KVM
- 15. Сборочные и системные вызовы
- 16. Системные вызовы C++ «SED»
- 17. Системные вызовы завершаются
- 18. Системные вызовы от php
- 19. Системные вызовы с c
- 20. windbg log системные вызовы
- 21. Системные вызовы в Unix
- 22. Системные вызовы труб
- 23. Как скомпилированные вызовы метода возвращают значение?
- 24. C Системные вызовы и сообщения
- 25. Системные объекты возвращают неправильные GRANTs
- 26. Последующие вызовы httpClient возвращают исходные вызовы
- 27. Как улавливать системные вызовы в библиотеке пользовательского пространства в Linux?
- 28. Какие системные вызовы ядра Linux показывают байты, считанные с диска
- 29. системные вызовы, не соответствующие iomapped памяти в Linux.
- 30. системные вызовы, связанные с управлением памятью, в команде linux
В целом считается плохой практикой не возвращать ничего из функций, где есть вероятность отказа ... – mtahmed
Класс Леонида? – cha0site