自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (26)
  • 收藏
  • 关注

转载 未来计算的目标

1. 可伸缩性:创造一种软件和硬件的体系结构,可以扩展一百万倍。即:某个具体应用的存储和处理能力可以通过添加资源而自动地提高一百万倍,也就是说处理同一问题速度提高一百万倍或用同样的时间可以处理规模扩大一百万倍的问题。(这里,“自动地”是指:除了加入资源,用户用不着做任何其他干预—如重新编程,对系统配置进行调整……) 2.通过图灵测试能力: 建造计算机系统,其通过图灵测试的概率至少为

2014-05-11 21:45:10 655

转载 一个老工程师给年轻工程师的十大忠告

1. 好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手! 

2014-05-10 14:33:11 823

原创 IOMMU简述-上篇

IOMMU的全称是Input/Output Memory Management Unit,即输入/输出内存管理单元,其主要功能链接DMA-capable I/O总线和系统内存。传统的内存管理单元MMU,是将CPU-visible的虚拟地址转换成物理地址,而IOMMU则是将Device-visible的虚拟地址转换成物理地址。例如:GART(Graphics Address Remappin

2014-04-24 20:50:20 15155 1

翻译 如何调试Suspend-Resume相关的Bug

在Linux系统中,Suspend-Resume是一个复杂的过程,其涉及到BIOS、Kernel、Graphic驱动以及相关的应用程序。本文将介绍如何调试Suspend-Resume相关Bug,如何缩小引起Suspend-Resume失败的范围。在此之前,我们必须Kill所有使用/proc/acpi/event的进程,例如:gnome-power-manager。1.        运行:

2014-04-20 17:30:39 1248

原创 Android下编译库文件jar包并在应用中调用

1. 首先把欲编译成jar包的源代码工程放入Android的源码树中,并在工程主目录里创建.xml文件,名字可以任意,这里假设为mylib.xml,并且假设欲编译的jar包名为mylib.jar,它的内容如下: name="com.mathstar.mylib"  file="/system/framework/mylib.jar" /> 这里的name属性任

2013-12-08 19:59:31 1714

原创 Alan Turing的一生

1912年6月23日,出生于英国伦敦。1931年-1934年,在英国剑桥大学国王学院学习。1932年-1935年,研究量子力学、概率论和逻辑学。1935年,由于独立发现中心极限定理,获Smith奖,年仅23岁被选为剑桥大学国王学院院士。1936年,研究可计算理论,提出“图灵机”的构想。1936年-1938年,主要在美国普林斯顿大学做博士研究,涉及逻辑学、代数和数论等领域。1938年-1939年,返

2012-05-09 22:17:56 4642

转载 读《调试九法:软硬件错误的排查之道》

规则1:理解系统阅读手册:手册里有正确使用系统的方法。仔细阅读每个细节:出现问题的地方可能就在你不感兴趣的那一章,不要惧怕手册的厚度。掌握基础知识:知道什么是正常的,才能知道什么是错误的。了解工作流程:有助于定位bug。了解工具:调试工具能干什么,不能干什么。查阅细节:去阅读手册,而不是猜测或回想手册上的内容。规则2:制造失败制造失败:目的是为了观察它,找到

2012-03-04 22:16:53 1954 1

原创 多核上的DPC

OS会针对每个CPU Core,生成一个DPC队列。因此仅仅对某个线程提高IRQL,并不会屏蔽其他核上的线程调度; 如果要实现多核上同步,唯一的方法就是使用自旋锁。自旋锁可以避免你自己的线程在多核上同时执行,但是不能保证其他的系统线程和你使用一样的自旋锁,所以自旋锁不能完全保证。

2012-03-04 13:05:24 735

原创 如何使用Windbg调试User Mode代码

使用指令“!Process”查找当前系统正在运行的进程,从进程列表中找到我们需要debug的进程,并记下它的PID; 切换至所需进程:使用指令“.Process /i”,该指令会导致,当系统切换进程空间到指定进程时,Windbg会break-in;当Windbg进程被break住之后,使用“.reload /user”加载当前进程的程序symbol; 此时,用户可以下所需的断点;

2012-03-01 18:11:07 1177

转载 走出问题的乌托邦

这是《你的灯还亮着吗?》的序言,读后,觉得写得很好,就转载过了!当然,这本书内容更精彩,小小一本册子,或许你花两三个小时的时间,就能将其读完,但是,收获就看你自己怎么觉得啦!            也许你是一名普通的程序员或者一个底层的职员,你的工作就是保质保量地完成上级交给你的任务,你有时会困惑为什么你努力的工作始终得不到上级的赏识和提拔。也许你是一名软件开发小组的负责人或者领导

2012-02-27 22:40:49 523

原创 腾讯其实不是“狗日的”

     《计算机世界》的《“狗日的”腾讯》,最近在互联网界引起了轩然大波。大家都将目标直指腾讯,说其多么多么无耻的抄袭,多么多么的扼杀创新。但是,与其不停地谩骂腾讯,为什么大家不静下来,好好考虑一下腾讯如此疯狂掠夺的深层原因呢?      腾讯是1998年成立,当时的小QQ是从ICQ抄袭而来的。马化腾可以说是很有眼光的企业家,在那个互联网并不景气的时候,一眼能看出即时通讯的潜在市场,不得不说是一种高瞻远瞩。腾讯能够如此强大地攻城掠地,全依靠QQ这个平台。如果没有QQ平台,腾讯的其他产品可以忽略不计。QQ拥

2010-08-01 17:00:00 1186

OpenGL Programming Guide 8th Edition

OpenGL Programming Guide 8th Edition,OpenGL Programming Guide 8th Edition

2018-03-20

Vulkan Programming Guide

Vulkan是用于图形和计算设备的编程接口。 Vulkan设备通常由处理器和多个固定功能硬件块组成,以加速在图形和计算中使用的操作。设备中的处理器通常是一个非常宽的多线程处理器,因此Vulkan中的计算模型主要基于并行计算。 Vulkan设备还可以访问可能与您的应用程序运行所在的主处理器共享或可能不共享的内存。 Vulkan也暴露了这个内存给你。 Vulkan是一个显式的API。也就是说,几乎一切都是你的责任。驱动程序是一个软件,它接收形成API的命令和数据,并将它们转换为硬件可以理解的东西。在较旧的API(如OpenGL)中,驱动程序将跟踪许多对象的状态,为您管理内存和同步,并在运行时检查应用程序中的错误。这对开发人员非常有用,但是一旦应用程序调试和运行正常,就会浪费宝贵的CPU时间。 Vulkan通过将几乎所有状态跟踪,同步和内存管理置于应用程序开发人员手中,并通过对必须启用的层委派正确性的检查来解决这个问题。他们在正常情况下不参与您的申请的执行。 由于这些原因,Vulkan既非常冗长又有点脆弱。你需要做大量的工作,以获得Vulkan运行良好,不正确的使用API​​通常会导致图形损坏,甚至程序崩溃,在旧的API,你会收到一个有用的错误消息。作为交换,Vulkan提供对设备的更多控制,一个干净的线程模型,以及比它取代的API更高的性能。 此外,Vulkan被设计为不仅仅是一个图形API。它可以用于异构设备,如图形处理单元(GPU),数字信号处理器(DSP)和固定功能硬件。功能分为粗粒度,宽泛重叠的类别。当前版本的Vulkan定义了传输类别,用于复制数据;计算类别,用于在计算工作负载上运行着色器;和图形类别,其中包括光栅化,图元装配,混合,深度和模板测试,以及图形编程人员熟悉的其他功能。

2018-03-20

现代体系结构的优化编译器

介绍对现代体系结构的编译器进行优化的方法,理论基础是基于循环依赖的。分析基于依赖的变换的正确性论述和依赖测试的详细过程。剖析怎样扩展依赖去处理循环嵌套中的控制流以及跨越整个程序的过程。本书还讨论怎样能用依赖来回答现代计算机系统编译中的众多重要问题,包括支持不同类型体系结构(例如,向量、多处理器、超标量)的并行化,存储层次结构的编译器管理,带指令级并行性的机器的指令调度。最后,介绍一些不大为人熟知的应用,如硬件设计、数组语言实现以及消息传递系统的编译。

2018-03-20

种子:对话移动互联网新生代

想知道豆瓣和雕刻时光怎样互动?豌豆荚手机精灵的团队如何创业?宠物约会怎样诞生?或是我们熟悉的街旁、知乎、以及伟大的唐茶计划是如何开始的?那么快展开这本有关移动互联网创业的对话录吧!作为国内最为出色的新锐blog媒体,爱范儿精心挑选了在移动互联网业内颇具影响力的17支新生代创业团队——雕刻时光,街旁,知乎、泼墨书房,天使湾,丁香园等等,通过轻松的对话,让创业者们回忆并讲述了自己将梦想变成现实的美妙过程。这些年轻人用自己的实际行动,为有梦的人插上翅膀。

2014-10-23

编程高手箴言

涵盖了从认识CPU、Windows运行机理、编程语言的运行机理,到代码的规范和风格、分析方法、调试方法和内核优化,内有作者对许多问题的认知过程和透彻的分析,以及优秀和精彩的编程经验.

2014-10-23

可变目标C编译器 设计与实现

非常推崇这本书,教你如何实现一个工业级的编译器。 本书系统地介绍了可变目标ANSIC编译器1cc的设计方法和实现技术。1cc是一个实用的编译器,能够不同的目标机器生成代码。本书结合1cc的具体实现,详细讲术了存储管理、符号表、词法分析、语法分析、中间代码生成、优化、目标代码产生等编译程序的各个部分。全书共分19章,在各章之后均附有练习。 与其他介绍编译技术的教材相比,本书特色鲜明,实用性强,适合作为高等院校计算机专业的编译原理课程的教材或参考书,对从事编译相关工作的技术人员也有很好的参考价值。">非常推崇这本书,教你如何实现一个工业级的编译器。 本书系统地介绍了可变目标ANSIC编译器1cc的设计方法和实现技术。1cc是一个实用的编译器,能够不同的目标机器生成代码。本书结合1cc的具体实现,详细讲术了存储管理、符 [更多]

2014-10-23

10部算法经典著作的合集

Data Structures and Algorithm Analysis in C (C) 1993, The Benjamin/Cummings Publishing Co., Inc. All rights reserved. Data Structures, Algorithms, and Program Style Using C (C) 1988, PWS Kent Publishing Co. All rights reserved. Data Structures: From Arrays to Priority Queues (C)1985, Wadsworth, Inc. All rights reserved. Fundamentals of Data Structures (C) 1976, 1983 Computer Science Press, Inc. All rights reserved. Information Retrieval: Data Structures and Algorithms (C)1992, PTR Prentice-Hall, Inc. All rights reserved. Introduction to Algorithms (C) 1990, The Massachusetts Institute of Technology. All rights reserved. Practical Data Structures in C++ (C) 1993, John Wiley & Sons, Inc. All rights reserved. Reliable Data Structures in C (C) 1985, Plum Hall Inc. All rights reserved. Data Structures and Algorithms (C) 1983, Bell Laboratories, Inc. All rights reserved. Articles from Dr. Dobb's Journal (C) 1998, Miller Freeman, Inc. All rights reserved.

2014-10-23

3D计算机图形学003

本书介绍了3D计算机图形学的基础知识,包括计算机图像的概念和实现,从“计算机图形学的数学基础”到“表示和绘制”,再到“基于图像的绘制和照片建模”,最后讨论了计算机动画技术(包括连接结构、碰撞检测、粒子动画等)。此外,本书还涵盖了计算机图形学的新进展,包括高级辐射度方法、动画、预计算技术等。

2012-08-19

3D计算机图形学002

本书介绍了3D计算机图形学的基础知识,包括计算机图像的概念和实现,从“计算机图形学的数学基础”到“表示和绘制”,再到“基于图像的绘制和照片建模”,最后讨论了计算机动画技术(包括连接结构、碰撞检测、粒子动画等)。此外,本书还涵盖了计算机图形学的新进展,包括高级辐射度方法、动画、预计算技术等。

2012-08-19

3D计算机图形学

本书介绍了3D计算机图形学的基础知识,包括计算机图像的概念和实现,从“计算机图形学的数学基础”到“表示和绘制”,再到“基于图像的绘制和照片建模”,最后讨论了计算机动画技术(包括连接结构、碰撞检测、粒子动画等)。此外,本书还涵盖了计算机图形学的新进展,包括高级辐射度方法、动画、预计算技术等。

2012-08-19

[计算机图形学].(美国)Peter.Shirley

本书是国外高校采用率很高的计算机图形学教材,共分为26章,全面系统地讲解了计算机图形学的基本概念和相关技术。书中先介绍图形学相关的数学知识,然后依次讲解图形学的光栅算法、三三维观察、隐藏面消除、光照、纹理、绘制等算法和理论,并介绍可视感知、计算机动画、基于图像的绘制、可视化以及构建交互式图形应用等。 舍利,计算机图形学领域世界知名的学者,尤以光线跟踪方面的研究闻名世界,曾担任ACM Transactions on Graaphics和Jouranl of Graphics Tools副主编,多次担任sIGGRAPH程序委员会委员。他是犹他大学计算机科学系教授。在伊利诺伊大学厄巴纳·尚佩恩分校获得计算机科学博士学位。除本书之外,他还著有Realistic Ray Tracing。

2012-08-19

Imperfect C++ part6

汇集实用的C++编程解决方案,C++虽然是一门非凡的语言,但并不完美。Matthew Wilson使用C++十年有余,其间发现C++存在一些固有的限制,需要一些颇具技术性的工作进行弥补。本书不仅指出了C++的缺失,更为你编写健壮、灵活、高效、可维护的代码提供了实用的技术和工具。Wilson向你展示了如何克服C++的复杂性,穿越C++庞大的范式阵列。夺回对代码的控制权,从而获得更理想的结果。

2011-08-20

Imperfect C++ part5

汇集实用的C++编程解决方案,C++虽然是一门非凡的语言,但并不完美。Matthew Wilson使用C++十年有余,其间发现C++存在一些固有的限制,需要一些颇具技术性的工作进行弥补。本书不仅指出了C++的缺失,更为你编写健壮、灵活、高效、可维护的代码提供了实用的技术和工具。Wilson向你展示了如何克服C++的复杂性,穿越C++庞大的范式阵列。夺回对代码的控制权,从而获得更理想的结果。

2011-08-20

Imperfect C++ part4

汇集实用的C++编程解决方案,C++虽然是一门非凡的语言,但并不完美。Matthew Wilson使用C++十年有余,其间发现C++存在一些固有的限制,需要一些颇具技术性的工作进行弥补。本书不仅指出了C++的缺失,更为你编写健壮、灵活、高效、可维护的代码提供了实用的技术和工具。Wilson向你展示了如何克服C++的复杂性,穿越C++庞大的范式阵列。夺回对代码的控制权,从而获得更理想的结果。

2011-08-20

Imperfect C++ part3

汇集实用的C++编程解决方案,C++虽然是一门非凡的语言,但并不完美。Matthew Wilson使用C++十年有余,其间发现C++存在一些固有的限制,需要一些颇具技术性的工作进行弥补。本书不仅指出了C++的缺失,更为你编写健壮、灵活、高效、可维护的代码提供了实用的技术和工具。Wilson向你展示了如何克服C++的复杂性,穿越C++庞大的范式阵列。夺回对代码的控制权,从而获得更理想的结果。

2011-08-20

Imperfect C++ part2

汇集实用的C++编程解决方案,C++虽然是一门非凡的语言,但并不完美。Matthew Wilson使用C++十年有余,其间发现C++存在一些固有的限制,需要一些颇具技术性的工作进行弥补。本书不仅指出了C++的缺失,更为你编写健壮、灵活、高效、可维护的代码提供了实用的技术和工具。Wilson向你展示了如何克服C++的复杂性,穿越C++庞大的范式阵列。夺回对代码的控制权,从而获得更理想的结果。

2011-08-20

Imperfect C++ Part1

汇集实用的C++编程解决方案,C++虽然是一门非凡的语言,但并不完美。Matthew Wilson使用C++十年有余,其间发现C++存在一些固有的限制,需要一些颇具技术性的工作进行弥补。本书不仅指出了C++的缺失,更为你编写健壮、灵活、高效、可维护的代码提供了实用的技术和工具。Wilson向你展示了如何克服C++的复杂性,穿越C++庞大的范式阵列。夺回对代码的控制权,从而获得更理想的结果。

2011-08-20

Real Time Rendering(实时计算机图形学) Part3

高性能显卡的出现,使得现行的游戏更加流畅,更加逼真。硬件加速提高了3D图像处理的效率。隐藏在3D硬件加速背后的故事,对于当今的游戏设计者来说,只知道其然,而不知其所以然。但是,这本书填充此空白,其详细介绍了主流GPU的3D加速设计原理,对于3D游戏设计者来说,能够更好地理解3D加速器的内部实现

2010-04-02

Real Time Rendering(实时计算机图形学) Part2

高性能显卡的出现,使得现行的游戏更加流畅,更加逼真。硬件加速提高了3D图像处理的效率。隐藏在3D硬件加速背后的故事,对于当今的游戏设计者来说,只知道其然,而不知其所以然。但是,这本书填充此空白,其详细介绍了主流GPU的3D加速设计原理,对于3D游戏设计者来说,能够更好地理解3D加速器的内部实现

2010-04-02

Real Time Rendering (实时计算机图形学) Part1

高性能显卡的出现,使得现行的游戏更加流畅,更加逼真。硬件加速提高了3D图像处理的效率。隐藏在3D硬件加速背后的故事,对于当今的游戏设计者来说,只知道其然,而不知其所以然。但是,这本书填充此空白,其详细介绍了主流GPU的3D加速设计原理,对于3D游戏设计者来说,能够更好地理解3D加速器的内部实现

2010-04-02

Programming the Microsoft Windows Driver Model 2th

本书是学习Windows驱动不可多得的书籍,相对于本书第一版,第二版做了不少的改进。很适合想深入研究Windows内核编程的程序员

2009-08-28

How Debugers Work

这是世面上说有的一本介绍调试器实现的书,作者分析了多种调试器技术,详细讲述了调试器的原理。本书对于系统程序员,尤其是对于调试器开发人员,是不可多得的书籍。

2009-08-25

漫谈Linux兼容内核(Windows 内核情景分析的原稿)

详细介绍了Window内核机制, 旨在开发基于Linux的兼容性内核。本材料的大部分内容是《windows内核情景分析》的草稿。内容详实,作者分析透彻

2009-07-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除