随笔分类 - 嵌入式
摘要:有名管道 有名管道又称为FIFO文件,因此我们对有名管道的操作可以采用文件操作的方法,如使用open,read,write等。 FIFO文件的特点 1.读取FIFO文件的进程只能以RDONLY方式打开FIFO文件。 2.写入FIFO文件的进程只能以WRONLY方式打开FIFO文件。 3.FIFO文件
阅读全文
摘要:通讯目的 1.数据传输 一个进程需要将数据发送给另外一个进程。 2.资源共享 多个进程之间共享同样的资源。 3.通知事件 一个进程需要向另外一个/组进程发送消息,通知它们发生了某事件。 4.进程控制 有些进程希望完全控制另外一个进程的执行,此时控制进程希望能够拦截另外一个进程的所有操作,并能够及时知
阅读全文
摘要:fork.c #include <stdio.h> #include <stdlib.h> #include <unistd.h> void main(){ int pid; pid = fork(); printf("pid is %d\n", pid); exit(0); } vfork.c #
阅读全文
摘要:进程概念 进程是一个具有一定独立功能的程序的一次运行活动。也就是运行起来的程序。 进程特点 动态性、并发性、独立性、异步性 进程状态 就绪态、执行态、阻塞态 进程ID 进程ID:标识进程的唯一数字 父进程ID:PPID 启动进程ID:UID 进程互斥 进程互斥是指当有若干个进程都要使用某一个资源时,
阅读全文
摘要:时间类型 Coordinated Universal Time(UTC):世界标准时间,也就是格林威治时间(Greenwich Mean Time, GMT)。 Calendar Time:日历时间,是用一个标准时间点(1970年1月1日0点)到此时所经过的秒数来表示的时间。 #include <s
阅读全文
摘要:#include<stdio.h> void main(){ //打开文件 FILE *fp; fp = fopen("test.txt", "r+"); if(fp == NULL){ printf("File open fail!\n"); } //写入数据 char wbuf[10] = "5
阅读全文
摘要:#include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> void main(){ //打开文件 int fd; fd = open("./test.c
阅读全文
摘要:制作动态链接库 1.生成中间文件 gcc –c mylib.c –o mylib.o 2.生成动态链接库 gcc –shared –fPIC mylib.o –o libmylib.so -fPIC 使输出的对象模块是按照可重定位地址方式生成的。 -shared 指明产生动态链接库 3.将制作好的l
阅读全文
摘要:外部函数 Linux应用程序设计中需要的外部函数主要由函数库和系统调用来提供。 两者区别 系统调用在Linux内核中位于核心态,而函数库是由工程师提供位于用户态 函数库分类 函数库按照链接方式可以分为静态函数库和动态函数库 存放位置 Linux应用程序使用的主要函数库均存放于/lib,/usr/li
阅读全文
摘要:程序构成 代码段、数据段、BSS段(Block Started by Symbol,又叫:未初始化数据段)、堆(heap)和栈(stack)。这些部分构成了Linux应用程序的重要组成部分。 内存布局 1.从低地址到高地址分别为:代码段(0x8048000)、数据段、BSS段、堆、栈。 2.堆向高内
阅读全文
摘要:Core Dump定义 Core Dump又叫核心转存。当程序在运行过程中发生异常,Linux系统可以把程序出错时的内存内容存储在一个core文件中,这个过程叫Core Dump。 Core Dump主要用来对付Segment fault错误。Linux应用程序在运行过程中,经常会遇到Segemt
阅读全文
摘要:GDB是GNU发布的一款功能强大的调试工具。GDB主要完成下面三个方面的功能: 1.启动被调试的程序。 2.让被调试的程序在指定的位置停住。 3.当程序被停住时,可以检测程序状态。 GDB使用流程 1.编译生成可调试的程序 gcc –g test.c –o test 2.启动GDB gdb test
阅读全文
摘要:Bootloader作用 1.初始化软硬件 2.启动操作系统 内核分类 1.zImage 不加信息头的内核 2.uImage 加信息头后的内核,用bootm命令来启动 bootm作用 1.检测信息头:压缩、操作系统、幻数 2.根据OS信息调用相应的处理函数:获取内核地址、知道CPU型号、设置启动参数
阅读全文
摘要:IP协议结构UDP协议结构TFTP协议结构TFTP端口读写请求端口: 69其他请求端口:1024~65535主程序/*********************************************************************名称:menu*参数:* none*返回:* ...
阅读全文
摘要:TFTP作用用于网络下载,TFTP客户机在TFTP服务器中下载文件。TFTP交换过程1.配置TFTP服务器vim /etc/xinetd.d/tftp2.交换过程客户端发请求包到服务器服务器发数据包到客户段客户端发相应包到服务器TFTP报文格式操作码1 请求报文2 写入报文3 数据报文4 应答报文5...
阅读全文
摘要:以太网通讯在计算机网络中,数据发送的过程就是把数据按照各层协议层层封装的过程。在这个过程中,最终要使用的协议通常是以太网协议(数据链路层协议)。以太网包格式目的MAC地址:接收者的物理地址(6字节)源MAC地址:发送者的物理地址(6字节)类型:高层数据使用的协议类型(2字节)数据:高层的数据(46~...
阅读全文
摘要:移植代码:通过已有的可用的代码修改到新环境下运行。代码编写:初始化网卡1.选中网卡nLAN_CS BWSCON(0x48000000) DW4:01 16bitBANKCON4(0x48000014)(0x0 DM9000_PKT_MAX){ printf("rx length too big!\...
阅读全文
摘要:OSI七层模型应用层、表示层、会话层、传输层、网络层、数据链路层、物理层TCP/IP四层模型应用层、传输层、网络层、网络接口层DM9000硬件结构1.MAC(数据链路层)、MII、PHY(物理层)2.MAC主要负责数据帧的构建、数据差错检测、传输控制等。3.MII是媒体独立接口,在MAC一定情况下,...
阅读全文
摘要:/*********************************************************************名称:touchscreen.c*作者:D*时间:2015.11.23*功能:* 触摸屏驱动,由于MINI2440采用一线触控,而非四线电阻触控所以触摸屏* 驱...
阅读全文
摘要:触摸屏初始化1.设置AD转换时钟ADCCON (1<<14)|(49<<6) PRSCEN使能 PRSCVL ADC=PCLK/(VAL+1)2.设置中断屏蔽2.1.TC中断,当手指接触或移开时会产生的中断2.2.ADC中断,当ADC转换完成后产生的中断使能TC中断,屏蔽ADC中断,通过轮询查看AD...
阅读全文

浙公网安备 33010602011771号