欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 心得体会 > linux编程技术心得体会

linux编程技术心得体会

时间:2014-08-16 13:07

跪求一份linux下网络编程的学习心得

正好我上午正在看的这篇:========================  解答:学习Linux的四个步骤  假设你是计算机科班出身,计算机系的基本课程如数据结构、操作系统、体系结构、编译原理、计算机网络你全修过  我想大概可以分为4个阶段,水平从低到高  从安装使用=>linux常用命令=>linux系统编程=>内核开发阅读内核源码  其中学习linux常用命令时就要学会自己编译内核,优化系统,调整参数  安装和常用命令书太多了,找本稍微详细点的就ok,其间需要学会正则表达式  系统编程推荐《高级unix环境编程》,黑话叫APUE  还有《unix网络编程》  这时候大概还需要看资料理解elf文件格式,连接器和加载器,cmu的一本教材中文名为《深入理解计算机系统》比较好  内核开发阅读内核源码阶段,从写驱动入手逐渐深入linux内核开发  参考书如下《linux device drivers》,黑话叫ldd  《linux kernel development》,黑话叫lkd  《understading the linux kernel》,黑话叫utlk  《linux源码情景分析》  这四本书为搞内核的必读书籍  最后,第三阶段和第四阶段最重动手,空言无益,光看书也不罩,不动手那些东西理解不了  学习linux\\\/unix编程方法的建议  建议学习路径:  首先先学学编辑器,vim, emacs什么的都行。

  然后学make file文件,只要知道一点就行,这样就可以准备编程序了。

  然后看看《C程序设计语言》K&R,这样呢,基本上就可以进行一般的编程了,顺便找本数据结构的书来看。

  如果想学习UNIX\\\/LINUX的编程,《APUE》绝对经典的教材,加深一下功底,学习《UNP》的第二卷。

这样基本上系统方面的就可以掌握了。

  然后再看Douglus E. Comer的《用TCP\\\/IP进行网际互连》第一卷,学习一下网络的知识,再看《UNP》的第一卷,不仅学习网络编程,而且对系统编程的一些常用的技巧就很熟悉了,如果继续网络编程,建议看《TCP\\\/IP进行网际互连》的第三卷,里面有很多关于应用协议telnet、ftp等协议的编程。

  如果想写设备驱动程序,首先您的系统编程的接口比如文件、IPC等必须要熟知了,再学习《LDD》2。

  对于几本经典教材的评价:  《The C Programing Language》K&R 经典的C语言程序设计教材,作者是C语言的发明者,教材内容深入浅出。

虽然有点老,但是必备的一本手册,现在有时候我还常翻翻。

篇幅比较小,但是每看一遍,就有一遍的收获。

另外也可用谭浩强的《C语言程序设计》代替。

  《Advanced Programing in Unix Envirement》 W.Richard Stevens:也是非常经典的书(废话,Stevens的书哪有不经典的

),虽然初学者就可以看,但是事实上它是《Unix Network Programing》的一本辅助资料。

国内的翻译的《UNIX环境高级编程》的水平不怎么样,现在有影印版,直接读英文比读中文来得容易。

  《Unix Network Programing》W.Richard Stevens:第一卷讲BSD Socket网络编程接口和另外一种网络编程接口的,不过现在一般都用BSD Socket,所以这本书只要看大约一半多就可以了。

第二卷没有设计到网络的东西,主要讲进程间通讯和Posix线程。

所以看了《APUE》以后,就可以看它了,基本上系统的东西就由《APUE》和《UNP》vol2概括了。

看过《UNP》以后,您就会知道系统编程的绝大部分编程技巧,即使卷一是讲网络编程的。

国内是清华翻译得《Unix网络编程》,翻译者得功底也比较高,翻译地比较好。

所以建议还是看中文版。

  《TCP\\\/IP祥解》一共三卷,卷一讲协议,卷二讲实现,卷三讲编程应用。

我没有怎么看过。

,但是据说也很经典的,因为我没有时间看卷二,所以不便评价。

  《用TCP\\\/IP进行网际互连》Douglus.E.Comer 一共三卷,卷一讲原理,卷二讲实现,卷三讲高级协议。

感觉上这一套要比Stevens的那一套要好,就连Stevens也不得不承认它的第一卷非常经典。

事实上,第一卷即使你没有一点网络的知识,看完以后也会对网络的来龙去脉了如指掌。

第一卷中还有很多习题也设计得经典和实用,因为作者本身就是一位教师,并且卷一是国外研究生的教材。

习题并没有答案,留给读者思考,因为问题得答案可以让你成为一个中级的Hacker,这些问题的答案可以象Douglus索取,不过只有他只给教师卷二我没有怎么看,卷三可以作为参考手册,其中地例子也很经典。

如果您看过Qterm的源代码,就会知道Qterm的telnet 实现部分大多数就是从这本书的源代码过来的。

对于网络原理的书,我推荐它,而不是Stevens的《TCP\\\/IP祥解》。

  《Operating System - Design and Implement》这个是讲操作系统的书,用Minix做的例子。

作者母语不是英文,所以英文看起来比较晦涩。

国内翻译的是《操作系统设计与实现》,我没看过中文版,因为翻译者是尤晋元,他翻译的《APUE》已经让我失望头顶了。

读了这本书,对操作系统的底层怎么工作的就会  有一个清晰的认识。

  《Linux Device Driver》2e ,为数不多的关于Linux设备驱动程序的好书。

不过内容有些杂乱,如果您没有一些写驱动的经验,初次看会有些摸不着南北。

国内翻译的是《Linux设备驱动程序》第二版,第一版,第二版的译者我都有很深的接触,不过总体上来说,虽然第二版翻译的有些不尽人意,但是相比第一版来说已经超出了一大截。

要读这一本书,至少应该先找一些《计算机原理》《计算机体系结构》的书来马马虎虎读读,至少应该对硬件和计算机的工作过程有一些了解。

谁有linux的学习心得

针对某一方面,例如shell编程之类的

急....

带着目的去学习,要完成一定的任务。

慢慢来,首先学会基本的文件操作,用熟vi编辑器,能够游刃有余的配置自己的网络。

会安装各种linux上的软件包。

请问谁有Linux的学习心得的吗

问题一:恕我直言,LZ所谓的熟悉也是自以为了吧。

一个程序员,说到对一门语言熟悉,那就显示出不错的功底了,还怎么写不出程序

问题二:你是想写什么样的程序

一个聊天程序,还是一个成绩查询系统,还是某个特定算法的实现,还是对做什么冥冥之中感觉自己仍然力不从心

初步总结:基于linux平台的c语言开发还不是很熟悉,检验办法:写一个简单的一对一聊天程序,要求多平台运行。

进一步窥探:算法与数据结构基础不扎实,视野不开阔,不知道自己该干什么。

建议:继续埋头苦干,研读linux高级编程和算法与数据结构,研习其中程序、算法的实现。

多到CSDN、开源中国等等网站溜达,里面的问答可谓尽显智慧。

祝好

Linux编程的几个重要知识点

说白了,就几个操作,open,close,read,write,Linux将所有东西都抽象为文件,例如存在于硬盘文件系统的固然不用说,连硬件的声卡,串口等都之需要像访问文件那样访问,这确实提供了很大的方便,不需要多记忆API。

这样跟之前驱动程序看过的能联系起来了。

一个驱动程序干些什么东西

很简单,最基本的必须提供这4个系统调用函数。

具体实现就是驱动程序里面要实现的了。

这个就是接口。

进程父进程,子进程,创建进程等。

线程的生成,等待控制等问题。

这里比较好学,进程说白了就是一个执行的程序实力,一个应用程序执行了,那么至少生成了一条进程。

或者干脆说,就是一个“任务”linux根据的就是这个最小单位来调度的,操作系统的任务调度。

当然了,现在是上位机编程,所以不需要知道操作系统的细节,我们只需要了解API。

线程在一个进程中分几个线程,调度颗粒更加小。

着重讨论了pthread 接口内存管理C标准的内存管理函数就不要说了,注意内存泄露等问题。

这里主要是学习内存映像文件,就是说将一个文件搬到内存里面执行。

进程间通讯管道,FIFO,共享内存,消息队列等进程间通讯的手段,这个是操作系统的一个比较重要的概念。

所以还是必须好好的学习。

守护进程

如何学习linux下编程

Linux里面装好GCC\\\/G++\\\/GDB或者python\\\/pdb,先学习在vi\\\/gedit里面写简单code,然后自己用gcc\\\/g++编译,如果有兴趣可以再debug看看.或者先学习bash编程,教程也可以很容易找到.最重要是坚持,每天学习一点\\\/看书\\\/看视屏, 码代码.有问题多思考多问多总结.

对 linux的学习

linux下的gcc可以满足你的c\\\/c++编程需求,想写java,可以在linux下用eclipse。

声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。联系xxxxxxxx.com

Copyright©2020 一句话经典语录 www.yiyyy.com 版权所有

友情链接

心理测试 图片大全 壁纸图片