⑴ 学习嵌入式怎么入手
嵌入式系统是计算机软件和念信硬件的综合体,岗位包括:ESE(嵌入式软件工程师);ADE(嵌入式应用开发工程师);FWE(嵌入式底层开发工程师);FEC(嵌入式固件开发工程师)。
课程内容主要包括:
①C,Java核心编程:c语言核心编程,Java核心编程;
②linux核心操作与算法:Linux系统使用,Linux-c编程核心技术,精品数据结构,Linux-c编程精髓;
③核心操作与算法:Linux系统编程,Linux网络编程核心技术,UI编程,Java核心编程,安卓核心技术;
④ARM+Linux底层开发:数字电路,ARM编程核心,Linux系统开发,嵌入式Linux驱动开发;
⑤大型项目实践:每期安排各类型真实的项目,详细可以找我要资料。
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间仔瞎轮取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学神扮有所成,望采纳。
⑵ 关于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,应该怎么学
学嵌入式Linux要先学以下几点:
1.C语言。要有C语言的基础,当然越熟练越好,不熟也没关系,具备基本技能就可以:比如写一个数组排序、输入数字求和什么的。C语言的学习就是多些多练。
2.Linux基础
Linux操作系统的概念、安装方法,详细了解Linux下的目录结构、基本命令、编辑器VI ,编译器GCC,调试器GDB和 Make 项目管理工具, Shell、 Makefile脚本编写等知识,嵌入式开发环境的搭建。
3.Linux系统编程
重点学习标准I/O库,Linux多任务编程中的多进程和多线程,以及进程间通信(pipe、FIFO、消息队列、共享内存、signal、信号量等),同步与互斥对共享资源访问控制等重要知识,主要提升对Linux应用开发的理解和代码调试的能力。
4.Linux网络编程
计算机网络在嵌入式Linux系统应用开发过程中使用非常广泛,通过Linux网络发展、TCP/IP协议、socket编程、TCP网络编程、UDP网络编程、Web编程开发等方面入手,全面了解Linux网络应用程序开发。重点学习网络编程相关API,熟练掌握TCP协议服务器的编程方法和并发服务器的实现,了解HTTP协议及其实现方法,熟悉UDP广播、多播的原理及编程方法,掌握混合C/S架构网络通信系统的设计,熟悉HTML,Javascript等Web编程技术及实现方法。
5.数据结构与算法
数据结构及算法在嵌入式底层驱动、通信协议、及各种引擎开发中会得到大量应用,对其掌握的好坏直接影响程序的效率、简洁及健壮性。此阶段的学习要重点理解数据结构与算法的基础内容,包括顺序表、链表、队列、栈、树、图、哈希表、各种查找排序算法等应用及其C语言实现过程。
6.Cortex A8 、Linux 平台开发
通过基于ARM Cortex-A8处理s5pv210了解芯片手册的基本阅读技巧,掌握s5pv210系统资源、时钟控制器、电源管理、异常中断控制器、nand flash控制器等模块,为底层平台搭建做好准备。Linux平台包括内核裁减、内核移植、交叉编译、GNU工具使用、内核调试、Bootloader介绍、制作与原理分析、根文件系统制作以及向内核中添加自己的模块,并在s5pv210实验平台上运行自己制作的Linux系统,集成部署Linux系统整个流程。同时了解Android操作系统开发流程。Android系统是基于Linux平台的开源操作系统,该平台由操作系统、中间件、用户界面和应用软件组成,是首个为移动终端打造的真正开放和完整的移动软件,目前它的应用不再局限于移动终端,还包括数据电视、机顶盒、PDA等消费类电子产品。
7.驱动开发
驱动程序设计是嵌入式Linux开发工作中重要的一部分,也是比较困难的一部分。本阶段的学习要熟悉Linux的内核机制、驱动程序与用户级应用程序的接口,掌握系统对设备的并发操作。熟悉所开发硬件的工作原理,具备ARM硬件接口的基础知识,熟悉ARM Cortex-A8处理器s5pv210各资源、掌握Linux设备驱动原理框架,熟悉工程中常见Linux高级字符设备、块设备、网络设备、USB设备等驱动开发,在工作中能独立胜任底层驱动开发。
⑷ Linux学习书籍求推荐
Linux学习书籍求推荐
1、《Linux与Unix Shell 编程指南》
C语言基础
1、《C Primer Plus,5th Edition》【美】Stephen Prata着
2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)着
3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
4、《嵌入式Linux应用程序开发详解》
Linux内核
1、《深入理解Linux内核》(第三版)
2、《Linux内核源代码情景分析》毛德操 胡希明着
研发方向
1、《UNIX Network Programming》(UNP)
2、《TCP/IP详解》
3、《Linux内核编程》
4、《Linux设备驱动开发》(LDD)
硬件基础
1、《ARM体系结构与编程》杜春雷着
2、S3C2410 Datasheet
英语基础
1、《计算机与通信专业英语》
系统教程
1、《嵌入式系统――体系结构、编程与设计》
2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明着
3、《Building Embedded Linux Systems》
理论基础
1、《算法导论》
2、《数据结构(C语言版)》
3、《计算机组织与体系结构?性能分析》
4、《深入理解计算机系统》【美】Randal E. Bryant David O’Hallaron着
5、《操作系统:精髓与设计原理》
6、《编译原理》
7、《数据通信与计算机网络》
8、《数据压缩原理与应用》
入门篇
《LINUX权威指南》书不错,写的很全面也比较广,涉及的不深,做为入门书籍不错,可以比较全面的了解linux 。另外比较热门的也可以看看《鸟哥的私房菜》等书,偏管理类的书。如果想做server方向的可以找来看看。
驱动 篇
《LINUX设备驱动程序 》就是网上说的“LDD”,经典之作,必备书籍。国产经典《Linux驱动详细解》也是一本非常不错的书,很实用,书中源代码分析比较多,基于2440的,对linux外围驱动有很全面的讲解
内核篇
浙江大学的《LINUX内核源代码情景分析》,外国鬼子的《莱昂氏UNIX源代码分析》还有《深入理解linux内核》都是出名的经典巨作。另外赵 炯的《LINUX内核完全剖析–基于0.12内核》也非常不错,对内核代码进行了详细的注释,非常有助于对内核的理解和代码的分析。
shell篇
《LINUX与UNIX Shell编程指南》
应用 编程
不用说了肯定是《unix环境高级编程》被称为unix编程的圣经。
TCP/IP篇
《TCP/IP详解》作者W.Richard Stevens也是《unix环境高级编程》的作者,牛人出的书没有一本不是经典的。但是英年早逝,默哀一下。
c语言
《The C Programming Language》正是作者造出来的c语言,书能垃圾就怪了
《c和指针》和《c缺陷和陷阱》两本必备。包含了c语言最容易出错的地方,加深c语言功力的好材料。
关于算法
《算法导论》
1 熟悉linux基本环境 >>> 《鸟哥的私访菜》《unix初级教程》 《linux编程宝典》(市面上无,图书馆有), 等等。
2 熟悉操作系统的基础知识 >>> 《现代操作系统》 《操作系统概念》
3 熟悉系统编程 >>> 《unix环境高级编程第二版》《unix操作系统设计与实现》
4 内核 按先后顺序: 《 linux内核设计与实现》 《linux设备驱动程序》 《深入理解 linux内核》 《linux内核源代码情景分析》 《深入理解linux虚拟内存系统》
5 其他一些书籍: 《freebsd操作系统设计与实现》 《solaris内核结构》 《unix高级教程:系统技术内幕》 《现代体系结构的unix系统:内核程序员的smp与cache技术》 《保护方式下的80386及其编程》 (后3本市面上没了,大学图书馆里一般都有》 《Intel64 and IA-32 Arichitectures Software Developer’s Manual》
6 其实内核玩深了,体系和编译也要学好 《计算机体系结构:量化研究方法》 《编译原理》(龙书)
Linux编程推荐书籍一览表
shell 编程
《LINUX与UNIX SHELL编程指南》
BASH宝典:
Advanced Bash Scripting Guide (如果你使用的是 GNU/Debian 系统,可以用 apt-get install abs-guide 安装该文档)
BASH Programming – Introction HOW-TO
Bash Man
用户级编程书籍:
Advanced Programming in the UNIX Environment(中文版《UNIX环境高级编程》第二版) 作者 W.Richard
Stevens/尤晋元等
GNU/Linux编程指南 作者 Kurt Wall
Linux 程序设计权威指南 作者 于明俭、陈向阳、方汉
《The Art of Unix Programming》作者 E.S.R
Computer Systems A Programmer’s Perspective
(中文名)《深入理解计算机系统(修订版)》
《Unix Systems Programming》(中文版《UNIX系统编程》)作者: (美)KAY
A.ROBBINS, STEVE ROBBINS 译者:陈涓 赵振平
网络编程:
Unix Network Programming V1 & V2,Unix网络编程卷1、2 作者 W.Richard Stevens
《unix网络编程》
XWindow编程
Definitive Guides to the X WindowSystem 作者 Dan Heller, Paula M. Ferguson
内核源代码阅读(结合源代码)和编程
(入门)
《边干边学Linux内核指导》
(高级)
《Linux Kernel Development》
《Linux内核源代码情景分析》
《深入分析Linux内核源代码》 陈莉君
《 Understanding Linux Network Internals 》即《 深入理解Linux网络内幕(英文影印版)》Christian Benvenuti
内核模块编程
《The Linux Kernel Mole Programming Guide》
Linux设备驱动编程
Linux设备驱动程序/Linux Device
Drivers 作者 Alessandro Ruibini
多线程编程
《多线程编程指南》
⑸ 想学习linux网络编程方面的东西,急需 Linux网络编程(第2版) pdf版的,谢谢分享!
如果您不介意英文的话,我觉得这个网站讲Linux下的网络编程挺不错:
http://www.tenouk.com/cnlinuxsockettutorials.html
作者出这本书也是付出了自己的劳动,如果可以,希望您尽量可以购买正版图书
若是试读的话,当当网上有目录的预览,亚马逊上还提供正文的节选试读,不知道这些够不够,希望能有帮助
⑹ 嵌入式开发如何入门
嵌入式开发主要有两种,像STM32、飞思卡尔等系列单片机属于无操作系统的,直接对寄存器或者利用库函数操作的,这种学习来难度相对小一些,就业前景也不错。
还有一些像ARM9,或者CortexA8、A9系列的可以运行Linux或者安卓操作系统的嵌入式软件系统开发,由于需要学习的内容较多,学习时间较长,那么学习起来就有一定的难度,工资也相对高一些。
课程内容主要包括:
①C,Java核心编程:c语言核心编程,Java核心编程;
②Linux核心操作与算法:Linux系统使用,Linux-c编程核心技术,精品数据结构,Linux-c编程精髓;
③核心操作与算法:Linux系统编程,Linux网络编程核心技术,UI编程,Java核心编程,安卓核心技术;
④ARM+Linux底层开发:数字电路,ARM编程核心,Linux系统开发,嵌入式Linux驱动开发;
⑤大型项目实践:每期安排各类型真实的项目,详细可以找我要资料。
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
⑺ 有没有自学成功的Linux系统编程人员_如何自学linux
还是建议你参加嵌入式培训,系统的学习一下嵌入式软件方面的知识比较好,任何知识的学习都是有一定的体系的,自学的话会比较盲目哦。
如果LZ真想,以下建议希望对您有些帮助:
嵌入式软件目前最常见的是嵌入式Linux方向,关于这个方向,我认为大概分3个阶段:
1、嵌入式linux上层应用,包括QT的GUI开发
2、嵌入式linux系统开发
3、嵌入式linux驱动开发
嵌入式目前主要面向的几个操作系统是,LINUX,WINCE、VxWorks等等
Linux是开源启轿免费的,而且其源代码是开放的,更加适合我们学习嵌入式。
所以你可以尝试以下路线:
(1)C语言是所有编程语言中的强者,单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因滑信此必须非常熟练的掌握。
推荐书籍:《TheCProgrammingLanguage》这本经典的教材是老外写的,也有中译版本。
(2)操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。
(3)Linux操作系统就是用C语言编写的,所以你也应该先学习下Linux方面的编程,只有你会应用了,才能近一步去了解其内核的精髓。
推荐书籍:《UNIX环境高级编程》(第2版)
(4)了解ARM的架构,原理,以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
(5)系统移植的时候,就需要你从最下层的bootloader开始信旁轮,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。
(6)驱动开发
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。
linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前你要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。
以上只不过是大概的框架,在实际的开发中还会涉及很多东西,比如:交叉编译、makefile、shell脚本等等,所以说学习嵌入式的周期较长,门槛较高,自学的话更是需要较强的学习能力和专业功底。只要能坚持下来一定会取得成功!
LZ可以到华清远见的网站上了解一下,上面有很多嵌入式相关的详细信息,也可以在线看一下华清远见相关嵌入式技术专题的视频,先对这个行业有更多了解,具体知道关键的技术点,更好地往这个方向发展。同时华清远见从06年开始陆续出版的近40本嵌入式专业图书也一定可以帮助到您,您在各大书店和图书馆应该都可以看到,具体问题还可以拨打免费电话咨询华清远见的专业老师!
⑻ linuxshell编程书籍推荐
Linux程序设计.第3版
作者:(英)马修,(英)斯通斯着,陈健等译出版社:人民邮电出版社出版时间:2007年07月
它提供了一种理想的方式来阐明每个被介绍过的更高级的主题。我们对这个应用程序的第一次讨论出租族现在本书第2章的结尾处,它展示了一个非常大的shell脚本是如何组织的,shell如何处理用户输入、如何构造菜单以及如何存储...
¥89.00¥66.75折扣:75折节省:¥22.25
--------------------------------------------------------------------------------
Linux命令、编辑器与Shell编程
作者:(美)索贝尔(Sobell,M.G.)着,杨明军,王凤芹译出版社:清华大学出版社出版时间:2007年03月
要想真正高效地使用Linux,就必须全面掌握shell和命令行。通常必须购买两本书才能达到精通的目的:一本关于Linux基本概念和技术的指南,再加上一个单独的参考手册。更糟糕的是,大多数Linux参考手册只是对man手册页的...
¥98.00¥73.50折扣:75折节省:¥24.50
--------------------------------------------------------------------------------
Linux指令速查手册
作者:吴恒奎编着出版社:人民邮电出版社出版时键型激间:2007年12月
将程序放在后台执行1.8cd指令:切换目录1.9chfn指令:设置finger信息1.10chsh指令:改变登录系统时的shell1.11clear指令:清除终端屏幕1.12date指令:显示或设置系统时间1.13echo指令:显示...
¥45.00¥33.75折扣:75折节省:¥11.25
--------------------------------------------------------------------------------
嵌入式Linux系统开发技术详解-基于ARM
作者:孙纪坤,张小全编着出版社:人民邮电出版社出版时间:2006年08月
三星S3C2410开发板介绍242.4.2众多的开发板供应商26第3章Linux编程环境283.1Linux常用工具283.1.1Shell简介283.1.2常用Shell命令303.1.3编写Shell脚本383.1.4正则表达式423.1.5程序编辑器443.2Mak...
¥39.00¥29.30折扣:75折节省:¥9.70
--------------------------------------------------------------------------------
UNIXshell范例精解(第4版)
作者:(美)奎格莉(Quigley,E.)着,李化,张国强译出版社:清华大学出版社出版时间:2007年05月
在本书的再版中,Quigley对她的经典着作进行了全新的改版,增加了当前shell程序员所需的最新内容——使用bash进行Linuxshell编程。本书汇聚了Quigley21年来的shell编程教学经验。书中不仅展示了能帮助读者快速...
¥118.00¥88.50折扣:75折节省:¥29.50
--------------------------------------------------------------------------------
完全手册--Linux系统与网络服务管理技术大全(含光盘)
作者:杨明华等编着出版社:电子工业出版社出版时间稿袜:2008年01月
25.4.5使用ssh客户端25.4.6使用scp客户端25.4.7使用sftp客户端25.4.8使用SSHSecureShell访问SSH服务器25.5计算机病毒与防护25.5.1计算机病毒种类25.5.2计算机病毒特征25...
¥79.80¥59.90折扣:75折节省:¥19.90
--------------------------------------------------------------------------------
构建嵌入式LINUX系统
作者:(美)雅默着,韩存兵,龚波改编出版社:中国电力出版社出版时间:2004年12月
硬件两方面。系统管理你必须能够胜任各种系统管理工作,如硬件的配置。系统的设定。维护以及利用shell命令脚本让管理工作自动化。设备驱动程序你必须知道如何对各种Linux设备驱动程序进行开发及...
¥48.00¥36.00折扣:75折节省:¥12.00
--------------------------------------------------------------------------------
RedHatLinux9系统管理与服务器配置
作者:杨宗德等编着出版社:人民邮电出版社出版时间:2007年07月
Linux桌面管理基本操作2.3.1使用桌面面板2.3.2使用Nautilus文件管理器2.3.3打开终端Shell提示2.3.4注销及关闭系统第3章Shell及文本界面基本操作3.1...
¥42.00¥31.50折扣:75折节省:¥10.50
--------------------------------------------------------------------------------
鸟哥的LINUX私房菜:基础学习篇
作者:鸟哥编着出版社:科学出版社出版时间:2005年06月
第1篇主要介绍Linux操作系统的规划与安装;第2篇介绍Linux的基本文件权限与系统架构;第3篇介绍非常重要的Shell与Shellscripts的基本内容,这是所有以文字界面操控主机的基础;第4篇着重介绍Linux用户管理,包括账号...
¥42.00¥31.50折扣:75折节省:¥10.50
--------------------------------------------------------------------------------
Linux基础与应用
作者:陈明编着出版社:清华大学出版社出版时间:2005年10月
本书是一本有关Linux操作系统应用的教程,主要内容包括:Linux概述、RedHatLinux系统安装、linux常用命令、Xwindow系统、RedHatLinux常用工具、Linux系统管理与配置、Linux常用应用程序、Linux下的Shell编程、...
¥23.00¥17.25折扣:75折节省:¥5.75
--------------------------------------------------------------------------------
鸟哥的Linux私房菜——服务器架设篇(附CD-ROM光盘一张)
作者:鸟哥编着出版社:科学出版社出版时间:2005年06月
网站的相关维护技巧以及鸟哥平时在维护主机时认为较佳的维护经验。本书目标读者本书侧重于深入讨论架站规划、流程、技巧与维护等工作,比较基础的Linux操作与相关Shell语法在本书谈论得不多,相关内容请参考...
¥73.00¥54.80折扣:75折节省:¥18.20
--------------------------------------------------------------------------------
UbuntuLinux入门到精通(附光盘)
作者:李蔚泽着出版社:机械工业出版社出版时间:2007年05月
本书全面介绍了UbuntuLinux的相关知识,内容详实,论述清晰。主要内容包括Ubuntu介绍、文件系统管理、进程管理、压缩与查询系统、Shell应用、TCP/IP基础、网络管理、网络硬盘以及加密安全通信等内容。本书是一本...
¥42.00¥31.50折扣:75折节省:¥10.50
--------------------------------------------------------------------------------
Linux标准学习教程
作者:IT同路人编着出版社:人民邮电出版社出版时间:2008年01月
Linux字符界面、Linux常用命令、Linux应用软件、Linux系统启动、Linux系统管理和维护、Linux服务器配置、shell编程、LinuxC语言基础、Linux程序编译和调试维护等内容。本书内容丰富、结构清晰、讲解细致、图文并茂...
¥49.00¥36.75折扣:75折节省:¥12.25
--------------------------------------------------------------------------------
LPILINUX认证权威指南
作者:(美)迪安着,Taiwan公司编译出版时间:2007年08月
GNu与unix基本命令、文件系统、x窗口系统等;第二部分涵盖102考试,包括Linux内核、开机程序、打印、文件管理、Shell程序设计、系统管理、TCP/IP网络概论、常用的网络服务、系统安全防护等。通过考试不仅是对自己...
¥68.00¥50.90折扣:75折节省:¥17.10
--------------------------------------------------------------------------------
Unix与Linux系统管理
作者:(美)弗里斯科比(Frisch,AE.)着,刘颖译出版社:清华大学出版社出版时间:2006年11月
打印机和假脱机子系统第14章自动执行管理任务第15章管理系统资源第16章配置和构建内核第17章记账附录管理Shell的编程内容提要:本书自1991年10月第一版开始,就成了Unix和Linux系统管理员的终极参考书。本...
¥129.00¥96.80折扣:75折节省:¥32.20
--------------------------------------------------------------------------------
LINUX系统故障诊断与排除
作者:(美)柯克兰(Kirklan,d.J.)等着,周良忠等译出版社:人民邮电出版社出版时间:2007年01月
登录问题14.1/etc/password,/etc/shadow和密码时效14.2Linux配置造成的登录失败14.3PAM14.4shell问题14.5密码问题14.6小结14.7尾注第15章XWindows问题15.1X背景15.2X组件...
¥48.00¥36.00折扣:75折节省:¥12.00
--------------------------------------------------------------------------------
Linux系统应用与开发教程——计算机基础课程系列教材
作者:刘海燕等编着出版社:机械工业出版社出版时间:2005年10月
1.4.2登录1.4.3注销1.4.4关闭1.5小结习题第2章shell及常用命令2.1Linux终端使用基础2.1.1什么是Linux终端2.1.2...
¥25.00¥18.70折扣:75折节省:¥6.30
--------------------------------------------------------------------------------
LINUX黑客大曝光(第2版)
作者:(美)哈茨,(美)李着,王一川译出版社:清华大学出版社出版时间:2003年12月
Linux上口令的工作方式9.2口令破解程序9.3PAM9.4蛮力口令猜测攻击9.5口令保护9.6Linux中非shell程序的用户认证机制9.7小结第4部分服务器的安全问题第10章邮件安全性10.1Ma...
¥59.00¥44.10折扣:75折节省:¥14.90
--------------------------------------------------------------------------------
LINUXSERVERHACKS(卷二):100个业界最尖端的技巧和工具
作者:(美)哈根,(美)琼斯着,张颖译出版社:清华大学出版社出版时间:2007年01月
29.同时在多台服务器执行命令30.用加固的Wiki安全协作31.用grubby编辑GRUP配置32.给Tab键一个显示的机会33.在退出shell后保持进程运行34.断开控制台连接而不结束会话35.使用脚本节约时间和培训别人3...
⑼ linux软件开发如何入门
要想在linux下面编程,首先得熟习linux的使用才行,学习的大体过程我描迅在下面,希望对你有帮助:
1基础篇
这是学习linux系统的使用
2服务器篇
可以看些简单的服务器构建:tftp,ftp,nfs,dhcp
以后用的到
3shell编程及高级编程
这里可以了解,不一定深入,有个概念就好了
4c语言编程(cprogramplus第五版,C与指针,C专家编程,C陷阱,这几本书是经典之作)5g,make,ctags,dbg的使用以及makefile的编写(这一步与4同步游并尺进行)
6unix高级环境编程(这是书名,也是你要学的)
7QT的编写,或则GTK的编写(这是图形界面的开始)至此软件工程师结束(下面是开发工程师要继续的)
8gunarm的使用,交叉编译环境的搭建
9arm下面的编程与qtopia的搭建
包括qt/emled(记不下来,你自己搜下蔽卜)交叉编译环境的搭建(完成arm上面的图形化)
10对arm开发板的熟悉
11gunarm汇编的编写与内嵌汇编的编写
12u-boot下面驱动的编写(根据芯片手册来编写)
13u-boot的移植,这里也可以用vivi
14kernel的裁减与移植
15文件系统的构建与移植
16系统级别的驱动编写神高//到此开发工程师初步形成
然后就是不停的练就慢慢成为高级了
⑽ Linux系统编程—管道
Linux 实现 IPC 其中的一种方式——管道
管道又分:
1、无名管道:无名管道只能用于有亲缘关系的进程。
2、有名管道:有名管道用于任意两进程间通信。
你就可以把管道理解成位于进程内核空间的“文件”。
给文件加引号,是因为它和文件确实很像,因为它也有描述符。但是它确实又不是普通的本地文件,而是一种抽象的存在。
当进程使用 pipe 函数,就可以打开位于内核中的这个特殊“文件”。同时 pipe 函数会返回两个描述符,一个用于读,一个用于写。如果你使用 fstat函数来测试该描述符,可以发现此文件类型为 FIFO。
而无名管道的无名,指的就是这个虚幻的“文件”,它没有名字。本质上,pipe 函数会在进程内核空间申请一块内存(比如一个内存页,一般是 4KB),然后把这块内存当成一个先进先出(FIFO)的循环队列来存取数据,这一切都由操作系统帮助我们实现了。
pipe 函数打开的文件描述符是通过参数(数组)传递出来的,而返回值表示打开成功(0)或失败(-1)。
它的参数是一个大小为 2 的数组。此数组的第 0 个元素用来接收以读的方式打开的描述符,而第 1 个元素用来接收以写的方式打开的描述符。也就是说,pipefd[0] 是用于读的,而 pipefd[1] 是用于写的。
打开了文件描述符后,就可以使用 read(pipefd[0]) 和 write(pipefd[1]) 来读写数据了。
注意事项
1、这两个分别用于读写的描述符必须同时打开才行,否则会出问题。
2、如果关闭读 (close(pipefd[0])) 端保留写端,继续向写端 (pipefd[1]) 端写数据(write 函数)的进程会收到 SIGPIPE 信号。
3、如果关闭写 (close(pipefd[1])) 端保留读端,继续向读端 (pipefd[0]) 端读数据(read 函数),read 函数会返回 0。
当在进程用 pipe 函数打开两个描述符后,我们可以 fork 出一个子进程。这样,子进程也会继承这两个描述符,而且这两个文件描述符的引用计数会变成 2。
如果你需要父进程向子进程发送数据,那么得把父进程的 pipefd[0] (读端)关闭,而在子进程中把 pipefd[1] 写端关闭,反之亦然。为什么要这样做?实际上是避免出错。传统上 pipe 管道只能用于半双工通信(即一端只能发,不能收;而另一端只能收不能发),为了安全起见,各个进程需要把不用的那一端关闭(本质上是引用计数减 1)。
步骤一:fork 子进程
步骤二:关闭父进程读端,关闭子进程写端
父进程 fork 出一个子进程,通过无名管道向子进程发送字符,子进程收到数据后将字符串中的小写字符转换成大写并输出。
有名管道打破了无名管道的限制,进化出了一个实实在在的 FIFO 类型的文件。这意味着即使没有亲缘关系的进程也可以互相通信了。所以,只要不同的进程打开 FIFO 文件,往此文件读写数据,就可以达到通信的目的。
1、文件属性前面标注的文件类型是 p
2、代表管道文件大小是 0
3、fifo 文件需要有读写两端,否则在打开 fifo 文件时会阻塞
通过命令 mkfifo 创建
通过函数 mkfifo创建
函数返回 0 表示成功,-1 失败。
例如:
cat 命令打印 test文件内容
接下来你的 cat 命令被阻塞住。
开启另一个终端,执行:
然后你会看到被阻塞的 cat 又继续执行完毕,在屏幕打印 “hello world”。如果你反过来执行上面两个命令,会发现先执行的那个总是被阻塞。
有两个程序,分别是发送端 send 和接收端面 recv。程序 send 从标准输入接收字符,并发送到程序 recv,同时 recv 将接收到的字符打印到屏幕。
发送端
接收端
编译
运行
因为 recv 端还没打开test文件,这时候 send 是阻塞状态的。
再开启另一个终端:
这时候 send 端和 recv 端都在终端显示has opend fifo
此时在 send 端输入数据,recv 打印。