当前位置: 首页 > 2016年10月发布的所有日志
  • 双向链表list.h升序排序

    双向链表list.h升序排序

    前一篇文章《整理一个双向链表list.h》介绍了自实现的双向链表list.h,在Linux内核中,常见的是维护全局链表(如i2c板级有一个全局链表),基本上都是在尾部插入、模块退出时删除,不会涉及到链表中间插入、删除,——这也让我一度认为该链表的实现只具备这些“少许”功能。当然,如果抛开内核场合,其它场合可能会需要到更多的功能,所以前文中做了介绍。这里就说一下如何将链表做成升序(或降序)排列的。

    作者:李迟 | 发布:2016-10-20 20:45 | 分类:我的程序代码 | 阅读:804 次 | 标签:, | 评论:无评论
  • 整理一个双向链表list.h

    整理一个双向链表list.h

    一直觉得Linux内核的双向链表是十分巧妙的设计,它的实现方式与数据结构课程上讲的完全不同。内核list实现依赖于GCC的扩展,在其它平台不一定能正常运行。在内核中,一般是结构体中使用链表成员,而不是像数据结构课那样在链表结构体中使用数据域。C++中将lsit作为模板,能应用于各种类型数据上,但Linux内核无法使用,因而使用其它手段实现,方便扩展。事实上,内核大量结构体都使用了list。网上有很多关于此方面的介绍,就不展开说了。

    作者:李迟 | 发布:2016-10-19 20:32 | 分类:我的程序代码 | 阅读:741 次 | 标签:, | 评论:无评论
  • 我的一些学习经验:概述

    我的一些学习经验:概述

    工作那么多年,或多或少都会有自己的工作习惯、学习习惯。其实工作了,就不能谈“学习”,因为公司雇佣员工是为了产生效益的。但以“研究”作为标题的话,又显得自己太狂。本文就笔者的学习、研究经历——更多是自学,总结一些想法、步骤,虽不是具备代表性,但也是经过实践的。很多年不写理论性的文章了,行文难免略显幼稚。

    作者:李迟 | 发布:2016-10-16 14:46 | 分类:代码生活 | 阅读:561 次 | 评论:无评论