会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
osold
博客园
|
首页
|
新随笔
|
新文章
|
联系
|
订阅
|
管理
1
2
下一页
2015年5月15日
字符串包含算法
摘要: 假设有一个字符串a= "abcdefghijk"另外一个字符串b = "aegf"查看a中是否包含b中的所有字母。第一个方案是用一个int类型的变量,清零。然后用一个位代表一个字母,遍历a字符串,遇到字母把相应位置1;然后遍历第二个字符串,遇到字母把相应位清0.这样时间复杂度为o(a.size() ...
阅读全文
posted @ 2015-05-15 13:57 osold
阅读(343)
评论(0)
推荐(0)
编辑
2013年9月4日
程序员屌丝的思考
摘要: 其实在任何领域,都有著名的28定律。20%的人赚80%的钱。我们总看到媒体上成天炒作的什么烧饼王,什么奶茶王。甚至还有个乞讨王。我们可以逆向思维一下。为什么会炒作呢。就是因为这个行业不容易成功。有一两个成功的,所以就人们都觉得了不起了。但是我们要明白那个领域的竞争已经很激烈了。其实我们想要在竞争中获得更多的蛋糕。就需要找到一种竞争。能够发挥自己的优势,然后才能在竞争中获胜。然后接下来就是主要分析自己的优势提现在什么地方。1.由于看过很多书,知道很多故事思想,所以思维比较活。很多问题都能找出一些比较好的解决方案。这个应该是一种解决问题的能力。2.关注时事,有不错的数学基础,所以能够在分析问题的时
阅读全文
posted @ 2013-09-04 13:06 osold
阅读(195)
评论(0)
推荐(0)
编辑
2013年8月3日
运算符优先级问题
摘要: a?b:c运算符优先级相当的低,使用的时候一定要好好注意,今天因为这个恶心的问题调试了整整两天。
阅读全文
posted @ 2013-08-03 22:18 osold
阅读(170)
评论(0)
推荐(0)
编辑
2013年7月26日
glew初始化问题
摘要: 在使用fbo的过程中每次一调用就会出现段错误。检查了程序所有部分。。最后使用glext库解决了这个问题。最后经过上网发现glew使用的时候必须被初始化。具体初始化的方法为#include #include ...glutInit(&argc, argv);glutCreateWindow("GLEW Test");GLenum err = glewInit();if (GLEW_OK != err){ /* Problem: glewInit failed, something is seriously wrong. */ fprintf(stderr, "
阅读全文
posted @ 2013-07-26 15:41 osold
阅读(1436)
评论(0)
推荐(0)
编辑
2013年1月7日
mesa阅读第一天
摘要: 我们先从main开始,这应该是一个正确的思路。在这里面我个人感觉从debug开始。试一下。打开debug.h文件,最上面的注释是一段版权说明。略过。接下来我们看到一个宏判断。并且下面那几个函数都是在别的地方定义的。所以我有种找错地方的感觉。研究一下那几个函数是在哪定义的。在config.h中我们看到这样#define _HAVE_FULL_GL 1,这说明config会比debug运行更早。所以改变目标。直达config.h。最上面定义了一堆最大缓存的值。这个很有意思。好像我们对opengl的所有配置都可以从这里来实现。等水平深了这个东西需要好好研究一下。看完之后回到我们的debug。继续寻找
阅读全文
posted @ 2013-01-07 11:11 osold
阅读(412)
评论(0)
推荐(0)
编辑
2013年1月6日
gpu绘制管线
摘要: 摘自gpu编程之阳春白雪与下里巴人。在实时计算机图形学一书中,将图形绘制管线分为三个主要阶段,应用程序阶段,几何阶段,光栅阶段。应用程序阶段,使用高级编程语言进行开发,主要和cpu内存打交道。诸如碰撞检测,场景图建立。空间八叉数更新。视锥裁剪等经典算法都在此阶段执行。在该阶段的末端。几何体数据几何体数据(顶点坐标、法向量、纹理坐标、纹理等)通过数据总线传送到图形硬件(时间瓶颈) ;数据总线是一个可以共享的通道,用于在多个设备之间传送数据;端口是在两个设备之间传送数据的通道;带宽用来描述端口或者总线上的吞吐量,可以用每秒字节(b/s)来度量,数据总线和端口(如加速图形端口,Accelerated
阅读全文
posted @ 2013-01-06 10:38 osold
阅读(343)
评论(0)
推荐(0)
编辑
2013年1月5日
mesa导读
摘要: 打开mesa代码文件夹。需要声明的是,我看的是7.0.3的代码。drivers应该是驱动相关代码。glapi里面是opengl的实现代码。但是有很多是空的。main里面主要实现的是opengl状态管理机。math是数学工具类。不足为惧。ppc对应的是标准委员会什么的东西。不懂。接下来shader这是着色器的实现。swrast这个是他的软实现。tnl是光照变换处理过程。所以总结起来。我们需要有四个重点看的文件夹。那就是main,glapi,swrast,tnl。
阅读全文
posted @ 2013-01-05 17:55 osold
阅读(336)
评论(0)
推荐(0)
编辑
2012年12月27日
用操作系统来思考人生
摘要: 如果把人比作一个操作系统的话,我们需要先明白我们的底层硬件是什么。据估计,我们的底层硬件就是我们的身体,而所谓的神经系统也无非就是写总线神马的玩意儿。然后驱动呢?我觉得就是一些底层的性格,虽然我们无法直接操作,但是和我们的思维息息相关的一些东西。而在上面的所有东西,就是我们的思维,应该就是操作系统真正的内核,负责处理所有的事件和思考能力的调度。我们在成长过程中所学的所有知识和经验,就是我们的应用软件。有了这个架构就很明显了。例如有人拍了你一下。然后你的皮肤感应到这个动作。于是产生了一个中断请求。这个中断通过神经系统到达cpu也就是我们的大脑。大脑就会停下来,思考一下这个中断应该如何处理。根..
阅读全文
posted @ 2012-12-27 09:55 osold
阅读(214)
评论(0)
推荐(0)
编辑
2012年12月20日
关于地址那些事
摘要: 摘自http://blog.csdn.net/fudan_abc/article/details/1918974;与咱们最贴近的是一个“用户虚拟地址”,是用户空间所能看到的地址,每个进程都有这么一个虚拟地址空间。然后是耳熟能详的“物理地址”,在处理器和系统内存之间使用的地址。接着是“总线地址”,是处理器在总线上所看到的地址。第四个是“内核逻辑地址”,这些地址组成了常规的内核地址空间,映射了大部分乃至全部的系统主内存,被视为物理地址使用,在大多数的体系结构中,逻辑地址及其所关联的物理地址之间的区别,仅仅在于一个常数的偏移量,在拥有大量内存的32位机上,仅通过逻辑地址未必能够寻址所有的物理内存。最
阅读全文
posted @ 2012-12-20 15:15 osold
阅读(140)
评论(0)
推荐(0)
编辑
2012年12月14日
window下用opengl+qt程序
摘要: 第一步肯定是先建立一个qt项目。建立一个空的其他项目gltest。然后在gltest。pro文件中加入对opengl的支持QT +=opengl;第二部就开始建立自己的头文件,也叫GLWidget.h吧。我参考的是这篇文章。所以代码就先不往过贴了。把代码贴进去,oh,幸亏还有错误。不然这篇文章就写不下去了。我们可以把这篇文章的性质变成错误排除。那么先看第一个错误。D:\test\qttest-build-desktop-Qt_4_8_1_for_Desktop_-_MSVC2008__Qt_SDK____\..\qttest\glwidget.cpp:102: 错误:C3861: “gluPe
阅读全文
posted @ 2012-12-14 15:28 osold
阅读(966)
评论(0)
推荐(0)
编辑
1
2
下一页
公告