作者 @pengdonglin137 环境 Linux 6.5 ARM64 概述 应用程序运行在用户态,需要通过内核提供的系统调用陷入到内核态来完成一些特权操作,比如创建、打开以及读写文件等。实际开发中,为了可移植性和便捷性,应用一般不会直接调用系统调用,而是使用C库封装的接口,由C库去调用。 这篇文章关注下面几点: 系统调用的实现机制 入参是如何传递的 返回值是如何传递的 系统调用返回值、errno、perror 正文 测试程序 以一个简单的测试程序为例进行分析。 #include