本书讲述了与PCI及PCI Express总线相关的最基础的内容,并介绍了一些必要的、与PCI总线相关的处理器体系结构知识,这也是本书的重点所在。深入理解处理器体系结构是理解PCI与PCI Express总线的重要基础。 读者通过对本书的学习,可超越PCI与PCI Express总线自身的内容,理解在一个通用处理器系统中局部总线的设计思路与实现方法,从而理解其他处理器系统使用的局部总线。本书适用于希望多了解一些硬件的软件工程师,以及希望多了解一些软件的硬件工程师,也可供电子工程和计算机类的研究生自学参考。
本书是一本将理论与实践有机结合的计算机工作原理实践指南,包含41个实践项目,涵盖了从电路设计到代码编写的广泛主题。通过本书,读者将实践构建数字电路、设计一个猜谜游戏、将十进制数字转换为二进制、检查虚拟内存使用情况、运行自己的Web服务器等,从引人入胜的实践项目中学习如何像软件工程师一样思考、用数据描述真实世界的概念,使用欧姆定律和基尔霍夫定律分析电路的特性,以及如何像计算机一样思考、一步一步地在脑海中执行一个程序。
计算机软件界大的变迁是从串行编程转向并行编程。其中,CUDA取得了巨大的进展。本书特别针对CUDA学习者而写。在保证程序正确性前提下,侧重于程序性能的调优。对于没有CUDA或者并行编程的任何经验的读者随着本书的深入,将越来越可以胜任CUDA的编程工作,帮助你从不知晓并行编程的程序员成长为能够全方位发掘CUDA潜力的专家。对已经熟悉并行编程概念和CUDA的程序员,本书包含丰富的学习材料,专设章节详细讨论GPU的体系结构,包括新的费米和开普勒硬件,以及如何将它们的效能发挥到极致。任何可以编写C或C++的程序员都可以在经过几个小时的简单训练后编写CUDA程序。通过本书的完整学习,你将从仅能得到数倍程序加速的CUDA编程新手成长为数十倍加速的高手。
本书提供了关于适应度函数、自动化架构治理和演进式数据的技术、知识和技巧。本书分为三个部分:第一部分包括定义演进式架构机制的章节 介绍团队如何使用技术和工具来构建适应度函数、部署管道以及其他管理和演进软件项目的机制;第二部分包括围绕耦合、复用和其他相关结构考虑因素的架构风格和设计原则,以帮助读者实现清晰的长期演进;第三部分探讨了第一部分中介绍的工程实践与第二部分中的结构考虑因素的交叉点。
本书介绍了一系列可用于构建可扩展系统的软件架构方法和分布式技术。本书内容分为四部分:第一部分是基础知识,包括实现可扩展系统的基本机制、分布式系统的基本特征以及并发编程的简介;第二部分重点介绍如何扩展处理请求的能力,涵盖通过诸多架构方法(更多的计算资源、负载均衡、分布式缓存、异步消息以及基于微服务的架构)来扩展系统;第三部分介绍扩展数据层的相关知识,这是分布式系统理论最突出的地方;第四部分介绍用于大规模处理流式事件的架构和技术。
本书以Apache RocketMQ 4.9.5(编写本书时最新的4.x版本)为基础,从Apache RocketMQ 的实际使用、原理剖析,大规模消息集群下企业级落地的实践以及所面临的挑战,逐一由浅入深地进行讲解。 全书分3篇,共16章。基础篇包含第1~4章,主要讲解Apache RocketMQ 入门以及如何掌握Apache RocketMQ 的基础使用。原理篇包含第5~12章,主要讲解了消费原理、负载均衡原理、顺序消息原理等核心的RocketMQ部分。进阶篇包含第13~16章,主要讲解消息幂等、双活设计等进阶为架构师必须掌握的内容。讲解过程中抛弃了传统的源码解析这种较枯燥的手段,而是更多地利用以下方式帮助读者更快、更轻松地接受Apache RocketMQ的原理:通过近百张原创的手绘图,形象地描述Apache RocketMQ 的运作过程、原理;通过与Kafka、RabbitMQ等成熟的消息中间件产品做对比的方式,有助于读者对相关知识触类旁通,举一反