linux c and asm 同时使用
from: 《自己动手写操作系统》
1. 中断向量表 查看 linux/init/main.c in http://lxr.linux.no/#linux+v2.6.32/init/main.c
2.
; [root@XXX XXX]# nasm -f elf foo.asm -o foo.o
; [root@XXX XXX]# gcc -c bar.c -o bar.o
; [root@XXX XXX]# ld -s foo.o bar.o -o foobar
; [root@XXX XXX]# ./foobar
; the 2nd one
; [root@XXX XXX]#
但是我的cygwin下报错:
$ ld -s foo.o bar.o -o foo
foo.o: In function `start':
foo.asm:(.text+0xb): undefined reference to `choose'
bar.o:bar.c:(.text+0x1e): undefined reference to `myprint'
bar.o:bar.c:(.text+0x34): undefined reference to `myprint'
3. cygwin 中文乱码 (http://blog.sina.com.cn/s/blog_3ee207aa010008ml.html )
直接执行
alias ls='ls --color --show-control-chars
--time-style=long-iso'
或者把上面的内容加到/etc/profile中重启Cygwin即可。
为了使使用更方便,推荐增加如下配置信息:
1. 编辑用户home目录下的文件.inputc,去除以下几行的注释:
set meta-flag on
# 关闭bash命令行8字节字符转义符的转换
set convert-meta off
# 使bash命令行支持8字节字符输出
set output-meta on
set input-meta on
2
编辑用户home目录下的文件.bash_profile,在文件末尾加上下面几行:
alias ls='ls --color --show-control-chars
--time-style=long-iso'
export LC_ALL=zh_CN.GB23122
export LC_CTYPE=zh_CN.GB2312
export LANG=zh_CN.GB2312
export XMODIFIERS="@im=Chinput"3
stty cs8 -istrip
stty pass8
# Update: 少了这个less就不支持中文了
export LESSCHARSET=latin1
相关文档:
Vi是Linux系统的第一个全屏幕交互式编辑程序。Vi是“Visual interface”的简称,它在Linux上的地位就仿佛Edit程序在DOS上一样。1、首次使用介绍
<1>用vi打开文件后,是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在命令行模式(comm ......
内存池(memory pool) 是linux2.6的一个新的特性。基本上将,一个内存池允许一个内核成分,如块设备子系统,仅在内存不足的紧急情况下分配一些动态内存来使用。
内存池是动态内存的储备,只能被特定的内核成分(即池的“拥有者”)使用。拥有者通常不使用储备;但是,如果动态内存变得极其稀有以至于所有普通内
......
Today is the last day in 2009, I have no idea what should I do but just want to pray that my family, relatives and bosom friends would have a sweet life in the next year. Linux is a 2nd OS in my life, there are always something new can make me feel awesome, so I think that with continuou ......
cron 是linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:
引用:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
//============= ......
最强的GUI库当属Qt,毕竟是商业化的东西,功能最完整,什么都好,包括类似java代码风格,良好的框架设计,但有几点值的一提:
1.它没有使用STL,而是自己实现了一套替代方案QTL;
2.事件模型使用自创的signal/slot机制,所以需要moc.exe来预处理头文件;
&nbs ......