Linux的系统调用

系统调用通过0x80中断实现,其中eax为调用号,ebx、ecx、edx等通用寄存器用来传递参数。常见的系统调用有WRITE系统调用,调用号为4,EXIT系统调用,调用号为1。

系统库和退出码

我们平时的main程序中的return的数值会返回给系统库,由系统库将该数值传递给EXIT系统调用,这样父进程就可以通过接收子进程的退出码。下面的指令可以产看bash命令执行的程序的退出码:

$ echo $?

Console&Telnet

用户终端与系统间的通信方法。提供Console或Telnet的连接方式。那么,到底什么是Console,又什么是Telnet呢?有关Console,Shell,Telnet的概念一直不是很清楚。

Linux Command

软件包安装

开源软件传统的安装模式是从源码包编译安装:

./configure && make && make test &&make install

源码包安装方式,维护成本高:

“群英汇”不采用源码包部署方式,而是提供标准的拆包即装的方式

Linux SHELL学习

经典和高深的书籍

Minix的代码可以在网上(www.minix.org)找到,也可以在《操作系统设计与实现(下册)》找到,后者有经过精炼的针对x86架构Minix 3代码,只有几百页。

如果要看Linx的话,可以先看看一个叫于渊的人写的《自己动手写操作系统》,上面有介绍IA32的保护机制,不过Linux的新版内核貌似绕过了段保护,只用了分页机制。

unix的历史

VM的网络配置