本书讲解了Linux驱动开发的基础知识以及所用到的开发环境,全书分为22章,其内容涵盖了各种Linux子系统,包含内存管理、PWM、RTC、IIO和IRQ管理等,还讲解了直接内存访问和网络设备驱动程序的实用方法。在学完本书之后,读者将掌握设备驱动开发环境的概念,并可以从零开始为任何硬件设备编写驱动程序。 阅读本书需要具备基本的C语言程序设计能力,且熟悉Linux基本命令。本书主要是为嵌入式工程师、Linux系统管理员、开发人员和内核黑客而设计的。无论是软件开发人员,还是系统架构师或制造商,只要愿意深入研究Linux驱动程序开发,阅读本书后都将有所收获。
你已经具备了Linux基础,想进一步学习服务器架设吗?还想了解如何维护和管理你的服务器吗?《鸟哥的Linux私房菜 服务器架设篇(第三版修订)》是你最佳的选择。 目前有关Linux架设的书籍大多只教读者如何架设服务器,很少涉及服务器的维护、管理以及遇到问题时的应对策略。结果是,一旦服务器遭受攻击,人们就会手忙脚乱。因此,作者首先从系统基础和网络基础开始讲解,然后讨论网络攻击和防火墙保护主机,最后才介绍服务器的架设。 《鸟哥的Linux私房菜:第三版修订. 服务器架设篇》共分为四篇:第一篇是服务器搭建前的进修专区,主要介绍架设服务器之前必须具备的基本知识。阅读完这一篇后,无论你使用何种方式连接Internet,都不会有问题;第二篇是主机的简易安全防护措施,鸟哥会告诉你如何保护你的主机,养成良好的操作习惯,使你的主机免受
嵌入式 Linux涉及的知识点很多,对初学者的基础要求高,在知识储备的广度和深度上都对学习者提出了很高 的要求。大多数转型嵌入式 Linux开发的朋友都是以前从事单片机开发工作的工程师,因此如何从单片机开发工 程师转型为嵌入式 Linux开发工程师,这个过程非常重要。 单片机 工 程 师 大 多 数 都 是 在 Windows环 境 下 工 作,使 用 集 成 IDE 编 写 并 编 译 代 码,然 后 在 IDE 上 通 过 DownLoad按钮一键下载代码到单片机中。至于集成IDE是怎么组织源文件,又是怎么编译的并不清楚。 本书就以单片机工程熟悉的 裸机 开发为例,讲解如何在 Ubuntu下搭建开发环境,如何使用 VScode编写程 序,如何使用 make工具编译源码。通过这些操作,大家就可以对集成式IDE与开源开发环境有很清晰的认识。当 掌握了开发方式以后,剩下的就是通过大量的裸机案例来加深对I.MX6ULL 这颗芯片的认识,了解各
随着半导体技术和芯片技术的飞速发展,能运行嵌入式 Linux系统的 MPU 芯片价格也在不断降低,ARM 架构 的芯片在手机、工业控制、物联网、自动驾驶等领域得到了广泛应用。以前大量使用 MCU 的地方也开始使用嵌入式 Linux地系铁统刷。卡的闸机、汽车充电桩的操作面板、物联网网关等都有嵌入式 Linux的身影,各企业对嵌入式 Linux开发 人才的需求也急剧增加。相比单片机开发,嵌入式 Linux开发难度要大很多。尤其是重要的驱动开发,嵌入式 Linux内核采用面向对象思路设计,且已开发大量驱动框架,开发人员需要掌握这些驱动框架的使用,编写出符合嵌 入式 Linux要求的驱动。 本书从基本的点灯程序到网络驱动的编写,涵盖了 Linux开发的三大驱动类型:字符设备驱动、块设备驱动 和网络设备驱动。本书的一大特色就是涵盖了全设备树开发,除了开始的几个为了讲解嵌入式 Linux如何操作
本书对Linux命令行进行详细的介绍,全书内容包括4个部分,*部分由Shell的介绍开启命令行基础知识的学习之旅;第二部分讲述配置文件的编辑,如何通过命令行控制计算机;第三部分探讨常见的任务与工具;第四部分全面介绍Shell编程,读者可通过动手编写Shell脚本掌握Linux命令的应用,从而实现常见计算任务的自动化。通过阅读本书,读者将对Linux命令有更加深入的理解,并且可以将其应用到实际的工作中。 本书适合Linux初学人员、Linux系统管理人员及Linux爱好者阅读。
《Linux UNIX系统编程手册(上、下册)》是介绍Linux与UNIX编程接口的权 威之作。Linux编程资 深专业人士Michael Kerrisk在书中详细描述了Linux UNIX系统编程所涉及的系统调用和库函数,并辅之以全而清晰的代码示例。《Linux UNIX系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200个程序示例,另含88张表格和115幅示意图。 《Linux UNIX系统编程手册(上、下册)》总共分为64章,主要讲解了高效读写文件,对信号、时钟和定时器的运用,创建进程、执行程序,编写安全的应用程序,运用POSIX线程技术编写多线程程序,创建和使用共享库,运用管道、消息队列、共享内存和信号量技术来进行进程间通信,以及运用套接字API编写网络应用等内容。 《Linux UNIX系统编程手册(上、下册)》在汇聚大批 Linux专有特性(epoll、inotify、 proc)的同时,还特意强化了对UNIX标准(POSIX、SUS)
Linux如此的流行正是得益于它的特性丰富并有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。 同其他O'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的TCP/IP经验是有用的,但初学者通过本书仍然可以学习到协议本身和大量的应用信息。一旦彻底掌握了这些网络工具,你就可以使用本书所附的代码,准确地指出Linux内核中重要的部分如何工作。 网络功能的实现或破坏在不同的时候是由不同的代码块完成的,这正是理解网络和实现它的难点中的一部分。本书的成功之一就是描述这些代码块如何集成,以及众多的函数和数据结构之间的关系。《深入理解Linux网络内幕》不仅描述了Linux
《精通嵌入式Linux编程》详细阐述了与嵌入式Linux开发相关的基本解决方案,主要包括初识嵌入式Linux开发、关于工具链、引导加载程序详解、配置和构建内核、构建根文件系统、选择构建系统、使用Yocto进行开发、Yocto技术内幕、创建存储策略、现场更新软件、连接设备驱动程序、使用分线板进行原型设计、init程序、使用BusyBox runit启动、管理电源、打包Python程序、了解进程和线程、管理内存、使用GDB进行调试、性能分析和跟踪、实时编程等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。
用读一本小说的心态来阅读本书,你会对整个操作系统的体系结构和逻辑细节有非常清晰的认识,从此爱上并阅读更多的操作系统源码。第1部分:进入内核前的苦力活。覆盖从开机到运行到Linux中的main函数的关键流程解析,帮你清晰认识Intel CPU的体系结构。第2部分: 大战 前期的初始化工作。讲述main中的各种初始化函数,这些函数是操作系统各个模块的交互桥梁,为理解后续操作系统各个模块的运作原理打好基础。第3部分:一个新进程的诞生。讲述从内核态切换至用户态,并建立起第一个用户进程的全部过程。学完这部分,你将会理解一个多进程的操作系统是如何建立和运作的。第4部分:shell程序的到来。主要讨论如何将磁盘中存储的shell程序加载到内存中来,并最终交给CPU去执行。通过这个过程你会看清一个程序从存储到硬盘到最终被执行的全部过程。第5部分
本书针对各种具体问题,提出解决方案,并详细解释了涉及到的技术原理,z后还给出了参考资料以供深入学习。本书的主要内容有:学习使用全新的通用服务管理器systemd。利用firewalld构建简单或复杂的防火墙。保证Linux系统与移动设备间网络连接的安全。抢救无法引导的系统。重置Linux与Windows的用户密码。利用dnsmasq管理局域网名称服务。管理用户与组,控制文件的访问。探测计算机硬件,监控硬件健康。管理GRUB引导加载程序,设置Linux与Windows双启动。通过z新的工具同步网络上所有系统的时间。在树莓派上构建互联网路由器与防火墙。管理文件系统与分区。
《高性能Linux网络编程核心技术揭秘》没有从基本的网络编程知识讲起,而是着眼于当前业界主流的Linux高性能网络编程框架,并以实战案例的形式将相关知识展现出来。本书详细讲解高性能Linux网络编程的常用框架,包括Linux网络自带的基本I/O模型epoll、Intel公司的DPDK、高性能服务器Nginx、高性能事件库libevent,并配套全部示例源码。 本书共分10章,内容包括高性能网络编程概述、Linux基础和网络、搭建Linux网络开发环境、网络服务器设计、基于libevent 的FTP服务器、基于epoll的高并发聊天服务器、高性能服务器Nginx架构解析、DPDK开发环境的搭建、DPDK应用案例实战、基于P2P架构的高性能游戏服务器。 本书既适合Linux高性能网络编程初学者、高性能网络服务器开发人员、高并发游戏服务器开发人员等阅读,也适合作为高等院校计算机网络与通信、计算机网络技术等相关专
Linux如此的流行正是得益于它的特性丰富及有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。同其他O'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的TCP/IP经验是有用的,但初学者通过《深入理解Linux网络内幕》仍然可以学习到协议本身和大量的应用信息。一旦掌握了这些网络工具,你就可以使用《深入理解Linux网络内幕》这本书所附的代码,准确地指出Linux内核中最重要的部分如何工作。 网络功能的实现或破坏在不同的时候是由不同的代码块完成的,这正是理解网络和实现它的难点中的一部分。《深入理解Linux网络内幕》该书的成功之一就是描述这些代码块如何集成,以及众多的函数和
《嵌入式操作系统基础μcOS-Ⅱ和Linux(第2版)》为《嵌入式操作系统基础μC/OS—Ⅱ和Linux》的第2版,本书继承了版的写作风格,仍以操作系统的初学者和高等院校的学生为对象,首先介绍便于学习和理解的微内核μC/OS—Ⅱ,从而使读者快速了解嵌入式实时操作系统的主要组成、功能及特点;然后从主要数据结构的角度介绍源码开放的操作系统Linux;,简单地介绍Linux的嵌入式版本μCLinux。与版相比,本书在重点改写Linux大部分内容的同时增加了必要的例题,从而大大地降低了初学者的学习难度。本书可作为高等院校课程的或教学参考书,同时也适合对嵌入式操作系统感兴趣的工程技术人员阅读、参考。
如果你需要分析或处理linux或unix中的文本数据,这本有用的书籍就讲解了如何使用flex和bison迅速解决问题。《flex与bison》被期待已久,是经典o'reilly系列书籍《lex& yacc》的续篇。在原书出版以来的近20年,flex和bison已被证明比原来的unix工具更可靠、更强大。 《flex与bison》一书涵盖了linux和unix程序开发中相同的重要核心功能,以及一些重要的新主题。你会找到适用于新手的修订教程和适用于高级用户的参考资料,以及对每个程序的基本用法的解释,并且运用它们创建简单、独立的应用程序。有了《flex与bison》,你会发现这些灵活的工具提供的广泛用途。
鸟哥著的《鸟哥的LINUX私房菜(基础学习篇第4版)》是知名度颇高的Linux入门书《鸟哥的Linux私房菜基础学习篇》的新版,全面而详细地介绍了Linux操作系统。 全书分为五部分: 部分着重说明计算机的基础知识、Linux的学习方法,如何规划和安装Linux主机以及CentOS 7.x的安装、登录与求助方法;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全 重要的Linux账号的管理、磁盘配额、 文件系统管理、计划任务以及进程管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。 本书内容丰富全面,基本概念的讲解 细致,深入浅出。各
本书以Linux操作系统为基础,详细介绍了Linux 内核子系统,并辅以大量内核源代码和示例程序进行演示,读者深入Linux内核。 本书的主要内容包括:Linux 基础知识、内核探索工具集、进程的整个生命周期、内存区、页面、Slab 分配器、用于输入/输出的各种设备、文件系统、抢占、自旋锁、信号量、内核引导、构建Linux内核,以及向内核添加代码等,同时还简单介绍了一些应用工具和实用程序。每章末尾都给出一些练习,涉及内核运行的操作及工作原理。 本书适合对Linux 内核感兴趣的各层次读者,无论对Linux 初学者还是Linux程序开发人员,本书都是一本很有价值的参考书。
鸟哥著的《鸟哥的LINUX私房菜(基础学习篇第4版)》是知名度颇高的Linux入门书《鸟哥的Linux私房菜基础学习篇》的新版,全面而详细地介绍了Linux操作系统。全书分为五部分:第一部分着重