当前位置: 技术问答>linux和unix
基础问题请教
来源: 互联网 发布时间:2016-03-08
本文导语: 现在学习Linux的一些驱动开发,以前没有系统的学习,只是有过一些了解,所以来此请教一下基础问题,希望各位不吝赐教: 1,什么是C库,和操作系统是什么关系? 2,我只知道编译器把高级语言转化为汇编语言,但是...
现在学习Linux的一些驱动开发,以前没有系统的学习,只是有过一些了解,所以来此请教一下基础问题,希望各位不吝赐教:
1,什么是C库,和操作系统是什么关系?
2,我只知道编译器把高级语言转化为汇编语言,但是要让系统执行的话,还是要转化为机器码,所以想问一下操作系统里面的汇编程序怎么转换为机器码?包括Linux和windows系统?
3,有些函数在操作系统的内核源码里面没有定义,但是在调用,比如read_lock_bh与write_lock_bh等进程同步函数,这些函数是在哪里定义的,怎么可以在内核源码里面直接使用这些函数?
4,Linux有没有像Vc那样的程序开发环境?
暂时问四个问题,希望各位不吝指点。谢谢!!!
1,什么是C库,和操作系统是什么关系?
2,我只知道编译器把高级语言转化为汇编语言,但是要让系统执行的话,还是要转化为机器码,所以想问一下操作系统里面的汇编程序怎么转换为机器码?包括Linux和windows系统?
3,有些函数在操作系统的内核源码里面没有定义,但是在调用,比如read_lock_bh与write_lock_bh等进程同步函数,这些函数是在哪里定义的,怎么可以在内核源码里面直接使用这些函数?
4,Linux有没有像Vc那样的程序开发环境?
暂时问四个问题,希望各位不吝指点。谢谢!!!
|
既然开始学习了驱动设计,那这些问题应该都不是问题了。
如果这些问题现在还没搞明白,那建议先学些基础的,相关的。
如果在linux下写驱动,linux内核源代码应该比较熟悉才行。
一般的,介绍linux内核源代码的书的开头部分,都会把你上面这几个问题给讲明白的。
如果这些问题现在还没搞明白,那建议先学些基础的,相关的。
如果在linux下写驱动,linux内核源代码应该比较熟悉才行。
一般的,介绍linux内核源代码的书的开头部分,都会把你上面这几个问题给讲明白的。
|
一种实际的可用的开发环境一般包括 语法自身, 内部函数, 库函数 三部分。
像basic,就自身带有一堆内部函数
而像C,没有内部函数,又不能写程序都从最底层编起,所以C环境带有一些更丰富的库函数,这与C语法无关,也与操作系统无关,比如printf函数。
汇编转换成机器语言只不过是一个助记符转换的问题,从某种角度上看,助记符与机器语言没有差别。
像basic,就自身带有一堆内部函数
而像C,没有内部函数,又不能写程序都从最底层编起,所以C环境带有一些更丰富的库函数,这与C语法无关,也与操作系统无关,比如printf函数。
汇编转换成机器语言只不过是一个助记符转换的问题,从某种角度上看,助记符与机器语言没有差别。
|
建议使用google查询