- 博客(34)
- 资源 (30)
- 收藏
- 关注
原创 Linux中,SQLITE移植到开发板实现
下载源码:sqlite-amalgamation-3.7.3.tar.gz(http://www.sqlite.org/download.html)解压源文件,如解压到目录/home/linux/sqlite-3.7.3/#cd /home/linux/sqlite-3.7.3/ #mkdir sqlite_install#./configure --host=arm-none
2013-06-27 19:59:32 820
原创 联合永道公司笔试题
1. 用二分法查找一个长度为10的、排好序的线性表,问查找失败需要查找多少次?2. 二叉树的遍历(中序遍历)3.用递归思想实现数组a[],前n个元素和 int sum(int a[],int n){if(n > 0) return ?;else return ?;}4. 自定义数据结构,自己完成初始化,实现数据的存取,数据个数不限制,可以存取无符号整数,无符号整
2013-06-27 16:21:54 2490 1
原创 Tftp 服务器配置
Tftp是TCP/IP 协议族中的一个用来在客户机与服务器之间进行简单的文件传输的协议。配置步骤:在虚拟机机中:1.使用以下命令,安装tftp服务:sudo apt-get install tftp-hpa tftpd-hpa xinetd2.修改配置文件在/etc/default下修改tftp服务的配置文件tftpd-hpa:sudo vim /etc/default
2013-06-27 16:19:26 905
原创 nfs方式挂载系统
实际工作中,我们经常使用nfs方式挂载系统,这种方式对于系统的调试非常方便。nfs方式是开发板通过nfs挂载放在主机(PC)上的根文件系统。此时在主机在文件系统中进行的操作同步反映在开发板上;反之,在开发板上进行的操作同步反映在主机中的根文件系统上。1、安装nfs如果你的主机linux或者虚拟机中没有安装nfs,可以通过下面的命令安装nfs:$sudo apt-get instal
2013-06-27 16:13:32 960
原创 I/O多路复用的实现
A :创建一张文件描述符表,将关心的文件描述符放入表B : 通过select 函数探测表中的文件描述符是否就绪(就绪:条件满足)C : 有就绪的文件描述符select函数返回,然后调用相关的函数函数原型:int select(int nfds ,fd_set *readfs,fd_set *writefds, fd_set *exceptfds,struct timeval
2013-06-26 09:14:40 1113
原创 实现一句英文的逆序输出----微软面试题
实现一句英文的逆序输出----微软面试题如: 输入 i love china; 输出 china love i方法一:#include #define N 32int get_data(char *dest, int num);int reverse_word(char *str);int main(){ char buff[N]; get_data(buf
2013-06-25 21:47:43 1055
原创 BOA服务器分析流程
随着企业安全意识的增强以及现代化管理水平的提高,对设备的远程监控在工业控制系统中得到了越来越广泛的应用。近年来,Web技术广泛普及,把Web技术应用在这种监控系统中,可以让操作者通过浏览器维护和管理监测点,查看监测数据。同时,监测中心的服务程序也可以很方便地通过Web把监测数据取回来,进行进一步的处理,十分方便。 μClinux是应用于微控制领域的一种嵌入式Linux操作系统,它源码开放,移
2013-06-23 18:21:52 5233
原创 IPC-------消息队列全攻略
消息队列:1、 IPC的一种,按照消息的类型来发送和接收信息2、注意要设计消息结构体运行效果:写端:读端:write.c#include#include#include #include #include #include #include #include #include #define MSG_LEN (si
2013-06-22 18:41:34 585
原创 信号灯集实现PV操作
信号灯(semphore)也叫信号量,它是不同进程间或者一个给定的进程内不同线程同步机制信号灯:1.二值信号灯:信号为0、1与互斥锁类似,资源勇士为1,不用时为02.计数信号灯:值到0-n,用来统计资源其值可以代表资源数3.等待操作是等待信号灯的值大于零,然后将其减一;而释放操作则相反。用来唤醒等待资源的进程或者线程P、V操作就是资源的申请与释放P:申请资源,资源数
2013-06-22 18:23:13 2751
原创 IPC -------------共享内存全攻略
共享内存:1. 共享内存是一种最为有效的进程间通信方式,进程可以直接读写内存,更不需要任何数据的拷贝2.为了多个进程之间交互信息,内核专门留出一块内存区,可由需要访问的进程将其映射到自己的私有地址空间3.进程可以直接读取这一段内存区,而不需要数据的拷贝,从而大大的提高了效率4.由于多个进程共享一段内存,因此需要某种同步机制,如互斥和信号量等练习:实现用共
2013-06-22 17:31:01 623
原创 文件IO基本使用攻略
练习:实现父进程终端输入,写入文件,子进程读取文件并输出文件内容于终端源代码:#include#include#include #include #include #include #include int do_write(int fd,const char *path);int do_read(int fd,const char *path);int _do_read
2013-06-22 16:57:39 751
原创 文件IO进阶使用
题目:实现一个文件的拷贝,先拷贝前半段,再拷贝后半段(1/2段)调试: ./a.out fork.c info //拷贝fork.c 到info文件运行效果:源代码:copy_file.c#include#include#include#include#include #include #include #include #inc
2013-06-22 16:43:35 607
原创 IPC--------fifo的进阶使用
练习:写两个程序fifo1 、fifo2,各自建立父子进程,子进程用来读管道,父进程用来写管道(即fifo1 的父进程写管道A,fifo2的子进程读A,结果输出到终端;fifo2的父进程写B,fifo1的子进程读B,结果输出到终端),实现fifo1 、fifo2之间的通信调试:./A fifo1 fifo2./B fifo1 fifo2 运行结果:
2013-06-22 16:09:01 579
原创 IPC-------信号的介绍
信号的特点:信号是唯一的异步通信方式进程对信号的处理方式:A : 忽略,对进程不做任何处理B:捕获C: 默认方式处理函数原型:typedef viod(*sighandler_t)(int ); sighandler_t signal(int signum, sighandler_t handler);signum:信号处理函数handle
2013-06-22 15:35:13 575
原创 IPC ------有名管道fifo
fifo有名管道:简介:不同进程间通过管道文件名找到内核中的管道,进行通信功能:可以在非亲缘关系间进程通信特点:有名管道指的是文件系统存放的文件名,而管道是存在内核中练习:运行两个程序,一个程序建立fifo,打开fifo,通过终端向其中写入数据,另一个程序打开fifo并读取其中数据输出到终端运行效果:write端:read端:源码提供:
2013-06-22 15:17:59 758 1
原创 IPC----pipe的使用
pipe属于进程间通信的一种方式,使用时注意以下几点:1.常用与亲缘关系间进程通信(亲缘关系进程存在数据拷贝)2.无名管道属于内核空间3.无名管道创建成功会产生两个文件描述符:fd[0]用于读管道,fd[1]用于写管道pipe原型:int pipe (int pipefd[2]);//创建无名管道,成功返回0,失败返回-1举例:父进程将一个文件内容通过匹配传给子进程源代
2013-06-22 14:53:37 868
原创 进程管理--回收僵尸态子进程
大家都知道一个子进程结束后会变成僵尸态进程,编程时往往会调用wait函数,但是wait()函数通常会引发阻塞,故我们常采用wait_pid()函数:wait_pid()函数原型为 pid_t wait_pid(pid_t pid,int *status,int options);参数status:返回进程改变的状态参数options: WUNTRANCED ------R->T
2013-06-22 14:28:49 930
原创 用exec函数族实现shell脚本
简介:exec 函数族,非常强大可以执行我们在linux下操作的shell脚本命令思路:考虑到exec函数每执行一次即开辟一个进程,故我们要考虑到回收子进程的操作运行结果:具体源码为myshell.c注意我使用是execvp,大家可以使用execv,execl,execp等#include#include#includeint main(int argc, c
2013-06-22 12:02:57 1450
原创 pthread_cond_wait用法解析与案例
pthread_cond_wait用法解析与案例 pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex)函数传入的参数mutex用于保护条件,因为我们在调用pthread_cond_wait时,如果条件不成立我们就进入阻塞,但是进入阻塞这个期间,如果条件变量改变了的话,那我们就漏掉了这个条件。因为这个线程还没有放到等
2013-06-22 11:50:16 2118
原创 创建守护进程
创建方法:1.创建子进程,杀死父进程2.建立新的会话3.设立当前目录为根文件目录4.重设文件掩码5.关闭不需要的文件描述符题目:写一个程序,有守护模式和常规模式,写一个日志文件,每隔一秒向文件中写入当前日期时间运行时:./a.out 1(daemon mode ) /log运行效果:#include#include#include #i
2013-06-20 22:02:24 601
原创 外企面试常见问题及分析
1.Working Experience (1) Please introduce your working experience briefly. (2) What contribution did you make to your previous organization/team? 2.Personality (1) What's your greatest weaknes
2013-06-20 19:22:48 689
转载 嵌入式经典笔试题-----不看后悔啊
C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。 从被面试者的角度来讲,你能了解许多关于出题者或监考者的情况。这个测试只是出题者为显示其对ANSI标准细节的知识而不是技术技巧而设计吗?这个愚蠢的问题吗?如要你答出某
2013-06-20 18:55:52 2562
原创 十条嵌入式软件开发秘诀
在嵌入式软件开发过程中,一般来说,花在测试和花在编码的时间比为3:1(实际上可能更 多)。这个比例随着你的编程和测试水平的提高而不断下降,但不论怎样,软件测试对一般人来讲很重要。很多年前,一位开发人员为了对嵌入式有更深层次的理 解,向Oracle询问了这样的一个问题:我怎么才能知道并懂得我的系统到底在干些什么呢? Oracle 面对这个问题有些吃惊,因为在当时没有人这么问过,而同时代的嵌入式开
2013-06-20 18:42:53 702
原创 ping 的实现
项目功能:模拟dos界面下的ping功能项目名称:ping 的实现开发环境:Linux/C注: 函数中具体API的调用及原理清参考草根老师的博客调试效果:1.myping.c#include #include #include #include #include #include #include #include #include #
2013-06-18 19:54:46 640
原创 基于UDP的局域网聊天室
项目功能:实现服务器与客户端的下载与上传,及linux系统下的tftp功能项目名称:tftp--实现服务器与客户端的下载与上传开发环境:linux /C开发工具:GCC/GDB 网络协议:TCP/IP补充说明:程序中默认server端有upload文件夹用以接收client端上传的数据,client端有download文件夹用以下载server端
2013-06-18 19:19:11 1142
原创 tftp--实现服务器与客户端的下载与上传
项目功能:实现服务器与客户端的下载与上传,及linux系统下的tftp功能项目名称:tftp--实现服务器与客户端的下载与上传开发环境:linux /C开发工具:GCC/GDB 网络协议:TCP/IP补充说明:程序中默认server端有upload文件夹用以接收client端上传的数据,client端有download文件夹用以下载server端
2013-06-18 18:33:46 4014 1
原创 学生管理系统
项目功能:主要能实现用户对学生信息的增、删、改、查以及排序等项目名称:学生管理系统开发环境:linux /C开发工具:GCC/GDB 开发流程:编译流程:1.cc *.c -lsqlite3 运行l流程:1. ./a.out 调试效果:项目源文件由以下三个组成:1. stu
2013-06-18 17:18:06 1094
原创 在线词典的制作
在线词典的功能是用户能够通过自己注册 的账号登陆,查询单词或词组的含义。项目名称:在线词典开发环境:linux /C开发工具:GCC/GDB SQlite开发流程:编译流程:1.cc load_dict.c dict.txt data.deb -lsqlite3 //注意dict.txt为词典txt文件 ,data.deb为sqlite数据库 2.
2013-06-18 16:49:01 1813
原创 上海科源电子有限公司笔试题(带答案)
数电知识:1.用单片机和数码管连接起来画电路图注:该电路为一个三位7段数码管,P3.4、P3.7、P3.5为位选,P1口为段选2.电阻的颜色,计算电阻值?写出两个色环电阻的阻值,比如红蓝黑,电阻是多大?每种颜色代表不同的数字,如下: 棕1 红2 橙3 黄4 绿5 蓝6 紫7 灰8 白9 黑0 , 金 5% 银
2013-06-17 18:33:04 2900 11
原创 实现链表中存储数据的逆序
思路:1.先存入数据到链表,然后将最后的元素插到链表头,然后删除链表尾元素,再依次将链表尾元素顺序插到链表头2.新建两个链表,.先存入数据到链表1,再将,链表1的数据从表头拷贝到链表2即可注意:两种方法均采用头插法#include#includetypedef struct _linkode_{int data;struct _linkode_ *next;
2013-06-16 17:27:04 1218
原创 北京凝思科技笔试题(带答案)
题目1: 在Linux系统中,请用C语言编写接口函数,调用该接口函数可返回系统硬盘的大小、分区、使用情况等信息。请不要调用系统命令 返回相关信息。另外,请提供简单的设计说明书(说明设计思路,设计中的重点和难点等)、使用说明书以及测试用重点:.找到相应的接口和结构体了解相互它们相互之间的联系难点:各种参数之间的算法#include#include//#in
2013-06-15 22:23:47 5446
原创 函数指针我的一点看法
(*(void(*)())0)(),这是在C陷阱与缺陷中,关于解决计算机开机启动后,硬件读取首地址为0位置的子例程的代码。 先看(*fp)(),fp是一个函数指针,*fp就是该指针所指向的函数,(*fp)()就是调用该函数的方式。 我们按照题目要求假设可以的话,则字面上可以写成(*0)();但是,正如(*fp)(),运算符*必须要一个 指针来作操作数,并且是函数指针,这样经过运算
2013-06-14 17:50:03 721 1
原创 用栈实现四则运算
#include #include //header file of isdigit#define MAXSIZE 100//the max length of the expresionchar ch[7] = {'+','-','*','/','(',')','#'};int in[7] = {3,3,5,5,1,6,0};//the order of operator i
2013-06-13 20:23:25 1087
原创 北京君正公司笔试题(带答案)----回忆版
1, 简述以下命令作用 ls,cd,rm,mv,grep,apt-get,make menuconfig,nm; 用你熟悉的语言实现memcpy,并说明memcpy存在什么问题,怎样改进效率ls: 查看当前目录下所有文件cd : 打开目录或者rm :删除文件mv: 转移文件grep:筛选apt-get: 安装软件make menuconfig : 图形化的内核配置
2013-06-11 17:06:14 4307 3
qemux64 + ovmf.fd + busybox-img + fwts
2022-05-03
2020-UEFI docs packages-all.7z
2020-07-03
IA32 EDS 三卷 (SDM).7z
2020-06-30
手动生成haa_xxx. xml文件并测试
2017-12-28
linux_googlechrome&chomedriver
2017-01-19
MTK 平台 camera 驱动总结
2015-02-07
51 函数发生器外加程序
2011-06-07
240320液晶的讲解,及程序分析
2011-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人