[返回电脑前线首页]·[所有跟帖]·[ 回复本帖 ] ·[热门原创] ·[繁體閱讀]·[版主管理]
Hello World的秘密,你知道吗?
送交者: wecode[★品衔R6★] 于 2023-12-29 13:35 已读 5341 次 2 赞  

wecode的个人频道






后记:系统调用不同于普通的函数调用,是操作系统提供的接口,需要从用户态进入内核态才能完成,虽然没有发生进程的切换,但是在内核态依然要保存用户态的一些上下文,这样才能恢复用户态程序的运行。C函数库在应用程序和操作系统之间起到了重要的桥梁作用,它不仅仅是像本文中的hello world那样做一个简单的中转,还可能会封装底层的系统调用,提供更高级的功能。比如存储空间的分配和回收,可以有很多算法(最佳适应,首次适应等), 但是Unix提供的系统调用是sbrk,只会按照字节数增加或减少进程地址空间,这对应用程序来说是不够的,这时候C函数库的封装函数malloc就可以发挥作用了。

文章中hello world的参数特别简单,放到寄存器中就可以了,如果参数特别多,就需要在内存中开辟一段区域,把参数放入其中,然后把这个区域的指针放入到寄存器中来传递。


评分完成:已经给本帖加上 10 银元!

喜欢wecode朋友的这个贴子的话, 请点这里投票,“赞”助支持!
[举报反馈]·[ wecode的个人频道 ]·[-->>参与评论回复]·[用户前期主贴]·[手机扫描浏览分享]·[返回电脑前线首页]
帖子内容是网友自行贴上分享,如果您认为其中内容违规或者侵犯了您的权益,请与我们联系,我们核实后会第一时间删除。

所有跟帖:        ( 主贴楼主有权删除不文明回复,拉黑不受欢迎的用户 )


用户名:密码:[--注册ID--]

标 题:

粗体 斜体 下划线 居中 插入图片插入图片 插入Flash插入Flash动画


     图片上传  Youtube代码器  预览辅助

打开微信,扫一扫[Scan QR Code]
进入内容页点击屏幕右上分享按钮

楼主本栏目热帖推荐:

>>>>查看更多楼主社区动态...






[ 留园条例 ] [ 广告服务 ] [ 联系我们 ] [ 个人帐户 ] [ 版主申请 ] [ Contact us ]