linux上电自启动应用程序详解

每当我学习一个新的东西得时候都是会 遇到一些错误,但是我会非常努力的去解决它,今天这个自启动应用程序花了我两个小时的时间才解决了。所以说遇到问题的时候要去思考、分析。下面我就来谈谈linux上电自启动应用程序,以及我遇到的问题。希望能给你带来一些启发。

我这里有一个项目是用鼠标和触摸屏代表输入设备,LCD代表显示设备,一个简易的数码相框,当我制作成功后手动执行一些命令是能够正常启动应用程序的,当我写成一个脚本后程序就读取错误了,描述如下:

我在/usr/etc/目录下建了一个test.sh 脚本程序,内容如下:(记得加上可执行权限)

#!/bin/sh
cd /mnt

/sbin/insmod s3c_ts.ko                /* 加载触摸屏驱动 */
./digitpic MSYH.TTF &            /* 应用程序的启动 */

在/etc/init.d/rcS   最后一行添加exec /usr/etc/test.sh

但是程序上电后启动打印触摸数据读取错误,打印的信息是从digitpic这个应用程序中打印出来的。但是我用ts_calibrate 命令来测试  触摸屏驱动程序确实是成功加载了的,这里就让我感觉很意外,后来我找了各种方法都没有成功,最后我定位打印信息去看,才发现是配置触摸屏错误,原来才是我们没有配置触摸屏,但是我们确实在/etc/profile中配置了触摸屏的,内容如下:

export TSLIB_TSDEVICE=/dev/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/lib/ts/
export TSLIB_CONSOLEDEVICE=/dev/tty1
export TSLIB_FBDEVICE=/dev/fb0

经过我对Linux文件启动顺序才发现/etc/init.d/rcS 文件比/etc/profile 文件先执行,在这里终于把错误找到了,当我们运行/etc/init.d/rcS这个文件里面的test.sh脚本程序的时候,我们还没有配置触摸屏驱动程序,但是我们已经在使用这个触摸屏驱动程序了,所以这个触摸屏驱动的配置应该放在这个脚本之前去执行,所以这里问题得到了完美的解决。

这里送给朋友们几句话,遇到问题一定要自己多思考,自己想办法去解决。有些人就得说了好浪费时间,我在这里说一下,一个程序员的习惯很重要,如果你一心是想在网上找代码,你绝对成为不了高手,只有自己动手实践了才是真理,很多网友喜欢在群里面或者论坛上发一些跪求代码,求大神解答啊之类的话,很多网友连自己都没有定位到自己的问题所在,还找别人去给你解答,你认为这个可能吗?

时间: 2024-11-03 04:05:33

linux上电自启动应用程序详解的相关文章

linux开机自启动设置inittab详解

linux下的/etc/inittab中的英文解释: This file describes how the INIT process should set up  the system in a certain run-level.The inittab file describes which processes are started  at  bootup  and      during  normal operation. 通俗的说就是控制linux启动时的一些程序及级别. run-

Linux如何实现开机启动程序详解

Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. 加载内核LILO启动之后,如果你选择了Linux作为准备引导的操作系统,第一个被加载的东西就是内核.请记住此时的计算机内存中还不存在任何操作系统,PC(因为它们天然的设计缺陷)也还没有办法存取机器上全部的内存.因此,内核就必须完整地加载到可用RAM的第一个兆字节之内.为了实现这个目的,内核是被压缩

Linux驱动开发必看详解神秘内核(完全转载)

Linux驱动开发必看详解神秘内核 完全转载-链接:http://blog.chinaunix.net/uid-21356596-id-1827434.html   IT168 技术文档]在开始步入Linux设备驱动程序的神秘世界之前,让我们从驱动程序开发人员的角度看几个内核构成要素,熟悉一些基本的内核概念.我们将学习内核定时器.同步机制以及内存分配方法.不过,我们还是得从头开始这次探索之旅.因此,本章要先浏览一下内核发出的启动信息,然后再逐个讲解一些有意思的点. 2.1 启动过程 图2-1显示

Linux 下 Make 命令实例详解

  Linux 下 Make 命令实例详解          Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.本文我们将用一些实例来讨论 make 命令背后的工作机制. Make 如何工作的 对于不知道背后机理的人来说,make 命令像命令行参数一样接收目标.这些目标通常存放在以 "Makefile" 来命名的特殊文件中,同时文件也包含与目标相对应的操作.更多信息,阅读关

Linux下DNS服务器搭建详解

Linux下DNS服务器搭建详解 简介: DNS服务器的作用就是就好比生活中的电话簿.114查号台一样,为各种网络程序找到对应目标主机的IP地址或对应的主机域名. DNS系统的作用: 正向解析:根据主机名称(域名)查找对应的IP地址(实际应用中最多的) 反向解析:根据IP地址查找对应的主机域名(不常用,一般用于搭建邮件服务器时.) 根据服务器与所提供域名解析记录的关系,将DNS服务器分为不同的角色: 缓存域名服务器 也称为 唯高速缓存服务器 通过向其他域名服务器查询获得域名->IP地址记录 将域

linux 下的yum命令详解_Linux

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载.安装.yum提供了查找.安装.删除某一个.一组甚至全部软件包的命令,而且命令简洁而又好记. yum的命令形式一般是如下:yum [options] [command] [package ...] 其中的[opt

linux系统下hosts文件详解及配置_linux shell

hosts文件 hosts -- the static table lookup for host name(主机名查询静态表). hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下.hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名.在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决.通过可以将常用的域名和ip地址映射加入到hosts文件中

Linux进程上下文切换过程context_switch详解--Linux进程的管理与调度(二十一)【转】

转自:http://blog.csdn.net/gatieme/article/details/51872659 版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gatieme   目录(?)[-] 前景回顾 1 Linux的调度器组成 2 调度工作 进程上下文 1 进程上下文的概念 2 上下文切换 context_switch进程上下文切换 1 context_switch完全注释 2 prepare_arch_switch切换前的准备工

led点阵 74hc595-求两块74hc595驱动4个8乘以8的led点阵的程序详解及原理

问题描述 求两块74hc595驱动4个8乘以8的led点阵的程序详解及原理 #include //--重定义函数变量--// #define uchar unsigned char #define uint unsigned int #define ulong unsigned long //--定义SPI要使用的 IO--// sbit MOSIO = P3^4; sbit R_CLK = P3^5; sbit S_CLK = P3^6; //---全局变量声明--// ulong colum