Linux是一个用最短的时间产生了最大影响力的操作系统,Linux的成熟为民族软件产业带来了机遇。在服务器和桌面操作系统领域,Linux和Windows NT已经成为激烈的竞争对手。但由于国内特殊的软件环境,许多用户对UNIX系统有着一种恐惧心理,这对类UNIX的Linux在国内的推广造成了一种无形的障碍。\r\n 本书通过客观比较Linux和NT的功能特性,旨在消除用户对Linux(UNIX)系统的恐惧民理,为Windows NT用户顺利转向Linux提供基础。本书在基本的操作系统特性、使用、开发等方面对这两个操作系统进行了比较,为Windows NT用户展现了低成本、高性能的Linux系统和Windows NT操作系统一样的易用性,比Windows NT系统更好的扩展性、规模伸缩性等等。最后,本书还提供了集成Linux和Windows NT的常用方法。\r\n 本书主要在如下几个方面对比了Linux和Windows NT:操作系统基本结构组件的比较。从基本的操作系统组件出发对比Linux和Windows NT,涉及进程调度和管理、虚拟内存管理、输入输出管理、文件系统等内容;用户角度出发的全面对比。从普通用户、系统管理员以及开发人员的角度对比Linux和Windows NT。涉及到SHELL、图形用户界面、应用软件、系统管理、网络支持、软件开发、图形界面开发、服务器应用等方面;Linux和Windows NT的集成。讲述Linux和Windows NT的集成方法,包括建立双重引导系统、利用SAMBA或NFS共享资源等内容。\r\n 本书适合于从事系统或软件设计的计算机专业人员阅读,对学习操作系统课程的在校学生也是一本较好的参考书。
第一部分 综述\r\n\r\n第一章 操作系统概观\r\n\r\n1.1 操作系统概观\r\n1.1.1 操作系统的设计目标和功能\r\n1.1.2 什么是操作系统\r\n1.1.3 操作系统作为用户和计算机之间的接口\r\n1.1.4 操作系统提供的服务\r\n1.2 操作系统的发展历史\r\n1.2.1 串行处理\r\n1.2.2 简单批处理系统\r\n1.2.3 多任务批处理系统和分时系统\r\n1.2.4 个人计算机上的操作系统\r\n1.3 操作系统的基本概念\r\n1.3.1 进程\r\n1.3.2 虚拟内存\r\n1.3.3 文件和文件系统\r\n1.3.4 设备驱动程序\r\n1.4 Linux概观\r\n1.4.1 什么是Linux\r\n1.4.2 传统UNIX系统的发展历史\r\n1.4.3 传统UNIX系统的内核结构和特点\r\n1.4.4 Linux的发展和特点\r\n1.4.5 其他开放源代码的UNIX或类UNIX系统\r\n1.5 Windows NT概观\r\n1.5.1 Windows NT的历史\r\n1.5.2 Windows NT的内核结构和特点\r\n1.6 本书其余章节的内容梗概\r\n1.6.1 操作系统基本结构组件的比较\r\n1.6.2 用户角度出发的全面对比\r\n1.6.3 Linux和Windows NT的集成\r\n1.7 小结\r\n\r\n第二章 进程管理及调度\r\n\r\n2.1 基本概念\r\n2.1.1 进程\r\n2.1.2 线程\r\n2.1.3 进程间通信\r\n2.1.4 调度\r\n2.2 进程模型\r\n2.2.1 Linux的进程模型\r\n2.2.2 Windows NT的进程模型\r\n2.3 线程及线程同步支持\r\n2.4 调度策略及机制的比较\r\n2.3.1 Linux的进程调度\r\n2.3.2 Windows NT的线程调度和进程切换\r\n2.3.3 实时调度支持上的差别\r\n2.5 SMP支持\r\n2.6 进程间通信\r\n2.6.1 Linux的进程间通信机制\r\n2.6.2 Windows NT的进程间通信机制\r\n2.7 小结\r\n\r\n第三章 内存管理\r\n\r\n3.1 基本\r\n3.1.1 虚拟内存模型\r\n3.1.2 内存映射和需求分页\r\n3.1.3 写时复制\r\n3.2 进程地址空间\r\n3.2.1 Linux的进程地址空间\r\n3.2.2 Windows NT的进程地址空间\r\n3.3 虚拟内存的使用\r\n3.3.1 Linux中虚拟内存的使用\r\n3.3.2 Windows NT中虚假内存的使用\r\n3.3.3 Windows NT对16位应用程序的支持\r\n3.4 共享内存\r\n3.4.1 Linux的共享内存\r\n3.4.2 Windows NT的共享内存\r\n3.5 内存交换管理\r\n3.5.1 Linux的内存交换\r\n3.5.2 Linux的交换空间\r\n3.5.3 Windows NT的页面文件\r\n3.5.4 交换空间大小的选择原则\r\n3.6 高速缓存\r\n3.6.1 Linux和内存管理相关的高速缓存\r\n3.6.2 Windows NT的高速缓存\r\n3.7 小结\r\n\r\n第四章 文件系统\r\n\r\n4.1 基本概念\r\n4.1.1 文件\r\n4.1.2 目录\r\n4.2 两种不同的设计哲学\r\n4.3 Linux的文件系统\r\n4.3.1 Linux文件系统的组织形式\r\n4.3.2 Linux文件系统的文件和目录\r\n4.3.3 Linux文件系统的标准布局\r\n4.3.4 Linux的虚拟文件系统\r\n4.3.5 和文件系统相关的高速缓存\r\n4.4 Windows NT的文件系统\r\n4.4.1 Windows NT文件系统的组织结构\r\n4.4.2 Windows NT文件系统的文件和目录\r\n4.4.3 Windows NT的高速缓存\r\n4.5 不同文件系统的比较\r\n4.5.1 FAT文件系统\r\n4.5.2 NTFS文件系统\r\n4.5.3 EXT2文件系统\r\n4.6 小结\r\n\r\n第五章 输入输出和设备管理\r\n\r\n5.1 基本概念\r\n5.1.1 总线和I/O设备\r\n5.1.2 系统和外设的数据交换方式\r\n5.1.3 中断及中断处理\r\n5.1.4 I/O软件的结构\r\n5.1.5 I/O缓冲和调整缓存\r\n5.1.6 RAID\r\n5.2 两种不同的设备管理方法\r\n5.3 Linux的I/O软件\r\n5.3.1 I/O软件结构\r\n5.3.2 Linux中的网络设备\r\n5.3.3 特殊设备驱动程序\r\n5.3.4 内核模块\r\n5.4 Windows NT的I/O软件\r\n5.4.1 I/O软件结构\r\n5.4.2 设备驱动程序\r\n5.4.3 高速缓存管理器\r\n5.4.4 同步和异步I/O\r\n5.5 小结\r\n\r\n第六章 安全性\r\n\r\n6.1 基本概念\r\n6.1.1 安全性问题的重要性\r\n6.1.2 常见的安全性问题\r\n6.1.3 安全性设计的原理\r\n6.1.4 保护机制\r\n6.2 Linux的保护机制\r\n6.3 Linux常见的安全性问题及预防\r\n6.4 Windows NT的保护机制\r\n6.4.1 Windows NT的访问控制模型\r\n6.5 Windows NT常见的安全漏洞及预防\r\n6.6 小结\r\n\r\n第七章 操作系统服务器\r\n\r\n7.1 Linux的操作系统服务\r\n7.1.1 init\r\n7.1.2 终端登录\r\n7.1.3 Syslog\r\n7.1.4 周期命令执行:cron和at\r\n7.1.5 图形用户界面\r\n7.1.6 网络\r\n7.1.7 网络登录\r\n7.1.8 网络文件系统\r\n7.1.9 电子邮件\r\n7.1.10 SMB服务器\r\n7.1.11 打印\r\n7.1.12 gpm\r\n7.1.13 高级电源管理\r\n7.1.14 PCMCIA卡管理\r\n7.2 Windows NT的操作系统服务\r\n7.2.1 域控制服务\r\n7.2.2 计算机浏览器服务\r\n7.2.3 文件和打印机共享\r\n7.2.4 目录复制\r\n7.2.5 远程访问服务\r\n7.2.6 与TCP/IP联网环境有关的服务\r\n7.2.7 图形用户界面\r\n7.3 小结\r\n\r\n第二部分 全面对比\r\n\r\n第八章 SHELL\r\n\r\n8.1 命令解释器\r\n8.1.1 执行程序\r\n8.1.2 输入输出重定向\r\n8.1.3 管道\r\n8.1.4 历史表\r\n8.1.5 命令补全\r\n8.2 作业管理\r\n8.2.1 后台作业\r\n8.2.2 作业管理\r\n8.3 设置环境变量\r\n8.4 SHELL脚本编程\r\n8.5 常用工具\r\n8.5.1 正则表达式\r\n8.5.2 常用小工具\r\n8.5.3 格式转换工具\r\n8.5.4 如何获取帮助\r\n8.6 小结\r\n\r\n第九章 图形用户界面\r\n\r\n9.1 结构上的不同\r\n9.1.1 Windows NT的图形系统结构\r\n9.1.2 X Windows系统结构\r\n9.2 Windows 95风格的Windows NT用户界面\r\n9.2.1 以文档为中心的界面\r\n9.2.2 DDE和OLE\r\n9.2.3 资源管理器\r\n9.3 X Windows系统\r\n9.3.1 X Windows系统的启动\r\n9.3.2 fvwm窗口管理概貌\r\n9.3.3 虚拟桌面\r\n9.3.4 输入焦点\r\n9.3.5 菜单的定制\r\n9.3.6 其他窗口管理器\r\n9.4 GNOME\r\n9.4.1 GNOME与窗口管理器\r\n9.4.2 面板\r\n9.4.3 桌面\r\n9.4.4 文件管理器\r\n9.5 小结\r\n\r\n第十章 应用软件\r\n\r\n10.1 概述\r\n10.2 文字处理软件\r\n10.2.1 文本文件编辑器\r\n10.2.2 格式化文本处理软件\r\n10.3 图形图象处理软件\r\n10.3.1 XV\r\n10.3.2 XPanit\r\n10.3.3 xfig\r\n10.3.4 Gnuplot\r\n10.3.5 Ghostscript和Ghostview\r\n10.3.6 GIMP\r\n10.4 工具软件\r\n10.4.1 GNU bc\r\n10.4.2 gzip\r\n10.4.3 ispell\r\n10.4.4 Midnight Commander\r\n10.4.5 xfm\r\n10.4.6 cxterm\r\n10.5 KDE和GNOME的应用软件\r\n10.6 其他应用软件\r\n10.7 小结\r\n\r\n第十一章 系统管理\r\n\r\n11.1 获取、安装和升级\r\n11.1.1 商业软件和自由软件\r\n11.1.2 安装和升级\r\n11.2 系统设置\r\n11.2.1 系统设置信息的存储\r\n11.2.2 系统管理工具\r\n11.2.3 提供服务的后台进程\r\n11.2.4 监视系统\r\n11.3 用户帐号和组帐号管理方法\r\n11.3.1 Linux上的传统帐号管理方法\r\n11.3.2 NIS及其配置\r\n11.3.3 Windows NT的两种帐号管理模式\r\n11.3.4 Windows NT的域模型\r\n11.4 用户环境配置\r\n11.4.1 Linux的用户环境配置\r\n11.4.2 Windows NT的用户环境配置\r\n11.5 资源管理\r\n11.5.1 Linux的磁盘资源管理\r\n11.5.2 利用NFS的文件共享\r\n11.5.3 Linux的打印机管理\r\n11.5.4 Windows NT的磁盘资源管理\r\n11.5.5 Windows NT的打印机管理\r\n11.6 其他系统管理任务\r\n11.6.1 备份\r\n11.6.2 磁盘定额\r\n11.6.3 远程管理\r\n11.7 小结\r\n\r\n第十二章 网络支持\r\n\r\n12.1 TCP/IP协议简介\r\n12.1.1 网络协议和TCP/IP协议\r\n12.1.2 物理地址和逻辑地址\r\n12.1.3 DNS\r\n12.1.4 传输和寻址\r\n12.1.5 TCP/IP的四层结构\r\n12.1.6 TCP数据包的传输\r\n12.2 建立Internet主机\r\n12.2.1 接入Intenet的几种方式\r\n12.2.2 基于Linux的Internet主机配置\r\n12.2.3 基于Windows NT的Intenret主机配置\r\n12.2.4 Linux对TCP/IP特殊支持\r\n12.3 有关TCP/IP配置的重要服务\r\n12.3.1 DHCP\r\n12.3.2 WINS\r\n12.4 其他TCP/IP服务\r\n12.5 小结\r\n\r\n第十三章 软件开发\r\n\r\n13.1 POSIX标准和操作系统接口\r\n13.1.1 Linux和Windows NT对POSIX标准的支持\r\n13.1.2 Windows NT的操作系统接口\r\n13.2 Visual Studio和GNU\r\n13.3 Linux上的开发工具\r\n13.3.1 获取帮助\r\n13.3.2 CNU C和C++编译器\r\n13.3.3 GNU的make工具\r\n13.3.4 GNU的调试器\r\n13.3.5 版本控制工具\r\n13.3.6 Perl简介\r\n13.4 有关编程风格\r\n13.5 小结\r\n\r\n第十四章 图形用户界面编程\r\n\r\n14.1 图形用户界面编程中的一般概念\r\n14.1.1 消息驱动和事件驱动\r\n14.1.2 窗口和窗口过程、回调函数\r\n14.1.3 图形上下文和设备上下文\r\n14.2 Win32 API和Xlib\r\n14.2.1 基于Win 32的编程\r\n14.2.2 基于Xlib的编程\r\n14.3 MFC、Visual Basic和Motif\r\n14.3.1 MFC\r\n14.3.2 Visual Basic\r\n14.3.3 Motif\r\n14.4 Tcl/Tk简介\r\n14.5 GTK+简介\r\n14.6 小结\r\n\r\n第十五章 服务器应用\r\n\r\n15.1 WEB服务器\r\n15.1.1 Internet Information Server\r\n15.1.2 IIS的安装和配置\r\n15.1.3 Linux上的Web Server\r\n15.1.4 Apache\r\n15.1.5 Apache的安装和配置\r\n15.1.6 启动和终止Apache\r\n15.2 服务器端的HTML嵌入式脚本语言\r\n15.2.1 VBScript和ASP\r\n15.2.2 PHP3\r\n15.3 数据库管理系统\r\n15.3.1 PostgreSQL\r\n15.3.2 SQL Server\r\n15.3.3 mSQL和MySQL\r\n15.4 Web数据库应用\r\n15.4.1 SQL Server+IIS+ASP\r\n15.4.2 MySQL+Apache+PHP3\r\n15.5 小结\r\n\r\n第三部分 Linux和Windows NT的集成\r\n\r\n第十六章 双重引导系统\r\n\r\n16.1 预备知识\r\n16.1.1 硬盘分区\r\n16.1.2 系统引导过程\r\n16.1.3 LILO的配置\r\n16.1.4 NTLDR的配置\r\n16.2 安装前的准备\r\n16.2.1 选择双重引导管理器\r\n16.2.2 分区规划要考虑的问题\r\n16.2.3 安装顺序\r\n16.3 安装Linux\r\n16.3.1 利用FDISK建立分区\r\n16.3.2 安装LILO\r\n16.3.3 制作Linux系统的引导软盘\r\n16.4 安装Windows NT\r\n16.5 配置LILO\r\n16.6 配置NTLDR\r\n16.6.1 获取Linux的引导扇区\r\n16.6.2 修改BOOT.ININ\r\n16.7 从Linux中访问Windows NT分区\r\n16.8 其他可用工具\r\n16.9 小结\r\n\r\n第十七章 利用SAMBA的资源共享\r\n\r\n17.1 SMB\r\n17.2 Samba和SMB\r\n17.2.1 用户名\r\n17.2.2 文件所有权\r\n17.2.3 口令\r\n17.2.4 协议的复杂性\r\n17.3 Linux上的Samba配置\r\n17.3.1 Samba的主要组件\r\n17.3.2 smb.conf配置文件的格式\r\n17.3.3 smb.conf文件中的主要配置\r\n17.4 文件共享\r\n17.4.1 共享Linux目录\r\n17.4.2 从Linux系统中访问Windows的共享目录\r\n17.5 打印机共享\r\n17.5.1 共享Linux打印机\r\n17.5.2 从Linux访问Windows的共享打印机\r\n17.6 安全性考虑\r\n17.7 小结\r\n\r\n第十八章 其他集成方法\r\n\r\n18.1 基于NFS的文件共享\r\n18.1.1 NFS和SMB的比较\r\n18.1.2 在Windows NT中使用NFS的特殊问题\r\n18.1.3 Windows上的NFS软件\r\n18.2 基于TCP/IP的互操作\r\n18.2.1 FTP\r\n18.2.2 TELNET\r\n18.2.3 WWW\r\n18.3 Linux的DOS仿真\r\n18.4 小结\r\n\r\n附录 Linux Kernel 2.2的新特色\r\n\r\n附录 Windows 2000的新特色\r\n\r\n附录 常用的Linux C语言函数库