工作笔记(二)

来源:互联网 发布:天天快报软件下载 编辑:程序博客网 时间:2024/05/16 06:48

openfirmware
>kernel是放在offset为0的地方,而uboot放在了最上面,这跟一直了解的地方很是不同;

这与PPC的启动向量位置有关系了,MIPS放在0xBFC00000。具体什么位置要看你的CPU型号,比如E500,启动向量就在0xFFFFFFFC,所以u-boot就放在最顶端了。

>>不知道内核中是如何使用这种dts文件的

需要用dtc将dts编译成dtb格式,传递dtb的起始地址给kernel,kernel会按照一个一个的device node来处理的,这个是openfirmware标准规定的

>>如果我要想自己写的话,应该遵照怎样的语法才对,之前在网上也有搜索过,但是目前还未发现相关的资料。

kernel的Documentation目录里面就有一个文档,写的还比较详细,虽然稍微有点老,还是很值得参考的。
=======================================
在此文件中配置启动session:

/etc/init.d/tinyx


查看硬件配置命令:
lshw


关机时显示信息:去掉网络程序配置文件
vim /etc/rc0.d/S15wpa-ifupdown
/etc/network/interfaces
NetworkManager

fg/bg
fg/bg操作继续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行.


控制字符都是可以用(stty命令)更改的。
楼主可以用stty -a看看终端配置。
 
ctrl-c 是发送 SIGINT 信号,终止一个进程
ctrl-z 是发送 SIGSTOP信号,挂起一个进程
ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF
 
但是ctrl-d在具体比如getchar应用中又有些特别之处,可以参考"getchar()和EOF"那篇文章
文章出处:http://www.diybl.com/course/3_program/c++/cppsl/20081117/151374.html

 


关机和开机是显示进度条的配置文件:
/usr/lib/usplash/limeos-shutdown.so
配置文件:
usplash /etc/rcS.d/S01mtc-setup


=========================================

从列表看到的查看gtk版本的一些方法:

一、使用外部命令查看安装的gtk库版本

$pkg-config --modversion gtk+    (查看1.2.x版本)

$pkg-config --modversion gtk+-2.0  (查看 2.x 版本)

$pkg-config --version (查看pkg-config的版本)

$pkg-config --list-all |grep gtk (查看是否安装了gtk)

二、使用dl库查看动态链接库中的符号链接:

 

#include <dlfcn.h>
#include <stdio.h>
int
main(void)
{
    void *gtk;
    int *maj, *min, *mic;
    int status = 1;

    gtk = dlopen("libgtk-x11-2.0.so", RTLD_LAZY);
    if (!gtk)
        return 1;
    maj = dlsym(gtk, "gtk_major_version");
    min = dlsym(gtk, "gtk_minor_version");
    mic = dlsym(gtk, "gtk_micro_version");
    if (maj && min && mic) {
        printf("%d.%d.%d\n", *maj, *min, *mic);
        status = 0;
    }
    dlclose(gtk);
    return status;
}
 

写好文件后,命名为test.c,
编译
     gcc -ldl test.c -o test
运行
    ./test
输出
    2.12.9
三、如果在gtk程序运行中要检测版本,可以使用gtk库中定义的符号常量。

extern      const guint gtk_major_version;
extern      const guint gtk_minor_version;
extern      const guint gtk_micro_version;
extern      const guint gtk_binary_age;
extern      const guint gtk_interface_age;
gchar*      gtk_check_version               (guint required_major,
                                             guint required_minor,
                                             guint required_micro);

#define     GTK_MAJOR_VERSION
#define     GTK_MINOR_VERSION
#define     GTK_MICRO_VERSION
#define     GTK_BINARY_AGE
#define     GTK_INTERFACE_AGE
#define     GTK_CHECK_VERSION               (major,minor,micro)


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zdl1016/archive/2008/08/20/2802164.aspx

 

strace [ -dffhiqrtttTvxx ] [ -acolumn ] [ -eexpr ] ...
[ -ofile ] [ -ppid ] ... [ -sstrsize ] [ -uusername ] [ command [ arg ... ] ]

strace -c [ -eexpr ] ... [ -Ooverhead ] [ -Ssortby ] [ command [ arg ... ] ]

-c 统计每一系统调用的所执行的时间,次数和出错的次数等.
-d 输出strace关于标准错误的调试信息.
-f 跟踪由fork调用所产生的子进程.
-ff 如果提供-o filename,则所有进程的跟踪结果输出到相应的filename.pid中,pid是各进程的进程号.
-F 尝试跟踪vfork调用.在-f时,vfork不被跟踪.
-h 输出简要的帮助信息.
-i 输出系统调用的入口指针.
-q 禁止输出关于脱离的消息.
-r 打印出相对时间关于,,每一个系统调用.
-t 在输出中的每一行前加上时间信息.
-tt 在输出中的每一行前加上时间信息,微秒级.
-ttt 微秒级输出,以秒了表示时间.
-T 显示每一调用所耗的时间.
-v 输出所有的系统调用.一些调用关于环境变量,状态,输入输出等调用由于使用频繁,默认不输出.
-V 输出strace的版本信息.
-x 以十六进制形式输出非标准字符串
-xx 所有字符串以十六进制形式输出.

  
clock
apt-get install gdesklets
grep -R "Appfinder" *
========================

http://218.188.154.170/index.php
set gatewayip 192.168.10.1
set serverip 192.168.10.232
set ipaddr 192.168.10.205
set ethaddr 00:e0:5e:00:e5:21
set nfsboot 'set bootargs ip=dhcp root=/dev/nfs rw nfsroot=$serverip:$rootpath,proto=tcp,nolock console=$consoledev,$baudrate $othbootargs;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr - $fdtaddr'
set bootfile uImage-p2f
set fdtfile  mpc5121e-p2f.dtb
set rootpath /home/james/p2f-rootfs

set nfsboot 'set bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off console=$consoledev,$baudrate $othbootargs;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr - $fdtaddr'

=======================

1,usplash在/etc/usplash.conf 配置文件中配置分辩率。

2,/etc/rc2.d/S01mtc-setup中。进动态获得屏的分辩率,并写入到/etc/usplash.conf 文件中。


如何知道一个变量是什么类型?
如何知道分配的内存有多大?
如何知道 select 的 fd_set 里哪个句柄是无效的?
如何知道指针是不是有效的?
如何通过文件句柄得到文件名?

电池模块文件:
'/lib/modules/2.6.24.6/kernel/drivers/power/ds2756_battery.ko


快捷键配置文件
/usr/share/xfce-mcs-plugins/shortcuts/default.xml


================================
关机图片
/usr/lib/share/limeos_shutdown.so

/usr/share/limeos/bj1024x600.png

===============================
gtk-chtheme

修改gdm所对应的xfbdev(X-server)
sudo vi /etc/gdm/gdm-cdd.conf


===========================================

desktop可能会放置的目录:
(1)/usr/share/gnome/apps/Games
(2)/usr/local/share/applications/
(3)/usr/share/applications/

1. 主菜单:主菜单为 ~/.config/xfce4/desktop/menu.xml。修改可用"Xfce Settings Manager"中的"Menu editer",使用上相对简单,不做过多详述。

2. System子菜单[menu.xml中的---include---System]:由"~/.local/share/applications/"与"/usr/share/applications/"两个目录组成,由系统自动生成若干xml子菜单文件存放在"~/.cache/xfce4/desktop/"。因此,在对子菜单修改后,需要删除":~/.cache/xfce4/desktop/"目录下的所有文件,logout/login即可。

3.System子菜单是与"~/.local/share/applications/"与"/usr/share/applications/"两个目录内的".desktop"文件相对应的。因此,仅需要修改相应的".desktop"文件即可以实现修改System子菜单的某一条目[应用程序]。

4.添加新的应用程序,可以在"~/.local/share/applications/"与"/usr/share/applications/"[前者优先于后者]创建".desktop"[创建细节可以参看其他已有".desktop"文件]。而删除则是在".desktop"文件内追加一条语句"NoDisplay=true"即可。若在"~/.local/share/applications/"与"/usr/share/applications/"内存在相应应用程序的".desktop"文件,而菜单内并无显示,当希望显示此应用程序时,则可以去掉".desktop"的"NoDisplay=true"。

5. 由于"~/.local/share/applications/"优先于"/usr/share/applications/"目录,用户尽可能在"~/.local/share/applications/"内创建、修改、覆盖".desktop"文件。

6.当需要将某一项目[应用程序][如Calendar]从一个类别/菜单[如Office]移到另一类别/菜单[如System]时,可以修改相应的".desktop"文件[=]的"Categories=X-XFCE;Office;Calendar;GTK;"语句为"Categories=X-XFCE;System;Calendar;GTK;"即可。注:为了不影响其他帐户的使用,可以进行如下操作:
代码:
cp /usr/share/applications/xfcalendar.desktop ~/.local/share/applications/
   mousepad ~/.local/share/applications/xfcalendar.desktop

修改代码:
Categories=X-XFCE;Office;Calendar;GTK;
为代码:
Categories=X-XFCE;System;Calendar;GTK;

注:同样也可以修改".desktop"文件中的"Exec"语句,以此来修改程序启动时的参数。如用"alltray"来启动"thunderbird",使其可以Tray化[托盘化]。

代码:
Exec=alltray -s thunderbird %u

7. 修改完后注意需要logout/login生。

附:
在Xubuntu桌面上添加应用程序的快捷方式:
"Applications"->"Accessories"->"Appfinder",鼠标左建拖到桌面即可。

===========================================================
ktouch (练习打字),gcompris(教育套件),ktuberling(土豆游戏),
childsplay,marble(地球仪),
kgeography(地理学习程序),edu(教育头套件):
包括(klettres ,khangman ,kpercentage,kbruch
,kig ,kmplot,atomix,kbounce,,kmahjongg   kgoldrunner
,kreversi)
 
sudo apt-get install  ktouch ktuberling childsplay marble kgeography klettres khangman kpercentage kbruch kig kmplot atomix kbounce kmahjongg kgoldrunner kreversi

==========================================================