Linux C编程从入门到精通 - (EPUB全文下载)
文件大小:0.38 mb。
文件格式:epub 格式。
书籍内容:
Linux C编程从入门到精通
第1章 Linux基础
第2章 在Linux中编写C语言代码
第3章 Linux编程进阶
第4章 Linux的文件编程
第5章 Linux的流编程
第6章 Linux的进程
第7章 Linux的线程
第8章 Linux的信号和进程间通信
第9章 Linux的管道、命名管道和进程间通信
第10章 Linux的System V IPC进程通信
版权
第1章 Linux基础
Linux是一套免费使用和自由传播的类UNIX操作系统,它已发展成为现今世界上最流行的一种操作系统。Linux不仅仅能在PC机上运行,随着嵌入式系统的发展,它已经被广泛地应用于各种场合。
1.1 Linux的起源、发展和分类
Linux从1991年问世到现在已经有20多年的历史,它从一个架构简单的系统内核发展到了现在结构完整、功能丰富的多版本操作系统,本小节将介绍其起源发展和分类。
1.1.1 Linux的起源、特点和版本号
1.起源
Linux 操作系统是一种类 UNIX 操作系统,它最早是由芬兰人 Linus Torvalds 设计的。
在Linux诞生之前,为了教学和研究的需要,阿姆斯特丹Vrije大学的计算机科学家Andrew S. Tanwnbaum以UNIX为蓝本开发了Minix作为一个教育工具。1991年初,Linus 开始在一台386sx 兼容微机上学习Minix 操作系统。通过学习,他逐渐不满足Minix 系统的现有性能,并开始酝酿开发一个新的免费操作系统,这很快就在Minix新闻组得到了响应。
到了 1991年的 10月5日,Linus 在 comp.os.minix 新闻组上发布消息,正式向外宣布 Linux 内核系统(Free minix-like kernel sources for 386-AT:0.02 版)的诞生。1991年11月,Linux 0.10 版本推出;0.11 版本随后在 1991年12月推出。当 Linux 非常接近于一种稳定可靠的系统时,Linus决定将0.13版本改称为0.95版本。后来,在1994年3月,终于出现了带有独立宣言意味的 Linux 1.0 版本。Linux 1.0 已经是一个功能完备的操作系统了,其内核写得紧凑高效,可以充分发挥硬件的性能,在4MB内存的80386机器上也表现得非常好。
事实上,Linux系统是全世界各地成千上万志愿者设计和实现的,其目的是建立不受任何商品化软件版权制约的、全世界都能自由使用的类UNIX操作系统。在Linux操作系统的设计过程中,借鉴了很多UNIX的思想,但源代码是全部重写的。目前Linux操作系统可以运行在 x86、Aplpa、MIPS、Power Mac、ARM 等类型的计算机上。从功能上来看,它既可以作为普通的桌面操作系统,也可以作为中小型的网络操作系统,甚至还可以作为大型网络的操作系统。
2.特点
Linux具有以下特点。
● Linux 是一个免费软件。Linux 是作为开放源码的免费软件的代表,正是由于这一点,来自全世界的无数程序员参与了Linux的修改和编写工作,程序员可以根据自己的兴趣和灵感对其进行改变。这让 Linux 吸收了无数程序员的精华,不断壮大。
● 完全兼容 POSIX 1.0 标准。POSIX 是基于 UNIX 的第一个操作系统国际标准,这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows程序。
注意:关于POSIX,将在1.1.5小节中进行介绍。
● 多用户、多任务系统。Linux 支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在操作系统最主要的特点,Linux中多个程序可以同时独立地运行。
● 良好的用户界面。Linux 向用户提供了两种界面:文本界面和图形用户界面。Linux的传统用户界面是基于文本的命令行界面,即Shell。它既可以联机使用,又可存在文件上脱机使用。
● Linux 还为用户提供了图形用户界面。可以利用鼠标、菜单、窗口、滚动条等对图形用户界面进行操作。Linux 给用户呈现一个直观、易操作、交互性强的友好的图形化界面。Linux 的图形用户界面最近几年有很大的改进。在图形用户界面下,几乎可以完成全部的工作。
● 支持多种文件系统。Linux 能支持多种文件系统。目前支持的文件系统有 EXT、EXT2、EXT3、XIAFS、ISOFS、HPFS、MSDOS、UMSDOS、 PROC、NFS、XFS、SYSV、MINIX、SMB、UFS、NCP、VFAT、NTFS、AFFS等。
● 丰富的网络功能。完善的内置网络功能是 Linux 的一大特点。 Linux 在通信和网络功能方面优于其他操作系统。其他操作系统不包含如此紧密地和内核结合在一起的连接网络的能力,而且通信和网络相关功能缺乏灵活性。
● 可靠的系统安全。Linux 采取了许多安全技术措施,包括对读和写进行权限控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。
● 良好的可移植性。Linux 是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。可移植性为运行Linux的不同计算机平台与其他任何机器进行准确而有效的通信提供了手段,不需要另外增加特殊的和昂贵的通信接口。
3.版本号
任何一个软件都有版本号,例如微软的 Windows 7,Office 2007 等,Linux 也不例外。Linux的版本号又分为两部分:内核(Kernel)与发行套件(Distribution)版本。
Linux的内核是系统的心脏,内核包括了几百万行代码,是运行程序和管理硬件设备的核心程序。没有内核,就不能运行程序,但内核不是操作系统的全部。Linux初学者常会把内核版本与发行套件版本弄混,实际上内核版本指的是在Linus领导下的开发小组开发出的系统内核的版本号。Linux的每个内核版本为类似x ............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » Linux C编程从入门到精通 - (EPUB全文下载)