1.计算机组成

 

 

 

2.开发接口标准
  1. ABI--(Application Binary Interface)

    ABI描述了应用程序与OS之间的底层接口,允许编译好的目标代码在使用兼容ABI的系统中无需改动就能运行。

  2. API--(Application Programming Interface)

    API定义了源代码和库之间的接口,因此同样的源代码可以在支持这个API的任何系统中编译(AIEEE在操作系统上定义的一系列API标准)。

3.Linux运行文件格式
  1. ELF:可运行文件格式(类似于Windows下.exe文件格式)。

  2. .so(shared object):动态库基本格式。

  3. .a:静态库基本格式

 

4.库存函数(Library function)及系统调用(system call)

函数库调用

系统调用
在所有的ANSI C编译器版本中,C库函数是相同的 各个操作系统的系统调用是不同的
它调用函数库中的一段程序(或函数) 它调用系统内核的服务
与用户程序相联系 是操作系统的一个入口点
在用户地址空间执行 在内核地址空间执行
它的运行时间属于-用户时间 它的运行时间属于-系统时间
属于过程调用,调用开销较小 需要在用户空间和内核上下文环境间切换,开销较大。
在C函数库libc中有大概300个函数 在UNIX中大约有90个系统调用
典型的C函数库调用:system fprintf mall oc 典型的系统调用:chedir fork write brk
5.Linux哲学思想

1.一切都是一个文件(包括硬件);

2.小型,单一用途的程序;

3.链接程序,共同完成复杂的任务;

4.避免令人困惑的用户界面;

5.配置数据存储在文本中;

 

镜像下载地址

http://mirrors.aliyun.com;

http://mirrors.sohu.com

http://mirrors.163.com