我对LaTeX,基本格式,基本数学公式等知之甚少.我发现LaTeX很难配置我自己的味道.最近,我听说过Docbook,它也是一种排版机制,但由于它使用XML,因此更容易.所以,如果我使用LaTeX/Docbook的主要工作是编写一个带有一些数学的简单文档(而不是一本类书),我想要简单的配置,以及一个高度可构建的应用程序,哪个更好,并且有关于Docbook的任何好书?
内核和用户线程之间是否存在关系?
一些操作系统教科书称" 将一个(多个)用户线程映射到一个(多个)内核线程".这是什么地图意思吗?
已知CF表示无符号执行,OF表示有符号溢出.那么汇编程序如何区分无符号和有符号数据,因为它只是一个位序列?(通过额外的存储器存储类型信息,或通过位置信息或其他?)这两个标志可以互换使用吗?
默认的汇编语法文件不能很好地工作并在网上搜索气体组件我没有发现任何关于vim的气体(AT&T)语法文件.有没有人发现这个?我无法编写自己的语法文件.
http://img168.imageshack.us/img168/46/nasm.png ft = nasm
http://img160.imageshack.us/img160/5857/asm.png ft = asm(默认)
如果malloc/free是作为libc中的库例程实现的,那么它是在sbrk系统调用或mmap系统调用之上实现的,还是其他什么?
一般来说,sys/syscall.h中声明的函数是否包含目标机器中的所有系统调用?
假设我们有以下代码:
int main(){
int a[3]={1,2,3};
printf(" E: 0x%x\n", a);
printf(" &E[2]: 0x%x\n", &a[2]);
printf("&E[2]-E: 0x%x\n", &a[2] - a);
return 1;
}
Run Code Online (Sandbox Code Playgroud)
编译并运行时,结果如下:
E: 0xbf8231f8
&E[2]: 0xbf823200
&E[2]-E: 0x2
Run Code Online (Sandbox Code Playgroud)
我理解&E [2]的结果是8加上数组的地址,因为索引为2并且类型为int(我的32位系统上为4个字节),但我无法弄清楚为什么最后一行是2而不是8?
另外,最后一行应该是什么类型 - 整数或整数指针?
我想知道是不是这种怪癖的C型系统(有点铸造)?
据说fork系统调用创建了调用进程的克隆,然后(通常)子进程发出execve系统调用以更改其映像并运行新进程.为什么这两步?
BTW,什么execve代表什么?
我听说过术语:寄存器,硬件寄存器,程序寄存器,寄存器文件.
这些之间有什么区别?总而言之,EAX寄存器的类型是什么?程序注册?