本书讲解了Linux驱动开发的基础知识以及所用到的开发环境,全书分为22章,其内容涵盖了各种Linux子系统,包含内存管理、PWM、RTC、IIO和IRQ管理等,还讲解了直接内存访问和网络设备驱动程序的实用方法。在学完本书之后,读者将掌握设备驱动开发环境的概念,并可以从零开始为任何硬件设备编写驱动程序。 阅读本书需要具备基本的C语言程序设计能力,且熟悉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系统编程(第 2版)》是一本关于Linux系统编程的教程,也是一本介绍Linux系统编程的手册,还是一本如何实现更优雅更快代码的内幕指南。全书分为11章和2个附录,详细介绍了Linux系统编程基本概念、文件I/O、缓冲I/O、高 级文件I/O、进程管理、高 级进程管理、线程、文件和目录管理、信号和时间等主题。附录给出了gcc和GNU C提供的很多语言扩展,以及推荐阅读的相关书目。 《Linux系统编程(第 2版)》的作者是Linux内核专业人士,多本技术图书的作者。《Linux系统编程(第 2版)》需要在C编程和Linux编程环境下工作的程序员阅读,对于想要巩固基础或了解内核的高 级编程人员,《Linux系统编程(第 2版)》也很有参考价值。
本书为Linux之父林纳斯 托瓦兹的自传。书中以林纳斯 托瓦兹对人生和社会走向的独特理解(生存、社会秩序、娱乐)为线索,在讲述林纳斯 托瓦兹成长经历的同时,阐述他对技术、自由、信息共享以及创造激情的体会与感悟,以及黑客精神与商业现实之间的冲突的深入思考,描绘出了以 自由与激情 为主导价值和内在驱动的黑客人生信仰模式,是了解林纳斯成功之路与人生哲学,以及Linux操作系统幕后故事的佳作。 本书适合计算机相关从业者阅读,也作为对Linux系统、黑客精神感兴趣的读者的参考资料。
本书结合大量实验程序和图表,通俗易懂地介绍了Linux操作系统的运行原理和硬件的基础知识,涉及进程管理、进程调度器、内存管理、存储层次、文件系统和外部存储器等。实验程序使用C语言和Python编写,读者可亲自动手运行程序,来确认系统的行为。另外,以图解的方式介绍各知识点,简明且直观,能够帮助读者加深理解。读者只需对Linux基本命令有所了解,即可轻松阅读。 本书适合应用程序开发人员、系统设计师、运维管理人员和技术支持人员等人士阅读。
本书介绍了嵌入式Linux系统开发过程中,从底层系统支持到上层GUI应用的方方面面,内容涵盖Linux操作系统的安装及相关工具的使用、配置,嵌入式编程所需要的基础知识(交叉编译工具的选项设置、Makefile语法、ARM汇编指令等),硬件部件的使用及编程(囊括了常见硬件,?热?UART、I*IC、LCD等),U-Boot、Linux内核的分析、配置和移植,根文件系统的构造(包括移植busybox、glibc、制作映象文件等),内核调试技术(比如添加kgdb补丁、栈回溯等),驱动程序编写及移植(LED、按键、扩展串口、网卡、硬盘、SD卡、LCD和USB等),GUI系统的移植(包含两个G UI系统:基于Qtopia和基于X),应用程序调试技术。 本书从**简单的点亮一个LED开始,由浅入深地讲解,使读者**终可以配置、移植、裁剪内核,编写驱动程序,移植GUI系统,掌握整个嵌入式Linux系统的开发方法。 本书由浅入深
《Linux就该这么学(第2版)》源自日均访问量近60000次的线上同名课程,口碑与影响力俱佳,旨在打造简单易学且实用性强的轻量级Linux入门教程。 《Linux就该这么学(第2版)》在上一版的基础上进行了大量的更新,基于红帽RHEL 8系统编写,且内容适用于CentOS、Fedora等系统。本书共分为20章,内容涵盖了部署Linux系统,常用的Linux命令,与文件读写操作有关的技术,使用Vim编辑器编写和修改配置文件,用户身份与文件权限的设置,硬盘设备分区、格式化以及挂载等操作,部署RAID磁盘阵列和LVM,firewalld防火墙与iptables防火墙的区别和配置,使用ssh服务管理远程主机,使用Apache服务部署静态网站,使用vsftpd服务传输文件,使用Samba或NFS实现文件共享,使用BIND提供域名解析服务,使用DHCP动态管理主机地址,使用Postfix与Dovecot部署邮件系统,使用Ansible服务实现自动化运维,
随着网络和计算机的安全越来越受重视,渗透测试技术已经成为网络安全研究领域的焦点之一。作为一款网络安全审计工具,Kali在渗透测试行业广受认可,几乎包含了所有的热门工具,它可以通过对设备的探测来审计其安全性,而且功能极其完备。 本书由畅销的Kali图书升级而来,由资深的网络安全领域的一线教师编写完成。全书共15章,围绕如何使用Kali这款网络安全审计工具集合展开,涉及网络安全渗透测试的相关理论和工具、Kali Linux 2的基础知识、被动扫描、主动扫描、漏洞扫描、远程控制、渗透攻击、社会工程学工具、用Python?3编写漏洞渗透模块、网络数据的嗅探与欺骗、无线安全渗透测试、拒绝服务攻击等知识点,并结合Nmap、Metasploit、Armitage、Wireshark、Burp Suite等工具进行全面的实操演示。读者将从书中学习到简洁易懂的网络安全知识,了解实用的案例和
本书是一部UNIX 网络编程的经典之作!进程间通信(IPC)几乎是所有Unix 程序性能的关键,理解IPC 也是理解如何开发不同主机间网络应用程序的必要条件。本书从对Posix IPC 和System V IPC 的内部结构开始讨论,全面深入地介绍了4 种IPC 形式:消息传递(管道、FIFO、消息队列)、同步(互斥锁、条件变量、读写锁、文件与记录锁、信号量)、共享内存(匿名共享内存、具名共享内存)及远程过程调用(Solaris门、Sun RPC)。附录中给出了测量各种IPC 形式性能的方法。 本书内容详尽且具权威性,几乎每章都提供精选的习题,并提供了部分习题的答案,是网络研究和开发人员理想的参考书。
本书概述了Linux的发展历史,探讨了Linux的设计哲学,综述了Intel平台以及Linux的主要开发工具和几种常用的数据结构,而后从Linux的引导和初始化入手,详细论述了Linux各主要组成部分的设计原理、管理结构和技术演变,包括中断处理、时钟管理、物理内存管理、进程管理、虚拟内存管理、互斥与同步、进程间通信、虚拟文件系统、物理文件系统等,并深入探讨了Linux各组成部分之间的组织关系。《Linux原理与结构》内容取材于作者长期的教学和科研实践,涵盖了Linux发展过程中的多个版本,逻辑性强,抽象层次高,可作为硕士研究生与高年级本科生的教材或教学参考书,也可供Linux研究和开发人员参考使用。
本书对Linux命令行进行详细的介绍,全书内容包括4个部分,*部分由Shell的介绍开启命令行基础知识的学习之旅;第二部分讲述配置文件的编辑,如何通过命令行控制计算机;第三部分探讨常见的任务与工具;第四部分全面介绍Shell编程,读者可通过动手编写Shell脚本掌握Linux命令的应用,从而实现常见计算任务的自动化。通过阅读本书,读者将对Linux命令有更加深入的理解,并且可以将其应用到实际的工作中。 本书适合Linux初学人员、Linux系统管理人员及Linux爱好者阅读。
本书讲述了Linux系统及其他UNIX风格的操作系统上的程序开发,主要内容包括标准Linux C语言函数库和由不同的Linux或UNIX标准指定的各种工具的使用方法,大多数标准Linux开发工具的使用方法,通过DBM和MySQL数据库系统存储Linux中的数据,为X视窗系统建立图形化用户界面等。本书通过先介绍程序设计理论,再以适当的例子和清晰的解释来阐明它的方式,帮助读者掌握相关的知识。 本书适合Linux的初学者及希望利用Linux进行开发的程序人员阅读,也适合作为高等院校计算机相关专业师生的参考教材。
掌握Linux命令行操作,不仅是轻松驾驭Linux系统的基础,还是开展Python数据分析、数据库管理、后端开发等工作的基本功。 本书是专门为命令行初学者打造的学习手册,注重趣味性、实用性,逻辑清晰、图文并茂。书中总结了大量命令行表格与核心知识点,以方便大家快速掌握Linux命令行的使用方法。本书结合丰富的代码示例,详细地讲解了如何通过简单、方便的命令行操作解决实际问题,提升工作效率。书中内容主要分为两部分,共8章,包括命令行环境搭建、文件系统及其管理、应用和包管理、命令行及shell强化、文本处理、数据分析、Vim文本编辑、进程管理和工作空间组织。 本书面向从其他平台过渡到Linux的新用户、初级Linux系统管理员、Linux系统爱好者,以及对数据分析和开源技术感兴趣的读者。
本书延续了《UNIX系统管理技术手册》前几版的讲解风格,以当前主流的Linux发行版本为例,把Linux系统管理技术分为4个部分分别进行介绍。第一部分(基础管理)对UNIX和Linux系统进行了简介,涵盖了运行单机系统所需的大部分知识和技术。第二部分(连网)讲解了UNIX系统上使用的协议和服务器的相关技术。第三部分(存储)讲解了如何解决数据存储和管理的问题。第四部分(运维)介绍了系统管理员在工作中经常碰到的问题。 本书适用范围广泛,无论是Linux的初学者还是具有丰富经验的Linux专业技术人员可从本书中获益。
本书基于Linux基金会划分的开源网络技术层次框架,对处于主导地位的、较为流行的开源网络项目进行阐述,包括DPDK、OpenDaylight、Tungsten Fabric、OpenStack Neutron、容器网络、ONAP、OPNFV等。本书内容主要围绕各个项目的起源与发展、实现原理与框架、要解决的网络问题等方面展开讨论,致力于帮助读者对Linux开源网络技术的实现与发展形成完整、清晰的认识。本书语言通俗易懂,能够带领读者快速走入Linux开源网络的世界并做出自己的贡献。本书适合参与Linux开源网络项目开发的读者阅读,也适合互联网应用的开发者、架构师和创业者参考。
本书由知名编译与操作系统专家海纳撰写,将沉淀20余年的Linux系统研究所得倾注书中。本书用不到1万行代码复现了Linux 0.12内核,打通了“古早”工具链障碍,模块实现环环相扣,带你穿透“迷雾”,窥见Linux系统设计的绚丽“天光”。 本书共8章,从逻辑上分为四部分。 部分( 和2章)是基础知识,介绍开发内核所需的基础知识,包括开发环境和调试环境的搭建,以及i386保护模式等。第二部分(第3~6章)是核心模块,逐步实现进程、中断、系统调用、内存管理、字符设备驱动和块设备驱动等模块。第三部分(第7章)是文件系统,涵盖Minix文件系统、管理inode、管理普通文件、管理目录、文件链接、执行程序等内容。第四部分(第8章)是系统服务接口,介绍一些重要的函数,这部分不是内核的主要部分,但为了让shell程序正确地运行,这些函数也是必须实现的。
随着开源技术的不断进步与创新,在整个IT行业中,越来越多的企业愿意采用开源产品,而基于Linux的操作系统为这些开源产品提供了一个极佳的操作平台。本书将基于Linux操作系统这样一个基础平台,讲解如何实现各种开源产品的应用案例。全书主要从运维工作中的应用服务入手,全面讲解Linux操作系统及各种软件服务的运维方案。 现在的商业环境是一个充满竞争的环境,很多企业的业务量在不断地增长,对服务质量的要求也越来越高。特别是互联网企业,为了满足客户更高的要求,提升客户使用体验,IT?部门维护的设备往往数以万计,如此庞大的设备维护量,通常会让IT管理人员头疼不已。本书介绍的自动化运维内容可以让我们快速掌握简单的大规模批量运维方法。仅仅依靠自动化运维还不足以发挥出这些设备的能效,因此,我们还需要将各个服务器设备有机地
本书主要讲解的是Linux生产环境下的实际案例,并给出解决方案、解决思路、处理方法,以及涉及的技术,并且扩展到不同的适用面,包括Rsync传输工具、PXE FTP、 数据库HA、负载均衡、DRBD、rescue抢救、GlusterFS海量存储、容器和调优等多方面技术。软件版本以*的CentOS 7为基础,有一定的前瞻性,将生产的案例配套到CentOS 7的系统,让读者既学到新系统的使用,也学到在新系统下如何解决这些问题的方法。根据解决方案不同,同时也会给出6版本和7版本的不同解决方案。
龙芯系列微处理器是中国拥有自主知识产权的中央处理器,中国科学院计算技术研究所从2001 年开始研制龙芯系列处理器,于2010 年正式成立龙芯中科技术有限公司(以下简称龙芯中科),主要产品包括龙芯1 号CPU、龙芯2 号CPU 及龙芯3 号CPU。本书是基于龙芯俱乐部与龙芯中科合作开发的南京龙众创芯电子科技有限公司承制的智龙开发板,围绕龙芯1 号芯片LS1C 进行嵌入式系统开发讲解,也包含龙芯中科的2K 龙芯派、南京龙众创芯电子科技有限公司 的龙芯3A3000 开发者计算机的内容。 本书内容共分3 篇。基础篇包含实验平台和开发环境的搭建。中级篇为Linux 基础应用编程,包含线程、信号、网络等基本操作。高级篇包含开发板硬件编程、驱动程序编写等高级操作。附录主要为嵌入式系统开发常用资料和智龙开发板的电路原理图。本书结合实践案例及应用场景,按照嵌入式
本书是面向嵌入式Linux学习和产品开发的入门教程,分3篇,共18章,围绕嵌入式Linux产品开发的应用编程展开,内容涵盖Linux操作系统介绍、安装和基本使用、嵌入式Linux开发平台以及 嵌入式Linux的应用编程.全面介绍了嵌入式Linux产品应用开发的方方面面,包括应用基础、文件和I/O操作、进程和线程、外围硬件接口编程、串口编程、网络编程、Qt编程和Shell编程. 本书由浅入深、结构合理、图文并茂,可操作性强,读者可跟着一步步进行操作和学习,非常适合 嵌入式Linux开发初级工程师及准备往嵌入式Linux方向发展的电子工程师和单片机工程师使用,也可作为高校非计算机专业高年级学生学习嵌入式Linux的参考教材.
本书是运维领域的璀璨明珠,是一本有思想的运维技术干货集! 技术层面,作者从高性能网站架构、服务器安全和监控、网络分析、自动化运维和游戏运维4个方向,梳理和总结了105个棘手的运维难题,结合自己 10余年的工作经验,对这些问题给出了经过实践检验的解决方案,可直接应用到生产环境中。除解决方案外,还详细讲解了每个问题背后涉及的技术原理(共涉及 21种技术)。 思想层面,本书不仅有作者对运维服务体系的深度思考,而且还有作者的主动运维思维和宏观的运维格局,更有作者解决具体运维问题的思维方法。 通过本书,不仅能解决具体的技术难题,提高工作效率,而且还能增强技术功底,提升工作能力。更重要的是,它能让我们明白,技术不是运维的终*追求,思想才是运维人员应该毕生修炼的目标! 具体内容方面,本书
《Linuz Qt GUI开发详解--基于Nokia Qt SDK》由李彬编著,本书详细介绍了Linux-FQt用户界面开发的重要的核心知识。全书共分为5章20节,涉及Qt基础控件的使用,开发工具的使用,信号与槽机制的探秘,GUl换肤和多国语言支持的实现,Qt事件驱动机制,多进程和多线程编程技术, Qt串口编程技术,QtWebKit模块的高级编程技术,浏览器JavaScript对象扩展技术,QWebPlugin-Factory的使用,基于NPAPI标准的跨浏览器插件开发技术,MySQL和SQLife数据库在Qt中的应用及XML解析技术,QNetwork AccessManager及其相关类的使用等。《工程师经验手记·Linuz Qt GUI 开发详解:基于Nokia QtSDK》在编写相关知识点时尽量通过例子来演示 知识点的应用,尽量用通俗易懂的话来阐述知识点,每一章都会通过项目实例来强化读者对该章知识点的掌握和提高读者的实战水平及经验。 《Linuz Qt GUI开发详解--基于Nok