看书《程序员的自我修养--链接、转载于库》记录

看书位置

页数:425;章节:12.3.1

看书记录

1、用户程序可通过运行库系统调用,也可直接系统调用,如fopen和open;但是glibc提供的fopen具有缓冲和按行读取文本文件的机制,open读取的是原始数据文件,但性能会高点。

2、Linux系统调用,在x86下,系统调用由0x80中断完成,各个通用寄存器用于参数传递,EAX寄存器表示系统调用的接口号,

3、中断是一个硬件或软件发出的请求,要求CPU暂停当前工作转手去处理更加紧急的事情,避免了轮询的方式浪费CPU系统资源,

4、一个或少数几个中断号对应所以的系统调用,Linux使用0x80出发所有的系统调用,系统调用通过系统调用号来区别,对应系统调用表的位置,系统调用号在执行int指令时被放置在某个固定的寄存器(如eax寄存器),对应的中断代码会取这个系统调用号,

看书疑问

1、进程正常退出时走运行库的exit流程,那么杀掉进程时走的流程也是一样吗?

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《程序员的自我修养:链,装载与》是一本由林锐、郭晓东、郑蕾等人合著的计算机技术籍,在该中,作者从程序员的视角出发,对链、装载与等概念进行了深入的阐述和解析。 在计算机编程中,链是指将各个源文件中的代码模块组合成一个可执行的程序的过程。链可以分为静态链和动态链两种方式。静态链是在编译时将所有代码模块合并成一个独立的可执行文件,而动态链是在运行时根据需要加载相应的代码模块。 装载是指将一个程序从磁盘上加载到内存中准备执行的过程。在装载过程中,操作系统会为程序分配内存空间,并将程序中的各个模块加载到相应的内存地址上。装载过程中还包括解析模块之间的引用关系,以及进行地址重定位等操作。 是指一组可重用的代码模块,通过链和装载的方式被程序调用。可以分为静态和动态。静态是在编译时将的代码链到程序中,使程序与的代码合并为一个可执行文件。动态则是在运行时通过动态链的方式加载并调用。 《程序员的自我修养:链,装载与》对于理解链、装载和的原理和机制具有极大的帮助。通过学习这些概念,程序员可以更好地优化代码结构和组织,提高程序的性能和可维护性。同时,了解链、装载和的工作原理也对于进行调试和故障排除具有重要意义。 总之,链、装载与是计算机编程中的重要概念,对于程序员来说掌握这些知识是非常必要的。《程序员的自我修养:链,装载与》这本提供了深入浅出的解释和实例,对于想要学习和掌握这些知识的程序员来说是一本非常有价值的参考籍。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值