Chinaunix首页 | 论坛 | 博客
  • 博客访问: 826189
  • 博文数量: 54
  • 博客积分: 8076
  • 博客等级: 中将
  • 技术积分: 648
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-01 15:11
文章分类

全部博文(54)

分类: LINUX

2008-04-25 11:03:17

2010/4/3
在ATM行业混过一段时间,主要做整机的控制程序。当时使用的MCU芯片是8位单片机,没上操作系统,一个控制系统成万行代码拼凑在一块,看得我那个蛋疼。事实上正常流程是非常简单的,复杂在于异常的处理。一个控制系统测试了一年多,里面异常处理加了又加改了又改,有时候回头看去也迷糊了。想来其他工控方面的系统也类似。
不上操作系统,不把程序模块分化,开发久了代码必出现乱糟糟的情况,而且会出现难以再添加其他模块的问题,或者添加上去了出现不可预知的异常。虽然有操作系统时也不可避免这些问题,当时总会入手处理简单些--前提时这个操作系统经过严格考验。
现在有个想法写个RTOS核心,其他功能没什么新意,主要着眼点在于工控方面的异常处理。总的来说,内核可维护一个应用异常处理表,用户可往该表注册新的异常处理,异常处理与主程序采用消息通知机制?希望可以将主程序和异常处理分离开来,增加一个异常处理不会感觉困难。
现先把这些记录下来,我比较健忘;不一定动手去做这个事情,我很懒。
 
/////////////////////////////////////////////////////////////////////////////////////////////////
 
Debian静态IP配置备忘

1、执行命令:sudo gedit /etc/network/interfaces
2、将前两行用“#”注释掉,当然你也可以删除,不过最好不要删,然后在下面添加下面这几行代码:
iface eth0 inet static命令:sudo gedit&n
address 000.000.000.000(IP地址)
netmask 255.255.255.0
gateway 000.000.000.000(网关)
3、将里面的nameserver改为你的DNS,如果有两个DNS,就再添加一个。
4、执行命令:sudo /etc/init.d/networking restart
 
/////////////////////////////////////////////////////////////////////////////////////////////////
 
Debian启动TFTP、NFS、Telnet服务备忘
 
1、TFTP:首先需要安装tftpd软件包:sudo apt-get install tftpd
设置tftp目录路径,在 /etc/inetd.conf 添加如下字句来实现:
tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot
重启服务。

2、NFS:apt-get install nfs-kernel-server、apt-get install nfs-common
设置nfs共享目录:在/etc/exports中添加/opt/nfs *(rw,no_root_squash,no_all_squash)
重启服务即可访问:mount HOSTIP:/opt/nfs /mnt

3、telnet:agt-get install telnetd
新建一个文件/etc/xinetd.d/telnet,并往里面添加以下内容:
service telnet
{
        disable = no
        flags           = REUSE
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/sbin/in.telnetd
        server_args     = -h
        log_on_failure  += USERID
}
重启服务
 
4、Apache:目标板如果有wget功能,可以在开发主机启动apache,再配合脚本进行开发调试,那是极为方便的
sudo apt-get install apache
修改/etc/apache/httpd.conf文件,将DocumentRoot /var/www修改为DocumentRoot /opt/nfs(注意有两次要修改的);并将/var/www中的index.html复制到/opt/nfs下。这样就可以访问下载/opt/nfs子目录下的文件了
wget http://192.168.1.26/image/programguide.txt/

 
/////////////////////////////////////////////////////////////////////////////////////////////////
 
indent的使用
 
环境:Debian
1)、sudo apt-get install indent
2)、cd ~
3)、touch ./.indent.pro
4)、在.indent.pro文件中加入以下内容

-bad -bap -bbb -bbo -nbc -bl -bli0 -bls -c33 -cd33 -ncdb -ncdw -nce -cli0 -cp33 -cs -d0 -nbfda -di2 -nfc1 -nfca -hnl -ip5 -l75 -lp -pcs -nprs -psl -saf -sai -saw -nsc -nsob -nss -i4 -ts4 -ut

5)、indent ./fb_test.c
 
/////////////////////////////////////////////////////////////////////////////////////////////////
阅读(4745) | 评论(8) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-08-11 21:13:07

将ubuntu DVD做软件源 首先将ubuntu DVD挂接到缺省CDROM,ubuntu下缺省CDROM挂接点是/cdrom, $ sudo mount -o loop -t iso9660 /home/guandl/ubuntu-8.04.1-dvd-i386.iso /cdrom 将/cdrom增加到软件源头列表(如果有兴趣,执行完下满这步骤之后,可以看一看/etc/apt/sources.list的变化) $ sudo apt-cdrom add 更新软件源目录 $ sudo apt-get update 现在就可以使用ubuntu DVD了

chinaunix网友2009-04-25 23:08:10

怎样让linux2.6.14的S3C2410RTC跑起来 首先make menuconfig,在字符驱动中选中"S3C2410 RTC Driver",但注意不要选"Enhanced Real Time Clock Support"。但光是这样是不会出现/dev/misc/rtc节点的。因为默认在初始化里没有加入S3C2410RTC的设备。因此,接下来要修改arch/arm/mach-s3c2410/mach-smdk2410.c,在struct platform_device *smdk2410_devices[]中添加"&s3c_device_rtc,"。s3c_device_rtc结构体已在arch/arm/mach-s3c2410/devs.c中定义。 最后编译内核,加载运行,出现如下提示: S3C2410 RTC, (c) 2004 Simtec Electronics s3c2410-rtc s3c2410-rtc: rtc disabled, re-enabling 至此大功告成。

chinaunix网友2009-04-25 22:03:33

必须以root用户登录的终端(sudo -i) 1、打开终端,执行命令:sudo gedit /etc/network/interfaces 2、将前两行用“#”注释掉,当然你也可以删除,不过最好不要删,然后在下面添加下面这几行代码: iface eth0 inet static命令:sudo gedit&n address 000.000.000.000(IP地址) netmask 255.255.255.0 gateway 000.000.000.000(网关) 3、将里面的nameserver改为你的DNS,如果有两个DNS,就再添加一个。 打开终端,执行4、执行命令:sudo /etc/init.d/networking restart

sep2008-05-12 18:45:55

已在深圳出差。 之前看了开发文档,很多东西都不明白。现在看了实际的开发平台,结合实际东西进行开发,之前不明白的东西突然都想通了。 结论是:不明白的东西先放着,不要急着看,把开发平台、目标板搭起来,做一遍demo,自然就会一通百通。

sep2008-04-30 15:34:20

阶段总结: 一、交叉编译环境的架设 1、编译环境:gcc、vim、build-essential、module-assistant、linux-headers、linux-source 2、调试环境:gdb、gdbserver 3、仿真平台:qemu-mips、scratchbox、skyeye-arm 4、文件共享:samba、nfs 5、版本控制:svn 二、内核模块编译 已经开始工作,初步整理了提供过来的文档、代码。 要留意环境变量的设置;除了安装软件用root用户登录,平时工作包括编译模块应该用普通用户进行,以免出现混乱。