Commit Graph

16 Commits

Author SHA1 Message Date
大石头 63b75a307c TraceStack的构造和析构不平衡,导致TS_Len异常,从而出现野指针非法修改堆地址。
TS_Len不平衡变成了-1,_TS位于0x2000023c,赋值就变成了向0x20000238赋值,而g_Heap是0x20000228,238正是它的_First字段。故导致_First字段被错误修改。
2017-03-14 15:56:24 +08:00
大石头X2 e0b06839f0 减少堆管理的调试日志 2017-03-07 16:57:19 +08:00
大石头X2 ce907e827b 在GD32F103VE上,按下PE13,有5%左右几率触发PE14的弹起中断,需要过滤。
准备更换STM32F103VE确认是否还存在该问题。
输入队列效果并不是很理想,按键事件代码执行很快,平均300us多,队列绝大多数时候只有一项,偶尔两项,极少出现三项。
修正抖动逻辑,不管是10还是01,一律延迟抖动时间再执行任务,再次期间,太近的中断可以取消当前和上一次。
2017-03-07 12:21:25 +08:00
大石头X2 0dad3490a3 堆管理调试日志 2017-03-03 19:31:52 +08:00
大石头X2 cf0a6fe21b 修正堆空间不够时产生的连锁错误 2017-03-02 12:08:04 +08:00
大石头X2 fc216e5f69 基础类库和系统内核尽可能的使用int替代uint,方便计算,避免溢出了也不知道。 2017-02-27 18:36:07 +08:00
大石头 fb5f43c4d2 修正编译警告,未使用变量 2017-02-26 12:58:15 +08:00
大石头X2 3fada9a2c5 记录第一个有空闲内存的块,减少内存分配时的查找次数。
测试通过
2017-02-25 16:10:23 +08:00
大石头X2 4d8d16972f 修正堆释放后Used计算错误,不能用下一块指针减去当前指针,因为最后一块可能没有用完 2017-02-25 15:14:52 +08:00
大石头X2 258835798e 加入分配失败的日志 2017-02-22 19:43:11 +08:00
大石头X2 de2db57d4d 使用有符号整数比较,便于判断堆溢出 2017-02-20 23:25:04 +08:00
大石头 fa329294f1 绝对路径引用Sys.h,避免与lwip冲突 2017-02-15 20:02:29 +08:00
nnhy ce317f2fdc 对外隐藏中断头文件,普通用户无需操作中断 2016-10-29 03:07:37 +00:00
nnhy 7429f4ce2c 直接引用头文件,避免SmartOS上层需要包含太多的头部目录 2016-10-29 02:59:28 +00:00
Stone 0b6e220d8f 记录已使用内存数和分配总次数 2016-06-22 10:57:55 +00:00
Stone fee1c14d0c 增加内存堆管理,未使用 2016-06-22 10:51:40 +00:00