- 博客(18)
- 资源 (4)
- 收藏
- 关注
转载 Linux内核调试方法的总结
内核开发比用户空间开发更难的一个因素就是内核调试艰难。内核错误往往会导致系统宕机,很难保留出错时的现场。调试内核的关键在于你的对内核的深刻理解。一 调试前的准备在调试一个bug之前,我们所要做的准备工作有: 有一个被确认的bug。包含这个bug的内核版本号,需要分析出这个bug在哪一个版本被引入,这个对于解决问题有极大的帮助。可以采用二分查找法来逐步锁定bu
2014-05-30 10:31:16 1501
转载 mcp2515带spi的can驱动移植总结
作者:杨渊明最近LZ接公司安排任务,移植一款CAN总线设备Mcp2515。由于在前次任务中有SPI经验,所以在接受任务是主要关注此设备采用SPI接口。所以一直没有关注CAN相关的知识,后续过程中遇到了不少麻烦,走了一些弯路。特把此次移植过程记录整理一下。CAN总线是一种在汽车上广泛采用的总线协议,被设计作为汽车环境中的微控制器通讯。LZ理论知识有限,网上抄一句介绍的吧。如下:CAN(Con
2014-05-26 15:44:42 3287
转载 Linux 的启动流程
作者: 阮一峰日期: 2013年8月17日半年前,我写了《计算机是如何启动的?》,探讨BIOS和主引导记录的作用。那篇文章不涉及操作系统,只与主板的板载程序有关。今天,我想接着往下写,探讨操作系统接管硬件以后发生的事情,也就是操作系统的启动流程。这个部分比较有意思。因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多;但是,一旦进
2014-05-26 15:25:21 447
转载 Busybox简介
这里对busybox进行简单地介绍。busybox是Linux的一套工具集合,它将常用的linux命令例如"ls","echo","cd",甚至是"sh","vi",等用最简单的方式进行了实现,然后通过编译安装busybox就可以快速建立起一个基本的,可用的,轻量级的,linux文件系统(大小可以小到只有几百K)。在嵌入式领域制作自己的Linux文件系统,busybox是一个非常好用的工具。
2014-05-22 16:50:33 1385
转载 ARM-Linux配置DHCP自动获取IP地址
备注:内核版本:2.6.30.9busybox版本:1.15.2PC Linux和开发板Linux的工作用户:root1. 配置内核:[*] Networking support ---> Networking options ---> Packet socket Unix domain sockets [*] TCP/IP n
2014-05-22 14:40:18 688
转载 嵌入式Linux工控主板调试串口转换为应用串口的方法
英利公司的EM9X60系列工控主板(包括 EM9160、EM9360、EM9460、EM9660等)均具有7路物理串口。在Linux系统中,6路串口作为应用串口,剩下的1路作为调试串口。一般情况下调试串口被系统内核所占用,用来显示内核输出信息以及console控制终端。这样的配置可满足大多数应用对串口的需求。 在一些特殊的应用中,需要的串口数超过6路,这时可把缺省作
2014-05-17 10:05:39 2152
转载 linux自动以root登录,并自动启动用户程序的设置方
系统自动以root登录,并自动启动用户程序的设置方法第一步:删除root用户vi /etc/passwd该文件的第一行:root:X:0:0:root:/root:/bin/bash,只需要把第二个字段X删除就可以。变为: root::0:0:root:/root:/bin/bashvi /etc/shadow该文件的第一行:root:!^&#*@(&#*&
2014-05-16 16:40:06 1627
转载 rc.local自启动学习
linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘。本文中假设inittab中设置的init tree为:/etc/rc.d/rc0.d/etc/rc.d/rc1.d/etc/rc.d/rc2.d/etc/rc.d/rc3.d/etc/rc.d/rc4.d/etc/rc.d/rc5.d/etc/rc.d/rc6.d
2014-05-14 10:21:29 1761
转载 Busybox init进程启动过程 (资料收集)
busybox中的init程序可以完成初始化的基本功能而且去掉了System V系统init程序的多余功能,init程序执行的顺序如下: .创建init的信号处理 .初始化控制台 .分析inittab文件,/etc/inittab .执行系统初始化脚本,/etc/init.d/rcS .执行所有inittab中类型为wait的程序 .执行所有inittab中类型
2014-05-13 21:10:51 1903
转载 开机自动启动自己编写的QT程序
建立好QT运行环境后,要运行自己编写的基于QT/E的图形界面程序,一般需要在终端输入命令才能运行,并且第一个运行的QT程序要加上 -qws 参数。以下方法可以让QT程序在开机的时候自动启动,并作为守护进程在后台运行。由于QT程序的运行环境需要配置tslib和qt相关的环境变量,所以在启动QT程序前要保证程序的运行环境已经设置好了相应的环境变量。嵌入式下设置环境变量可以有几种方法:
2014-05-13 08:39:33 8068
转载 Linux开机自动登录root,并启动应用程序
只需要修改etc目录下的inittab文件和init.d路径下的rcS文件。在inittab文件中选择执行以下两句#采用界面登陆::askfirst:/sbin/getty 115200 console#直接进入系统,无须登陆console::respawn:/bin/sh 至于开机启动应用程序,最简单的方法是在etc目录下的rc.local
2014-05-12 16:52:41 4215 1
转载 linux开机启动脚本的顺序
linux下开机自动启动脚本所涉及的知识和方法如下:1、相关基础知识点 1)redhat的启动方式和执行次序是: 加载内核 执行init程序 /etc/rc.d/rc.sysinit # 由init执行的第一个脚本 /etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式 /etc/rc.d/r
2014-05-12 16:00:39 1835
转载 Qt/E程序ARM板上开机自启动
编辑rcS文件,加入启动脚本即可vi /etc/init.d/rcS按o切换输入模式,输入:/opt/Qtopia/bin/fireMonitor -qws按esc切换命令模式,按‘:’,然后输入wq (保存退出)出现问题:重启后没有运行fireMonitor报错:/opt/Qtopia/bin/fireMonitor: error while loading sh
2014-05-12 15:28:19 1667
转载 在C++类中定义线程函数的方法
昨天用C++把我写的一个游戏功能进行了封装,其中涉及到一个小问题,就是我封装的C++类中必须定义2个线程函数,比如像下面这样: 1. class A 2. { 3. public: 4. A(); 5. ~A(); 6. 7. void XXX(void *p); //此函数为线程回调函数
2014-05-10 15:33:55 852
转载 Linux网络编程:TCP服务器(单进程多用户),使用select方法实现
Linux下的单进程多用户TCP服务器,采用select方法实现。/************************************************* * File name : server.c * Description : 单进程并发服务器 * Author : sg131971@qq.com * Version : V1.0 * Date
2014-05-06 11:36:03 826
转载 Linux TCP server系列(1)-简单TCP服务器+多进程处理客户请求
目标: 完成一个精简TCP服务器,可接收来自多个用户的请求,并返回结果。思路: (1)服务器 C++ TCP服务器的实现主要由以下几个函数来完成: a)socket 创建服务器监听套接字 b)bind 绑定服务器监听信息到套接字上 c)listen 开始监听,接收客户端的TCP连接 d)acc
2014-05-06 11:12:26 1442
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人