05 2011 档案
硬盘坏道及后续的拯救工作
摘要:星期四海爷的三星移动硬盘挂掉了搞到人心惶惶的 我就拿了个HDTune来看看硬盘的参数,发现C5待重映射扇区数为5,软件的状态已经变为“警告”我就赶紧拿MHDD来弄一开始就遇到了一个问题 MHDD认不出硬盘解决办法就是在BIOS那里把硬盘的工作方式从ACHI改回为IDE,这样就能认了然后用MHDD扫发现有X和AMNF,怎么办呢,首先使用remap把一部分的X屏蔽掉了,但是还是存在一个AMNF,就只能用EREASE delay那个选项来弄,一轮过后,AMNF也消失了。然后就扫描,还是发现有一个X,又用remap,继续扫,再用erease一次,再扫。最后发现没问题了。然后分区,发现使用PQ分不了区, 阅读全文
posted @ 2011-05-30 01:22 30斤大番薯 阅读(614) 评论(0) 推荐(1)
VS2008 f:/dd/vctools/vc7libs/ship/atlmfc/src/mfc/dlgdata.cpp 错误调试
摘要:在VS2010 运行一个C++程序,出现下图错误:qQg平坦软件园qQg平坦软件园一看到这个,我头都大了。关键是 f:/dd/vctools/vc7libs/ship/atlmfc/src/mfc/dlgdata.cpp 这个路径根本在我计算机不存在。但是估计在安装目录下。qQg平坦软件园联想到最近更新到VS2010_sp1 ,但是发行包:qQg平坦软件园en_visual_c++_2010_sp1_redistributable_package_x86_651767qQg平坦软件园没安装,安装后再试,还是出错。qQg平坦软件园为了找到dlgdata.cpp 我用了下面的自己写的搜索工具,qQ 阅读全文
posted @ 2011-05-23 17:31 30斤大番薯 阅读(14220) 评论(1) 推荐(0)
多线程 GetThreadValue(int nSlot)问题
摘要:inline void* CThreadSlotData::GetThreadValue(int nSlot){ EnterCriticalSection(&m_sect); ASSERT(nSlot != 0 && nSlot < m_nMax); ASSERT(m_pSlotData != NULL); ASSERT(m_pSlotData[nSlot].dwFlags & SLOT_USED); ASSERT(m_tlsIndex != (DWORD)-1); if( nSlot <= 0 || nSlot >= m_nMax ) // 阅读全文
posted @ 2011-05-20 14:57 30斤大番薯 阅读(2863) 评论(1) 推荐(0)
关于线程同步与双队列性能(续)
摘要:4遇到的问题1、如何解决printf导致两个线程频繁切换?这个问题的解决方法在前面已经明确了,就是分配一个很大的输出缓冲区,在写到一定程度时再一次性用printf输出,避免printf的频繁调用。最好实在程序结束时输出统计和信息。2、在使用锁之后,是否会导致线程的频繁切换?这也是我的疑问,后来在windows上做了一个实验证明了不同的锁会引起不同的线程调度行为。DWORD WINAPI ThreadProc(LPVOID){charbuf[1000];LARGE_INTEGER li;for(inti = 0; i < 100; ++i){LOCK();//这是个宏,用于切换使用各种锁t 阅读全文
posted @ 2011-05-10 21:14 30斤大番薯 阅读(618) 评论(0) 推荐(0)
关于线程同步与双队列性能(转载)
摘要:关于线程同步与双队列性能1问题背景2第一种方式,共享队列3第二种方式,双队列4遇到的问题关于线程同步与双队列性能2009年7月12日星期日1问题背景这是在2008年3月学习多线程编程时遇到的一个问题。当时我写了一个代码片段,其中两个线程共享一个队列,一个线程往队列中写数据,而另一个线程从队列中读取数据。这是典型的生产者和消费者模型。但在这里并不适合使用semaphore来做。由于当时的我对多线程编程不太熟练,在线程中大量使用了printf输出调试信息,printf是典型的IO操作会引起线程的切换,所以打出来的信息也显示了线程切换十分频繁,几乎每一个数据入队列后,就立即被另一个线程抢占,并出队列 阅读全文
posted @ 2011-05-10 20:08 30斤大番薯 阅读(2324) 评论(0) 推荐(0)
什么是FrameBuffer?(转载)
摘要:什么是FrameBuffer?(转载)FrameBufferFrameBuffer 是出现在 2.2.xx 内核当中的一种驱动程序接口。这种接口将显示设备抽象为帧缓冲区。用户可以将它看成是显示内存的一个映像,将其映射到进程地址空间之后,就可以直接进行读写操作,而写操作可以立即反应在屏幕上。该驱动程序的设备文件一般是 /dev/fb0、/dev/fb1 等等。比如,假设现在的显示模式是1024x768-8 位色,则可以通过如下的命令清空屏幕:$ dd if=/dev/zero of=/dev/fb0 bs=1024 count=768在应用程序中,一般通过将 FrameBuffer 设备映射到进 阅读全文
posted @ 2011-05-08 16:39 30斤大番薯 阅读(2217) 评论(0) 推荐(0)
在OpenGL中使用整数类型纹理进行计算
摘要:Using Integer Textures in OpenGL for Calculation OpenGL could perfectly support integer textures through 'GL_EXT_gpu_shader4' and 'GL_EXT_texture_integer' extension. So we can do some GPGPU work with integer values in shaders. First of all, prepare the integer texture:view plaincopy 阅读全文
posted @ 2011-05-08 13:32 30斤大番薯 阅读(975) 评论(0) 推荐(0)
GLSL小结
摘要:GLSL修飾符小結By 凱絲緹爾 Uniform僅可以在Shader外改變取值, 在Shader中不能被改寫 適合於定義那些取值不常需要改變的變量 Uniform變量被Vertex Shader和Fragment Shader所共享 除非函數有Sampler類型的參數, 否則一個Uniform變量被聲明後必須被使用 所有類型的變量和數組均可被Uniform Qualifiers修飾 In適合於定義向Vertex Shader輸入的, 變化頻率比較高的變量. 對於Vertex Shader, 不可以接受布爾標量/向量, 結構, 或Sampler. 其目的在於保持在變量值被反復修改情況下圖形硬件的 阅读全文
posted @ 2011-05-02 21:24 30斤大番薯 阅读(267) 评论(0) 推荐(0)


点击右上角即可分享
微信分享提示