第一章
linux是unix操作系统家族中的一员,unix系统最引人关注的特征之一,是其开发不受控于某一厂商或组织。这一渊源使unix集多种开创性特性于一身,但同时unix分裂的趋势明显,所以unix的标准化呼声越来越高。
对于unix系统的定义有两种方式
- 按照SUS官方规范测试通过
- 运行方式类似于经典的unix系统(比如,bell实验室的unix系统,及其后来的主要分支 System V和BSD)linux属于这种
1. unix和c语言简史
unix早起版本主要有AT&T的bell实验室进行开发,从开始的汇编语言实现到设计开发c语言,然后使用c语言进行重构,实现了目录,文件创建,删除等基本操作命令。同时将系统源码分享给了大学。
unix系统分裂,BSD和SystemV
BSD为伯克利大学开发,主要流行在学术界
System V,AT&T公司解体后,允许销售unix系统,进行了大量的开发工作,并用和BSD的一些特性,授权不同厂商,厂商将其作为基础进行完善销售(包括sun,HP,IBM,Microsoft,Apple),此时系统与硬件属于绑定状态
2. Linux简介
2.1 GNU项目
GNU:是由Richard Stallman提出,由于各种专利限制条件不能使用查看源代码,GNU旨在开发一套完整而又可自由获取的unix系统。开始时,该项的大量开发人员开发出了大量的工具,仅仅差了能够运行的unix内核。
2.2 Linux内核
1991年,linux Torvalds在Minix(类unix内核教学使用)基础上开发出了内核的雏形,可以编译运行GNU开发出的程序,并将其归于GNU GPL阵营,吸引的其他程序员加入到开发linux开发行列,迅速对linux进行完善
BSD:另一种开源的unix系统,主要分支为NetBSD和FreeBSD
3. 标准化
20世纪80年代末,unix系统实现层出不穷移植困年
3.1 c编程语言
编程语言,c语言标准化
3.2 首个POSIX标准
posix(可移植操作系统标准化),对shell和c编译器命令行接口进行标准化
3.3 X/Open公司和The Open Group
3.4 SUSv3和POSIX.1-2001
3.5 SUSv4和POSIX.1-2008
3.6 UNIX标准时间表
3.7 实现标准
3.8 Linux、标准、Linux标准规范(Linux Standard Base)