摘要: 这个问题真心是处理了一个下午,还自己去下载了个最新的内核拿来编译,其实是完全没必要的,因为ubuntu系统是可以直接下载新内核的。你可以在/usr/src/文件夹下找到这些内核文件夹,比如说我自己的系统:写博客的时候使用的是3.13.0-19的内核。写一个hello.c的测试文件: 1 #include /*Needed by all modules*/ 2 #include /*Needed for KERN_* */ 3 #include /* Needed for the macros */ 4 5 MODULE_LICENSE("GPL"); 6 7 static 阅读全文
posted @ 2014-03-24 17:17 NeroHwang 阅读(30110) 评论(0) 推荐(3) 编辑
摘要: 一开始运行出错,开启debug以后发现在push自定义对象的时候调试器提示找不到一个叫/XXX/XXXX/XXXX/libcstl-2.3.0/src/cstl_list_private.c而那个路径正是我进行安装的路径,安装完以后我把安装包给删除掉了,所以它找不到。这样的话,我们在一开始安装的时候就要注意最好先把tar.gz解压出来的文件夹放到特定文件夹,比如/usr/local/下,这样不会在安装完成后被误删,也比较方便查找。但是再次调试的时候却发现插入操作死在了调用_my_copy()函数那里,里面设置了一个int型临时变量i_temp用来作中间值方便调试,调试过程中发现i_temp成了 阅读全文
posted @ 2014-03-21 16:55 NeroHwang 阅读(1145) 评论(0) 推荐(0) 编辑
摘要: 不想多说什么,会搜这些东西的都是想看代码的吧。一开始不熟悉多线程的时候还在想怎么来控制一个线程的结束,后来发现原来有pthread_exit()函数可以直接在线程函数内部调用结束这个线程。开始还想初始化一个pthread_t thread_fd[MAX]数组来存储开启的线程,然后用一个栈存储那些未分配的数组元素(thread_fd[index]=0)的index,跟缓存的思维相似,不过实在是想多了。废话不多说,直接上代码,服务器和客户端都已经编译通过,正常运行,有基本的容错能力,不过也只是最基本的。服务器: 1 /* 2 * multi_thread_socket_server.c 3... 阅读全文
posted @ 2014-03-15 17:02 NeroHwang 阅读(18511) 评论(0) 推荐(2) 编辑
摘要: 目录:一、解决小的问题;二、大问题,如果你不小心把/usr/lib的所属用户改了导致sudo命令用不了:三、C连接MySql编程本身:其实写这个程序真的很简单,十多分钟的事情,只是以前没在Linux下用纯C连过Mysql,想试一下,竟然搞了一整天,而且不是由于编码本身,是因为其他的一些周边问题,所以很有必要做一下笔记。一、解决小的问题:1、怎么自己去学着编写?C语言针对MySql函数的帮助怎么查找:这些东西在MySql提供的帮助文档里都是有的,索引是C API。可以自己去下载chm格式的帮助文档,个人觉得这种文档比较好用,也可以去官网自行决定下载其他类型的帮助文档:http://dev.mys 阅读全文
posted @ 2014-03-07 23:42 NeroHwang 阅读(12598) 评论(0) 推荐(0) 编辑
摘要: 目录:一、介绍;二、数据结构;三、主要的两个函数接口Put()和Get();四、C++代码实现;后台开发必备知识,不过我不是搞这个的,只是因为很久以前就想写这些东西,事情多,拖到现在。写的过程里面发现很多问题,不会全部说,最后会顺带提一提。注意,本篇笔记只是对接口写法做了记录,并没有进行更严格的设计和限制,包括更严密的封装,这里只是学习它实现的原理。不过有些idea还是要知道的,系统定时对缓存进行清除并加入满足条件的新数据,是根据:访问时间,访问次数,可用缓存容量(分配到的内存)等因素决定的,实际设计其实很多东西需要考虑。一、介绍:LRU,Least Recently Used,最近最少使用, 阅读全文
posted @ 2014-03-06 15:40 NeroHwang 阅读(2945) 评论(0) 推荐(4) 编辑
摘要: 问题描述很简单,就是限制每行的最大字符数量,如果超过了这个数,将多出来的部分折叠到下一行,下一行照样重复上述步骤,直到折叠完毕。这里要考虑的问题有:1、一旦判断到当前读取的字符数量已经到了限制值,我就要插入一个'\n'用来换行;2、如果当前超过限制的位置是一个单词的内部,比如说读到“hello”这个单词的'e'位时到了限制位,那么不可能直接在这里插入'\n'换行,怎么办?结合上面的思考,我们可以设定三个临时变量用来指明特定的数组下标:1、current,指定当前读取到的位置;2、location,指定当前行读取到的位置;3、spaceholder 阅读全文
posted @ 2014-02-27 15:15 NeroHwang 阅读(1009) 评论(0) 推荐(1) 编辑
摘要: 目录:一、PROCEDURE;二、CREATE PROCEDURE基本语法;三、PROCEDURE小进阶 3.1、基本的DECLARE语句; 3.2、声明HANDLER句柄; 3.3、声明CURSOR游标; 3.4、循环语句;四、顺带提一下触发器TRIGGER一、PROCEDURE:PROCEDURE,事务,一个存储过程,实际上就是在服务器端直接在数据库中编写一段代码作运算,在服务器端进行高效的运算,运算结果直接返还给客户端。它和FUNCTION一个明显的不同点是,FUNCTION最后会有RETURN语句,返回运算结果,PROCEDURE不允许有RETURN语句的,但是可以在参数表中指定返还数 阅读全文
posted @ 2014-02-26 19:31 NeroHwang 阅读(1661) 评论(0) 推荐(0) 编辑
摘要: 在自己的小站上发过一次,这边就不再多发一次了,直接给链接好了:http://nerohwang.github.io/2014/02/11/simple-test/ 阅读全文
posted @ 2014-02-12 00:04 NeroHwang 阅读(601) 评论(3) 推荐(0) 编辑
摘要: 真是不知不觉过了一年,前段时间忙着考试什么的,没再写笔记写博客,考完又懒懒地玩了几天。这几天其实都在读别人的博客,感受一下大神的工作和生活感悟,感受一下过来人的经历和经验,对自己总是很有帮助的。今天想写下一下vim的笔记。Vim,程序员必备的高效编辑器,不用多介绍的了,代码补全、编译和跳转等方便的编辑都是非常丰富完整的。其实现在不少公司指定员工后台开发要用这个编辑器,ubuntu+vim的开发形式其实挺常见的。Vim确实是非常强大的编辑器,很多IDE可以做的vim都可以做到,想自行增加一些编辑增强或者编译功能的话装对应插件即可。本篇笔记涉及到的软件有vim7.3版本,python3.0,cla 阅读全文
posted @ 2014-01-25 14:12 NeroHwang 阅读(2070) 评论(6) 推荐(5) 编辑
摘要: 这两天在愁着那么多教科书怎么卖出去的问题,突然萌生一个想法,急需卖书的肯定不只我一个人,每年大把大把的毕业生,每个毕业生大把的书,而且现在针对这个市场的B2C平台这么少,虽然有竞价排名比较高的二手书网,但是专门针对大学生的二手书网几乎是没有的,既然潜藏商机这么大,为什么竟然没有人去运营?带着疑问我去搜索了一下相关话题,果然问题还是出在运营上。技术实现并不成问题,但是不同高校的需求分布以及书的类别比例确实是难以统计。C2C?不实际。毕业生是急需卖书的,这样会导致一方失衡。这个市场真的是非常有潜力,如果能单对大学城做起来,肯定潜力巨大!现在广州大学城南亭不是有专门搞二手书买卖的么(当然,中国大部分 阅读全文
posted @ 2014-01-20 12:08 NeroHwang 阅读(767) 评论(2) 推荐(0) 编辑