随笔分类 -  linux

摘要:struct usb_ctrlrequest { __u8 bRequestType; __u8 bRequest; __le16 wValue; __le16 wIndex; __le16 wLength;} __attribute__ ((packed));struct usb_wireless 阅读全文
posted @ 2017-07-16 09:36 专注it 阅读(729) 评论(0) 推荐(0)
摘要:本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载。但转载请保持文档的完整性,并注明原作者及原链接。内容可任意使用,但对因使用该内容引起的后果不做任何保证。 作者:fireaxe_hq@hotmail.com 博客:fireaxe.blog.chinaunix.net Tasklet作为一 阅读全文
posted @ 2017-07-14 12:55 专注it 阅读(494) 评论(0) 推荐(0)
摘要:Linux下进程间通信的几种主要手段: 1.管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信; 2.信号(Signal):信号是比较复杂的通信方式,用于通知接受进程 阅读全文
posted @ 2017-07-14 09:18 专注it 阅读(436) 评论(0) 推荐(0)
摘要:一、概述 本文希望通过分析台湾的Jollen的mokoid 工程代码,和在s5pc100平台上实现过程种遇到的问题,解析Andorid HAL的开发方法。 二、HAL介绍 现有HAL架构由Patrick Brady (Google) 在2008 Google I/O演讲中提出的,如下图。 Andro 阅读全文
posted @ 2017-07-13 09:08 专注it 阅读(888) 评论(0) 推荐(0)
摘要:SOCKET() 我们使用系统调用socket()来获得文件描述符:#include<sys/types.h>#include<sys/socket.h>int socket(int domain,int type,int protocol);第一个参数domain设置为“AF_INET”。第二个参 阅读全文
posted @ 2017-07-13 08:47 专注it 阅读(207) 评论(0) 推荐(0)
摘要:进程和线程的区别与联系 在许多经典的操作系统教科书中,总是把进程定义为程序的执行实例,它并不执行什么, 只是维护应用程序所需的各种资源,而线程则是真正的执行实体。 为了让进程完成一定的工作,进程必须至少包含一个线程。 进程,直观点说,保存在硬盘上的程序运行以后,会在内存空间里形成一个独立的内存体,这 阅读全文
posted @ 2017-07-12 08:56 专注it 阅读(205) 评论(0) 推荐(0)
摘要:自己作为后端研发工程师,一直在公司电商项目中参与和检索相关的工作。工作的时间也不短了,一直希望能写一些文章来总结、整理下自己接触到的知识点,一方面是为了梳理自己的思路,另一方面也作为一种分享和交流。 本文简单总结一下,电商检索系统需要向用户提供哪些功能。 搜索页面结构 下图是一个电商搜索结果页的基本 阅读全文
posted @ 2017-07-03 20:40 专注it 阅读(7646) 评论(2) 推荐(2)
摘要:Linux内核里的等待队列机制在做驱动开发时用的非常多,多用来实现阻塞式访问,下面简单总结了等待队列的四种用法,希望对读者有所帮助。 1. 睡眠等待某个条件发生(条件为假时睡眠): 睡眠方式:wait_event, wait_event_interruptible 唤醒方式:wake_up (唤醒时 阅读全文
posted @ 2017-07-02 21:39 专注it 阅读(3363) 评论(0) 推荐(0)
摘要:1 Linux进程的睡眠和唤醒 在Linux中,仅等待CPU时间的进程称为就绪进程,它们被放置在一个运行队列中,一个就绪进程的状态标志位为TASK_RUNNING。一旦一个运行中的进程时间片用完, Linux内核的调度器会剥夺这个进程对CPU的控制权,并且从运行队列中选择一个合适的进程投入运行。 当 阅读全文
posted @ 2017-07-02 21:37 专注it 阅读(14199) 评论(0) 推荐(0)
摘要:一、传输层协议 从之前介绍的网络层协议来看,通信的两端是两台主机,IP 数据报首部就标明了这两台主机的 IP 地址。但是从传输层来看,是发送方主机中的一个进程与接收方主机中的一个进程在交换数据,因此,严格地讲,通信双方不是主机,而是主机中的进程。 主机中常常有多个应用进程同时在与外部通信(比如你的浏 阅读全文
posted @ 2017-07-02 20:57 专注it 阅读(954) 评论(0) 推荐(0)
摘要:IP 网际协议 IP 协议位于网络层,它是 TCP/IP 协议族中最为核心的协议,所有的 TCP、UDP、ICMP 及 IGMP 数据都以 IP 数据报格式传输。IP 协议提供的是 不可靠 、 无连接 的数据报传送服务。 不可靠(unreliable):IP 协议不能保证数据报能成功地到达目的地,它 阅读全文
posted @ 2017-07-02 10:40 专注it 阅读(478) 评论(0) 推荐(0)
摘要:应用层协议 在传输层之上,便是应用层。传输层的 UDP 报文和 TCP 报文段的数据部分就是应用层交付的数据。 不同类型的网络应用有不同的通信规则,因此应用层协议是多种多样的,比如 DNS、FTP、Telnet、SMTP、HTTP、RIP、NFS 等协议都是用于解决其各自的一类问题。 本节实验,介绍 阅读全文
posted @ 2017-07-02 10:31 专注it 阅读(3861) 评论(0) 推荐(0)
摘要:传输层:TCP 协议 一、概述 TCP 和 UDP 处在同一层——运输层,但是它们有很多的不同。TCP 是 TCP/IP 系列协议中最复杂的部分,它具有以下特点: (1) TCP 提供 可靠的 数据传输服务,TCP 是 面向连接的 。应用程序在使用 TCP 通信之前,先要建立连接,这是一个类似“打电 阅读全文
posted @ 2017-07-02 10:21 专注it 阅读(496) 评论(0) 推荐(0)
摘要:笔者成为博客专家后整理以前原创的嵌入式Linux系列博文,现推出以让更多的读者受益。 《从需求的角度去理解linux系列:总线、设备和驱动》是一篇有关如何学习嵌入式Linux系统的方法论文章,也是从需求的角度去理解Linux系统软件的开篇,期待此系列文章日后会是学习嵌入式Linux的标杆! 这是作者 阅读全文
posted @ 2017-06-30 12:54 专注it 阅读(654) 评论(0) 推荐(0)
摘要:[python] view plain copy print? [python] view plain copy print? 阅读全文
posted @ 2017-06-28 12:51 专注it 阅读(1950) 评论(1) 推荐(0)
摘要:我们已经在前面几章介绍了低分辨率定时器和高精度定时器的实现原理,内核为了方便其它子系统,在时间子系统中提供了一些用于延时或调度的API,例如msleep,hrtimer_nanosleep等等,这些API基于低分辨率定时器或高精度定时器来实现,本章的内容就是讨论这些方便、好用的API是如何利用定时器 阅读全文
posted @ 2017-06-27 12:31 专注it 阅读(8698) 评论(0) 推荐(0)
摘要:我们知道,SPI数据传输可以有两种方式:同步方式和异步方式。所谓同步方式是指数据传输的发起者必须等待本次传输的结束,期间不能做其它事情,用代码来解释就是,调用传输的函数后,直到数据传输完成,函数才会返回。而异步方式则正好相反,数据传输的发起者无需等待传输的结束,数据传输期间还可以做其它事情,用代码来 阅读全文
posted @ 2017-06-26 09:15 专注it 阅读(492) 评论(0) 推荐(0)
摘要:作者:huangguisu 原文出处:http://blog.csdn.NET/hguisu/article/details/7453390 socket阻塞与非阻塞,同步与异步 1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unbl 阅读全文
posted @ 2017-06-23 15:10 专注it 阅读(254) 评论(0) 推荐(0)
摘要:3、调度函数schedule()分析 当kernel/sched.c:sched_tick()执行完,并且时钟中断返回时,就会调用kernel/sched.c:schedule()完成进程切换。我们也可以显示调用schedule(),例如在前面“Linux进程管理“的介绍中,进程销毁的do_exit 阅读全文
posted @ 2017-06-22 09:06 专注it 阅读(1637) 评论(0) 推荐(1)
摘要:写设备驱动: 四部曲: 构建i2c_driver 注册i2c_driver 构建i2c_client ( 第一种方法:注册字符设备驱动、第二种方法:通过板文件的i2c_board_info填充,然后注册) 注销i2c_driver 具体如下: ● 构建i2c_driver static struct 阅读全文
posted @ 2017-06-21 08:58 专注it 阅读(536) 评论(0) 推荐(0)