- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 ELF 文件结构
1. 源代码 b.cint printf( const char* format, ...);int global_int_var = 84;int global_uinit_var;void func1( int i) { printf("%d\n",i);}int main(void) { static int static_var = 85;
2011-11-21 16:50:48 444
原创 创建Image, losetup和mount的使用, 并为Image设备加卷标
1. 创建Image文件520个柱面,16个磁头,63个扇区,每扇区512字节. 520x16x63=524160 dd if=/dev/zero of=my.img bs=512 count=5241602. 加载到为bochs的第二硬盘ata0-slave: type=disk, path="my.img", cylinders=520, heads=16, spt=63
2011-11-03 17:17:03 955
原创 gdb调试时忽略信号中断
比如要忽略SIGSEGV, 按如下设置, 调试时将不会受信号干扰(gdb) handle SIGSEGVSignal Stop Print Pass to program DescriptionSIGSEGV No Yes Yes Segmentation fault(gdb) handle SI
2011-11-03 17:03:46 7039
原创 为UML linux 传递kernel参数
直接运行传递参数linux ubda=umfs kernel loglevel=7gdb调试方式传递参数suse:/jingsheng/linux_src/linux-2.6.36 # gdb linuxGNU gdb (GDB) SUSE (7.1-3.12)Copyright (C) 2010 Free Software Foundation, Inc.
2011-11-03 16:30:41 896
原创 __attribute__宏与link脚本的用法
__attribute__宏用于定义变量或函数的编译属性,编译器在链接时参考这些属性参数进行相应的链接操作.比如format属性用于检查函数参数合法性,.section属性用于将变量或函数放入指定段内.__attribute__宏通常与link脚本./arch/ia64/kernel/vmlinux.lds.S配合使用例子:vmlinux.lds.S会将如下函数
2011-11-03 16:23:23 525
原创 C语言中#和##宏
# 用于字符串替换 ##用于名称(不是字符串)连接例子1:#define display(name) printf("---"#name"+++") #define paster( n ) printf( "token" #n " = %d", token##n )int main() { int token8=78; display(aaa);
2011-11-02 15:20:25 384
原创 Linux硬盘启动相关命令
解决file system只读问题:mount -o remount rw /initrd解包:cpio -ivmd initrd压包: find . | cpio -o -H newc | gzip > ../initrd.img
2011-11-01 10:36:53 359
Linux内核移植和根文件系统制作
2012-11-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人