社区
C语言
帖子详情
库函数是怎么编译的
逍遥兮容与
2012-03-16 10:07:51
比方说对文件读写的库函数,最终还是会涉及到系统调用,库函数里应该没有系统调用的代码在的吧,系统调用的代码应该在系统内存的某个地方,但我们的程序不是被编译成二进制了么,那这里的过程是怎么编译的?
...全文
182
8
打赏
收藏
库函数是怎么编译的
比方说对文件读写的库函数,最终还是会涉及到系统调用,库函数里应该没有系统调用的代码在的吧,系统调用的代码应该在系统内存的某个地方,但我们的程序不是被编译成二进制了么,那这里的过程是怎么编译的?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
逍遥兮容与
2012-03-25
打赏
举报
回复
没有系统地学,感觉思维很混乱。。
逍遥兮容与
2012-03-25
打赏
举报
回复
[Quote=引用 6 楼 muyi66 的回复:]
引用 5 楼 zzzz3621 的回复:
引用 4 楼 muyi66 的回复:
库函数可以通过调用系统 API 的方式来使用操作系统的文件系统。
问题是调用系统API 这个过程怎么实现的,编译成了什么?
就像用户自己定义的dll文件差不多。编译器通过API的头文件知道如何调用它们,检查语法错误等等,然后把对库函数里对API函数的调用写进目标代码里。
[/Quote]
抱歉,没注意到有回复
学操作系统的时候有讲到,程序要做到 地址独立和地址保护, 那我们的系统调用是跳到操作系统系统的代码片段里了么?我就是对这个有点不明白,如果跳了,又是怎么跳的呢? 你讲到的:对库函数里对API函数的调用写进目标代码里, 编译完的不是虚拟地址么?对API函数的调用的,具体是怎么调呢?
muyi66
2012-03-16
打赏
举报
回复
[Quote=引用 5 楼 zzzz3621 的回复:]
引用 4 楼 muyi66 的回复:
库函数可以通过调用系统 API 的方式来使用操作系统的文件系统。
问题是调用系统API 这个过程怎么实现的,编译成了什么?
[/Quote]就像用户自己定义的dll文件差不多。编译器通过API的头文件知道如何调用它们,检查语法错误等等,然后把对库函数里对API函数的调用写进目标代码里。
逍遥兮容与
2012-03-16
打赏
举报
回复
[Quote=引用 4 楼 muyi66 的回复:]
库函数可以通过调用系统 API 的方式来使用操作系统的文件系统。
[/Quote]
问题是调用系统API 这个过程怎么实现的,编译成了什么?
muyi66
2012-03-16
打赏
举报
回复
库函数可以通过调用系统 API 的方式来使用操作系统的文件系统。
为了法克方便面
2012-03-16
打赏
举报
回复
动态链接库
kyle
2012-03-16
打赏
举报
回复
库里已经都把系统调用的头文件都包含打包了
fkwcowboy
2012-03-16
打赏
举报
回复
如果是LINUX系统
比如说你调个open函数 顺序应该是这样的
open()-> gcc(编译并链接依赖的函数库) -> glibc
glibc里面有C库函数的实现,而且它不需要依赖任何其他的库就可以完成自编译
不知道这么解释你能明白么
GL
库函数
GL
库函数
GL
库函数
GL
库函数
GL
库函数
GL
库函数
GL
库函数
GL
库函数
GL
库函数
GL
库函数
C51
库函数
参考 C51
库函数
参考 C51
库函数
参考 C51
库函数
参考
C51
库函数
参考 C51
库函数
参考 C51
库函数
参考 C51
库函数
参考
软件——STM8
编译
软件与
库函数
生成软件
此文件为软件按转包,其中包括IAR开发环境、STINK驱动以及烧写软件,还有非常实用的STM8
库函数
自动生成的软件助手
keil-msp432 -
库函数
版本MSP432E401Y keil
编译
环境下
库函数
MSP432E401Y这个板子的资料实在是太少了,下面是我整理了keil
编译
环境下,这款芯片的
库函数
版本开发。
STM8
库函数
例程,stm8
库函数
中文手册pdf,C,C++
STM8S
库函数
例程,包含所有外设的基本操作,方便初学者
C语言
70,026
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章