每当我学习一个新的东西得时候都是会 遇到一些错误。可是我会很努力的去解决它,今天这个自启动应用程序花了我两个小时的时间才攻克了。所以说遇到问题的时候要去思考、分析。以下我就来谈谈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脚本程序的时候。我们还没有配置触摸屏驱动程序,可是我们已经在使用这个触摸屏驱动程序了,所以这个触摸屏驱动的配置应该放在这个脚本之前去运行,所以这里问题得到了完美的解决。

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

linux上电自启动应用程序具体解释的更多相关文章

  1. linux 下通过源代码安装程序 ./configure 解释

    大家 都知道在 linux 通过源代码 安装程序 1. 下载源码 2.解压缩 3. 执行 ./configure 4. make 5 make install make 命令 是对 makefile ...

  2. Linux下的应用程序开机自启动

    Linux下的应用程序开机自启动,目前我知道的有2种: 1.将启动语句写到/etc/rc.local 2.在init.d放置启动脚本 第一种,很简单,直接写进去就行,比如说: /db/mongodb/ ...

  3. 【linux基础】如何开机自启动某个程序-linux工具-ubuntu

    前言 实际使用中应用程序或者服务需要开机自启动,而不是人为手动开启运行,那么,该如何做呢,本文对此进行介绍. 操作过程 1. 确定系统的桌面环境: 具体可参考here; 2. 如何自启动: 博主ubu ...

  4. 在Linux系统如何让程序开机时自动启动

    在Linux系统如何让程序开机时自动启动      核心提示:系统的服务在开机时一般都可以自动启动,那在linux系统下如果想要程序在开机时自动启动怎么办?我们知道在 windows系统“开始”--& ...

  5. Linux中java应用程序的部署,使其开机自动启动

    初步需求:将在Windows/MyEclipse中开发的java应用程序部署到Linux服务器上,使其运行 针对需求,可以参考下面这些文章,但是这些文章很多东西没有提及到,我自己尝试部署运行 在lin ...

  6. 如何使Linux系统上的程序开机后自动运行 (转)

    Linux有自己一套完整的启动体系,抓住了Linux启动的脉络,Linux的启动过程将不再神秘. 阅读之前建议先看一下附图. 本文中假设inittab中设置的init tree为: /etc/rc.d ...

  7. 详解Linux目录(目录树详细解释)

    给大家一篇关于Linux目录 方面的详细说明,好好读一下! Linux目录详解(RHEL5.4) linux有四种基本文件系统类型:--普通文件:如文本文件.c语言源代码.shell脚本等,可以用ca ...

  8. C++ 无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序。

    C++  无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序.但可以写入到H ...

  9. linux 开机自启动软件(包含xampp方法)

    linux设置apache和mysql: linux开启启动的程序一般放在/etc/rc.d/init.d/里面,/etc/init.d/是其软连接. mysql设为linux服务 cp /usr/l ...

随机推荐

  1. Ajax用法

    1.什么是 Ajax? Ajax,英文名 Asynchronous JavaScript and XML,也就是异步的 JavaScript 和 XML.它不是一门新的语言,而是一种使用现有标准的新方 ...

  2. IIS发布asp.net mvc项目(asp.net core也是一样)

    因为之前都是利用其他的工具在linux上面进行发布,导致现在忘记了在IIS上面怎么发布,现在就记录下来,以防不时之需吧 第一步: 在vs里面进行项目发布:指定好发布的位置,点击发布就好了 第二步:右击 ...

  3. CF-558E (线段树/分块)

    解题思路: 很显然突破口就是字符集比较小,分块和线段树都能A 话说线段树时间是分块5倍啊 代码(线段树): #include<cstdio> #include<cstring> ...

  4. 模板 Fail树

    fail树就是将Trie图的Fail指针反指,从而生成一棵树,这个树的性质是:子节点对应字符串为以当前串为后缀,而子节点为原串的前缀,前缀的后缀就是嵌套在原串中的子串. 模板:BZOJ3172 Des ...

  5. PatentTips - Virtual machine management using processor state information

    BACKGROUND OF THE INVENTION The invention generally relates to virtual machine management, and more ...

  6. 看好腾讯,鄙视百度(腾讯的核心竞争力,不是超过10亿的QQ的注册用户,也不是某一项产品、技术方面优势,而是“耐心”:懂得在合适的时间推出合适的产品。”)

    百度,自始至终只是一个低劣的模仿者,且一切向前看,完全违背了一个搜索引擎所应该遵循的基本原则.谁给的钱多就能搜着谁,这跟贩毒有什么区别? 腾讯也在模仿别人,但是,它是模仿然后超越.在中国互联网发展历史 ...

  7. 1.2 Use Cases中 Metrics官网剖析(博主推荐)

    不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ Metrics 指标 Kafka is often used for operati ...

  8. select into from 与 insert into select 区别

    1.INSERT INTO SELECT语句 语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Tab ...

  9. PythonNET网络编程3

    IO IO input output 在内存中存在数据交换的操作都可以认为是IO操作 和终端交互 : input print 和磁盘交互 : read write 和网络交互 : recv send ...

  10. oled模块的驱动芯片和pcb图

    参考自:http://blog.sina.com.cn/s/blog_57ad1bd20102wtq8.html oled的驱动芯片是:SSD1306驱动芯片,这个芯片嵌入在屏幕里面,从外面看不出来, ...