近日在写一个简易的操作系统,经常受到bug的偷袭,由于开发OS的特殊性,一些常规的debug手段用不上,于是打算记录下自己的debug过程,用于交流。
Problem:
在做图层叠加时,引入结构体SHTCTL进行各个图层的管理,但遭遇了黑屏,原因可能来自于图层管理模块、内存管理模块或其他未知原因。
Solution:
恢复到上次不黑屏的版本(即去掉图层管理模块),果然可以进行显示。在此基础...
分类:
其他好文 时间:
2014-06-05 07:16:45
阅读次数:
199
预备知识:
关于http协议的基础请参考这里。
关于socket基础函数请参考这里。
关于python网络编程基础请参考这里。
废话不多说,前面实现过使用linux c 或者python 充当客户端来获取http 响应,也利用muduo库实现过一个简易http服务器,现在来实现一个python版的简易http服务器,代码改编自http://www.cnblogs.com/v...
分类:
编程语言 时间:
2014-06-05 04:17:57
阅读次数:
463
上次的简易bootloader虽然下载验证成功,可以成功引导内核启动linux,但是LCD一直处于白屏状态,没有显示。而mini2440的vivi就没有这情况,所以问题可能出在一些与LCD有关的初始化上。经过查看原理图和对照源代码,做了一些修改,最后LCD可以正常工作。
修改工作主要就是将对应LCD控制线和数据线的GPIO口进行初始化:
主要代码如下:
void port_init(void...
分类:
其他好文 时间:
2014-06-05 02:05:04
阅读次数:
260
Qt5实现的简易UDP广播程序,学习Qt
下UDP协议的基本使用。创建两个工程,命名UDPclient和UDPserver.又server发送广播,client负责接收。------------创建UDPserver时,选择dialog窗口类。并用Qt设计器创建界面。textedit用来输入广播的消...
分类:
其他好文 时间:
2014-06-04 18:12:12
阅读次数:
384
Oracle简易界面工具
背景:偶在远程机上干活,需要调用到 Oracle 11g服务器的数据,远程机上已安装Oracle client, 但 sql plus 和 sql developer 及 pl sql developer 都不能用 (DBA折腾几天都没解决)。偶 有服务器的ip, oracle用户名及密码;知道部分表名及字段名。
因时间紧,偶只好自己写一个简易的界面工具来应急...
分类:
数据库 时间:
2014-06-02 23:56:34
阅读次数:
445
第一次听说Objective
C可以在非Apple机器上写的时候完全震惊了。于是自己分别在Windows和Ubuntu上进行了尝试,Windows上面没有搭建成功,Ubuntu上历经千辛万苦终于成功了。绝对要把过程记录下来。在Ubuntu下面搭建Xcode之外的环境,得依靠GNUStep。网上有很多...
分类:
其他好文 时间:
2014-06-02 08:32:23
阅读次数:
225
freemarker中的left_pad和right_pad
1、简易说明
(1)left_pad 距左边
(2)right_pad 距右边
(3)当仅仅只有一个参数时,插入的是空白;当有两个参数时,插入的是第二个参数符号;如果第二个参数的长度大于1的话,会周期性地插入该符号
2、举例说明
[${""?left_pad(8)}]
[${"E"?le...
分类:
其他好文 时间:
2014-06-01 15:30:50
阅读次数:
229
freemarker中的split字符串分割
1、简易说明
split分割:用来根据另外一个字符串的出现将原字符串分割成字符串序列
2、举例说明
"${name}"
"${num}"
3、示例结果
"张三三"
"李思思"
"...
分类:
其他好文 时间:
2014-06-01 15:30:13
阅读次数:
487
freemarker中的round、floor和ceiling数字的舍入处理
1、简易说明
(1)round:四舍五入
(2)floor:向下取整
(3)ceiling:向上取整
2、举例说明
${num} ?round=${num?round} ?floor=...
分类:
其他好文 时间:
2014-06-01 15:29:34
阅读次数:
218