Linux下的C编程(前言)

LinuxC编程(前言)

很早就想自己写写Linux 下的C编程,不管是按照书上的写下来,还是从网上摘抄下来,还是自己总结,写一下心得体会,都可以。总之,自己动手写一写,感觉这样既可以增强记忆,又可以温故知新。

       所谓编程,其实就将API进行巧妙的组合,这种巧妙很多事体现在算法上。Linux下的API本人感觉有3种,1、系统调用;2glibc库的函数;3其他程序曝露的API, 如图0.1。种起23都是借助于1实现的。我们平常学的C语言的标准就是通过Glibc来时实现的,所以在Linux下我们必须用glibc的函数,即使它对C语言的标准的没有实现或者实现的不好,也只能用它。

0.1 Linux操作系统的接口组成

       Linux系统的特点在于你可以看到所有的系统调用,glibc函数和大部分的API的实现。这样我们就可以知其然并知其所以然。

       我希望通过一年的时间,逐渐的将Linux系统下的系统调用和Glibc函数详细的写一下,并加一下心得体会。最后如果有时间写一下一些常用程序的API。当然有人肯定会说Linux下的C编程很重要的一块是驱动编程,驱动编程我下一步会写写。

       我将以《Unix环境高级编程》(第二版),《Linux程序设计》和《The art of linux programming》这三本书为主要参考,然后结合Linux最新的内核源代码,Glibc最新的源代码和GCC的最新源代码,以及网上开源社区的资料和maillist等资源。希望将很多东西分析透彻。希望自己想写书一样有头绪,又能像源代码一样详尽。

       对于每个函数我都会指明是系统调用还是Glibc库函数,或者是系统调用和Glibc函数重名,我想就这3种情况吧。这样感觉可以时刻保持清醒的头脑,我们应该尽量使用Glibc库函数,因为系统调用会很耗费资源。系统调用用SC标注,Glibc函数用GC标注而两者重名用SG标注。

       Linux发行版有很多,但是你查一下关注度就会发现UbuntuMint Fedora是名列前茅的。我以前用Fedora,现在用Ubuntu 12.04

       我一直在想最先写什么,好像大家学语言都是上来就是往控制台上打印东西,那么就让我们从打印的相关函数和与之先关联的Linux系统的知识开始写吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值