对于linux网络编程来说,可以简单的分为标准套接字编程和原始套接字编程,标准套接字主要就是应用层数据的传输,原始套接字则是可以获得不止是应用层的其他层不同协议的数据。与标准套接字相区别的主要是要开发之自己构建协议头。对于原始套接字编程有些细节性的东西还是需要注意的。 1. 原始套接字创建 原始套接 Read More
posted @ 2016-03-31 22:16 痞子辉 Views(1566) Comments(0) Diggs(0) Edit
Linux下的网络编程指的是socket套接字编程,入门比较简单。在学校里学过一些皮毛,平时就是自学玩,没有见识过真正的socket编程大程序,比较遗憾。总感觉每次看的时候都有收获,但是每次看完了之后,过段时间不看,重新拾起这些知识的时候又要从头开始,所以,在这里做个笔记也算是做个模板,以后可以直接 Read More
posted @ 2016-03-19 22:41 痞子辉 Views(14023) Comments(1) Diggs(1) Edit
ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox。为什么有了queue机制还要用mbox呢,只要设置queue的msg只有一个不就行了?其实很简单,就是为了节约资源 Read More
posted @ 2016-02-21 15:53 痞子辉 Views(4677) Comments(0) Diggs(0) Edit
ucos操作系统中的queue机制同样使用了event机制来实现,其实和前面的sem,mutex实现类似,所不同的是对sem而言,任务想获得信号量,对mutex而言,任务想获得的是互斥锁。任务间通信的queue机制则是想获得在queue中的消息,通过队列先进先出的形式存放消息。其实queue中存放的 Read More
posted @ 2016-02-21 13:15 痞子辉 Views(1014) Comments(0) Diggs(0) Edit
想讲一下ucos任务间通信中的mutex,感觉其设计挺巧妙,同sem一样使用的是event机制实现的,代码不每一行都分析,因为讲的没邵贝贝老师清楚,主要讲一下mutex的内核是如何实现的。可以理解互斥锁是设置信号量值为1时候的特殊情况,与之不同的地方是互斥锁为了避免优先级反转采用了优先级继承机制,本 Read More
posted @ 2016-02-16 22:51 痞子辉 Views(7306) Comments(0) Diggs(0) Edit
ucos实时操作系统的任务间通信有好多种,本人主要学习了sem, mutex, queue, messagebox这四种。系统内核代码中,这几种任务间通信机制的实现机制相似,接下来记录一下本人对核心代码的学习心得,供以后回来看看,不过比较遗憾的是没有仔细学习扩展代码的功能实现部分。ucos操作系统的 Read More
posted @ 2016-02-13 22:10 痞子辉 Views(3412) Comments(0) Diggs(0) Edit
对于ucos实时操作系统,邵贝贝的那本书已经写得很详细了,我因为之前不深的研究过ucos,所以在这里做一个笔记,写一些个人对该操作系统的理解,仅仅是个人理解,如果有人看到这边随笔有不对的地方,望给我指正。同时,锻炼一下自己组织语言的能力,有时候知道那么个意思,却总也说不出口。 ucos内种中有几个人 Read More
posted @ 2016-02-01 21:36 痞子辉 Views(1494) Comments(0) Diggs(0) Edit
使用ucos实时操作系统是在上学的时候,导师科研项目中。那时候就是网上找到操作系统移植教程以及应用教程依葫芦画瓢,功能实现也就罢了,没有很深入的去研究过这个东西。后来工作了,闲来无聊就研究了一下这个只有几千行代码的操作系统,也没所有的代码都看,只是看了其中部分内容。自己还自不量力的尝试着去写过... Read More
posted @ 2016-01-13 22:26 痞子辉 Views(6199) Comments(0) Diggs(0) Edit
这是我的第一篇博客,由于公司项目需要,将暂时告别C语言一段时间。所以在此记录一下自己之前学习C语言的一些心得体会,希望可以分享给大家,也可以记录下自己学习过程中遇到的问题以及存在的疑惑(其实就是自己学习过程中不解的地方)。好了,废话不多说,开始微博内容了,O(∩_∩)O哈哈~ 接下来将通过... Read More
posted @ 2015-12-22 23:38 痞子辉 Views(17168) Comments(13) Diggs(8) Edit