社区
Linux_Kernel
帖子详情
linux库函数调用和系统调用问题
freeC
2015-08-09 11:08:02
我在网上看到这个东西的解释,里面有一点是这样的,库函数调用其实最终还是调用系统调用,然而又有一点说,系统调用开销比较大,需要在用户控件和内核空间进行切换,比库函数调用开销大很多。
我就纳闷了,库函数调用底层还是用的系统调用,咋系统就比库函数调用开销大呢,不是自相矛盾吗?
求大神释疑
...全文
172
2
打赏
收藏
linux库函数调用和系统调用问题
我在网上看到这个东西的解释,里面有一点是这样的,库函数调用其实最终还是调用系统调用,然而又有一点说,系统调用开销比较大,需要在用户控件和内核空间进行切换,比库函数调用开销大很多。 我就纳闷了,库函数调用底层还是用的系统调用,咋系统就比库函数调用开销大呢,不是自相矛盾吗? 求大神释疑
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Darryfei
2015-08-09
打赏
举报
回复
系统调用要从用户态转为核心态运行,需要中断处理,程序堆栈都需要切换,开销比较大。库函数调用相当于子程序调用不需要切换状态。我觉得那里想说的意思应该是系统调用和库函数调用时间的比较,它只是比较库函数调用的时间,不包括库函数实现的时间(库函数实现最终需要用到系统调用完成)。
大熊猫侯佩
2015-08-09
打赏
举报
回复
不是所有的库函数都会调用系统函数,和系统调用比较起来这些函数属于“轻”函数,比如strlen。
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
Linux
命令行与shell脚本编程、
Linux
C
库函数
及
系统
调用
编程、
Linux
内核分析即应用、Debian(Ubuntu、Deepin)操作
系统
爬坑.zip
(源码)基于C语言的
Linux
内核
系统
调用
和
库函数
项目.zip
# 基于C语言的
Linux
内核
系统
调用
和
库函数
项目 ## 项目简介 本项目包含了
Linux
内核
系统
调用
和
库函数
的实现,涵盖了从内存管理、文件操作、进程管理到设备驱动等多个方面的功能。通过实现这些
系统
调用
和
库函数
,项目旨在增强对
Linux
内核工作机制的理解,并提供了构建和测试
Linux
内核镜像的工具。 ## 项目的主要特性和功能 1.
系统
调用
和
库函数
实现 提供了包括open、read、write、execve、fork、malloc、free、setsid、wait、close、dup、writev、execve等
系统
调用
和
库函数
的实现,覆盖了
Linux
内核中常用的功能。 2. 内存管理 实现了虚拟内存与物理内存的映射、页表的复制与共享等功能,管理物理内存的分配、释放和共享。 3. 文件操作 提供了文件打开、读取、写入、关闭等操作,支持文件描述符的复制和文件控制操作。 4. 进程管理
UNIX
Linux
系统
程序、
库函数
、
系统
调用
分层关系.swf
UNIX
Linux
系统
程序、
库函数
、
系统
调用
分层关系.swf
linux
下的程序调试工具ltrace和strace终版.pdf
linux
下的程序调试工具ltrace和strace终版.pdf
Linux_Kernel
4,465
社区成员
17,462
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章