| 图书 | LINUX 用户态 C 语言编程原理与实践 |
| 内容 | 编辑推荐 Linux用户态编程已经变成了服务器、云平台、AI开发者推荐的技能之一。通过本书,我们将为读者提供全面的指导和实用的知识,帮助读者在Linux平台上进行高效的C语言编程。作者肖威轩老师有多年KDE开发经验,用生动形象的方式,系统并深入地阐述了C语言程序设计入门、Linux操作系统的构造,以及系统级API的使用方法,让广大读者能够很好地掌握并灵活使用C语言进行Linux 开发。因此,编辑认为本书是开源项目开发的相关从业者很值得拥有的一本书。 内容推荐 Linux操作系统上的用户态编程是通过系统调用提供的接口,将原本需要在Linux内核中或者对Linux内核进行多次系统调用才能实现的功能,放到内核之外来实现,从而保证内核的稳定性,获得更强的可拓展性,并且可以将Linux内核的传染性开源协议隔离。 全书共分9章,第1、2章从用户态与内核态的基本概念入手,简要介绍C语言标准库编程以及各种C语言标准库。第3章深入介绍系统调用的概念和计算机架构、特权级与硬件资源访问的关系,以及内核中系统调用的处理方式。第4章涵盖了系统调用与C语言标准库的关系,介绍如何基于Linux系统调用实现C语言标准库。第5章深入介绍了Linux系统用户态驱动API的使用和分析,包括Userspace I/O (UIO)接口的使用和VFIO等用户态驱动接口的使用。第6~9章涵盖了高性能网卡Linux用户态驱动分析、用户态文件系统FUSE分析、用户态线程——协程和基于Android HAL硬件抽象层的用户态驱动,介绍了操作系统中各个关键组件在用户态中的实现方法。 本书主要适合中高级应用程序开发者、内核开发者、Linux云服务器开发者阅读,有助于读者深入了解Linux操作系统及其编程的内部机制和实践技巧。本书提供了全面的指导和实用的知识,也可作为初学者的自学参考书。 目录 前言 第1章Linux操作系统概述/ 1.1用户态与内核态/ 1.1.1硬件特权级、运行模式(x86)/ 1.1.2Linux的用户态与内核态/ 1.2用户态的优势/ 1.2.1用户态的速度优势/ 1.2.2受限的高级功能(中断、DMA)/ 1.2.3更优的内核稳定性/ 1.2.4高吞吐量网络设备/ 1.2.5内核态的copyleft开源协议/ 第2章C语言程序设计与标准库编程/ 2.1桌面Linux使用的glibc简介/ 2.2其他C语言标准库/ 2.2.1uClibc/ 2.2.2musl libc/ 2.2.3BSD libc/ 2.2.4Android Bionic/ 第3章系统调用与Linux系统调用的实现/ 3.1什么是系统调用/ 3.1.1计算机架构、特权级与硬件资源访问/ 3.1.2内核中的系统调用/ 3.1.3系统调用open的实现/ 3.2Linux系统调用的实现(内核态)/ 3.2.1系统调用的通用处理/ 3.2.2x86架构的系统调用实现/ 第4章系统调用与C语言标准库/ 4.1如何基于Linux系统调用实现C语言标准库/ 4.1.1实现标准库的原理与方法/ 4.1.2glibc中的标准库实例/ 4.2基于Linux sysfs在用户态下编写程序控制硬件/ 4.2.1什么是Linux sysfs/ 4.2.2使用C语言标准库文件读写函数控制键盘LED/ 4.2.3使用标准库中提供的系统调用或Shell脚本调节屏幕背光/ 第5章Linux系统用户态驱动API/ 5.1用户态驱动与内核态驱动/ 5.1.1内核中的驱动与字符设备驱动/ 5.1.2内核中的块设备驱动/ 5.1.3内核中的网络设备驱动/ 5.1.4用户态驱动的原理/ 5.1.5在用户态实现驱动的优劣/ 5.2用户态驱动接口Userspace I/O(UIO)/ 5.2.1硬件设备的内存映射/ 5.2.2UIO的用户态API/ 5.2.3基于UIO实现的PCI设备用户态驱动/ 5.3用户态驱动接口VFIO/ 5.3.1VFIO与硬件无关IOMMU的重映射/ 5.3.2使用VFIO实现PCI设备的用户态驱动/ 第6章Linux系统用户态高性能网卡驱动分析/ 6.1Intel网卡用户态驱动的架构/ 6.2Intel网卡用户态驱动ixy的核心实现/ 第7章Linux系统用户态文件系统FUSE分析/ 7.1FUSE在内核中的实现模块/ 7.2FUSE在用户态中的API与基础示例/ 第8章用户态线程——协程/ 8.1Linux内核中线程与进程切换的实现/ 8.1.1线程与进程切换的算法与原理/ 8.1.2线程与进程上下文切换实现/ 8.2Linux环境用户态中含栈协程的实现/ 8.2.1协程的上下文切换实现/ 8.2.2基于用户态的栈实现协程状态 / 第9章基于Android HAL硬件抽象层的用户态驱动/ 9.1Android HAL简介/ 9.1.1Android HAL的作用/ 9.1.2Android HAL的分类/ 9.2HAL中的内核态隔离/ 9.2.1HAL中灯光Light的实现分析/ 9.2.2HAL中内核态部分的实现/ 9.2.3HAL实现内核态GPL隔离的原理/ |
| 标签 | |
| 缩略图 | ![]() |
| 书名 | LINUX 用户态 C 语言编程原理与实践 |
| 副书名 | |
| 原作名 | |
| 作者 | 肖威轩 |
| 译者 | |
| 编者 | |
| 绘者 | |
| 出版社 | 机械工业出版社 |
| 商品编码(ISBN) | 9787111754855 |
| 开本 | 16开 |
| 页数 | 396 |
| 版次 | 1 |
| 装订 | |
| 字数 | 615 |
| 出版时间 | 2024-07-01 |
| 首版时间 | |
| 印刷时间 | 2024-06-01 |
| 正文语种 | |
| 读者对象 | |
| 适用范围 | |
| 发行范围 | |
| 发行模式 | 实体书 |
| 首发网站 | |
| 连载网址 | |
| 图书大类 | 教育考试-考试-计算机类 |
| 图书小类 | |
| 重量 | |
| CIP核字 | |
| 中图分类号 | TP316.89;TP312.8 |
| 丛书名 | |
| 印张 | |
| 印次 | 1 |
| 出版地 | |
| 长 | |
| 宽 | |
| 高 | |
| 整理 | |
| 媒质 | |
| 用纸 | |
| 是否注音 | |
| 影印版本 | |
| 出版商国别 | |
| 是否套装 | |
| 著作权合同登记号 | |
| 版权提供者 | |
| 定价 | |
| 印数 | |
| 出品方 | |
| 作品荣誉 | |
| 主角 | |
| 配角 | |
| 其他角色 | |
| 一句话简介 | |
| 立意 | |
| 作品视角 | |
| 所属系列 | |
| 文章进度 | |
| 内容简介 | |
| 作者简介 | |
| 目录 | |
| 文摘 | |
| 安全警示 | 适度休息有益身心健康,请勿长期沉迷于阅读小说。 |
| 随便看 |
|
兰台网图书档案馆全面收录古今中外各种图书,详细介绍图书的基本信息及目录、摘要等图书资料。