UNIX
-
高级UNIX编程(美)洛奇肯德(Rochkind,M.J.) 著,王嘉祯,杨素敏,张斌 等译;王嘉祯译本书第1版自1985年出版以来,历经20年畅销不衰,许多有经验的程序员都求助于它,作者MarcJ.Rochkind被誉为UNIX先行者。当前,UNIX规范中有1100多个函数,要掌握这些函数确实是一件让人望而却步的事。第2版几乎完全重写,当中建议了如何可靠地使用关键函数,深入讲解了UNIX操作系统家族最新的、必用的系统调用函数(多达307个),涉及POSIX、FreeBSD、Solaris、Linux等几大主流系统实现。.全书包括:●基本概念,进程通信,网络(套接字),伪终端,I/O流,高级信号,实时处理和线程。●数千行示例代码,包括一个Web浏览程序,一个击键记录程序/播放器,用管道、重定向写的shell程序,以及相关的后台进程程序。●每章末的练习。一些是简单的程序设计问题,还有一些则可以作为每学期的UNIX程序设计项目。..●配套网站www.basepath.com/aup提供了丰富的学习资源,包括:书中所有示例的源代码、作者的博客、书评、相关文献和图书、标准UNIX函数概要,等等。本书以当前UNIX规范为基础,详细介绍了UNIX系统函数的用法,并用大量的代码和示例程序进行演示,对实际编程具有指导意义。全书共9章,内容包括:基本概念、基本文件I/O、高级文件I/O、终端I/O、进程与线程、基本进程间通信,高级进程间通信、网络技术与套接字,以及信号与定时器等。涉及POSIX、FreeBSD、Solaris、Linux等几大主流系统实现。每章末都给出一了些练习,一些是简单的程序设计问题,还有一些可以作为学期的UNIX程序设计项目。本书适合广大UNIX和C程序员、研究人员、高校相关专业师生学习和参考。...
-
网络操作系统实用教程石硕主编《网络操作系统实用教程网络操作系统实用教程:Windows 2000 Server、Linux/UNIX及其异构网络的互联》由3部分内容组成,第1部分为Windows 2000 Server,介绍该系统平台下各种服务器及安装、配置和使用;第2部分为Linux,介绍Red Hat Linux 9.0 中文版下各种服务器及其安装、配置;第3部分为常用小型机服务简介与异构网络的互联,介绍UNIX及HP、Sun、IBM小型机及其使用不同操作系统的主机之间的互联和资源共享。《网络操作系统实用教程网络操作系统实用教程:Windows 2000 Server、Linux/UNIX及其异构网络的互联》的特点是内容全面,理论以够用为度,叙述清楚、易懂,注重实验,侧重实用,力图反映出目前大、中、小型网络所用操作系统的实际情况。本书每一章都安排有实验的内容,所有实验均通过实际验证。《网络操作系统实用教程网络操作系统实用教程:Windows 2000 Server、Linux/UNIX及其异构网络的互联》可作为高等职业技术院计算机网络、计算机应用专业的教材,也可作为高等学校计算机专业的教材,还可作为网络爱好者的自学参考书或网络技术培训班的教材。
-
Unix入门经典(美)默显罗(Merlino, J.), (美)洛费(Love, P.)著;张楚雄等译Unix操作系统是目前一些常用平台(如Mac OS X 和Linux)的基础。本书将讨论Unix的基础知识以及日益流行的Sun Solaris和BSD平台的基础知识。首先,读者将学习Unix术语、核心概念、方法以及怎样登陆和退出系统,然后开始定制工作环境并学习命令,最后将学习如何管理进程、处理安全事务、使用Perl脚本自动处理任务,以及如何安装Unix程序和备份数据等内容。本书涵盖了Unix操作系统的各个方面的内容,其独特之处在于包含了Unix的派生系统和一个独有的转换章节,深入讨论了Unix的基础知识以及日益流行的Sun Solaris和BSD平台的基础知识。本书适用于任何对Unix操作系统感兴趣的读者。虽然本书是一本入门级图书,但对于那些已经具有一定Unix知识的读者,仍颇具实用价值,另外,如果读者希望将Mac OS或Windows中的相关知识转换到Unix或其派生版本中,本书也可以作为一本优秀的参考手册。
-
高级UNIX程序设计(美)罗克金德(Rochkind, M.J.)著系统函数决定了什么是UNIX,其他的(如子例程和命令)都是建立在系统函数的基础之上。现今的UNIX说明书中有1100多个系统函数,要掌握这些函数是件很困难的事。本书主要介绍了其中最常用的300多个系统函数。全书包括基本概念、基本文件I/O、高级文件I/0、终端I/0、进程与线程、基本进程间通信、高级进程间通信、网络技术与套接字,以及信号与定时器等9章。 本书给出了数千行的示例代码,所有这些代码都可以从本书网~kwww.basepath.com/aup下载。本书每章的末尾都给出了一些练习。这些练习的难易程度各不相同,一些只需几句话就可以回答,一些是简单的程序设计问题,还有一些则可以作为每学期的UNIX程序设计项目练习。
-
UNIX教程(美)萨瓦 等著,张玉洁 等译;张玉洁译本书是一本优秀的UNIX基础教材。作者深入浅出地剖析了UNIX操作系统的各个方面,系统地介绍了UNIX的用户接口,系统内部的工作情况等。本书从UNIX系统最基本的操作开始,依次阐述了UNIX shell操作、文本文件编辑、收发电子邮件、UNIX文件与文件系统的操作、输入输出管理、进程管理、网络管理以及常用shell的编程等。书后的附录详尽介绍了UNIX的终端命令及命令参数和选项,精心设计的章内练习和章末问题有助于读者及时巩固新的命令、原语和概念。本书特点:●简明清晰的理论知识,设计精彩的示例,精练的相关主题,帮助读者理解复杂概念的习题。●独一无二的组织结构,帮助初学者通过掌握UNIX应用程序用户接口,从而增强对操作系统基本原理的理解。●涵盖了UNIX软件开发工具以及速查向导,为新手和富有经验的程序员带来便利。●精心整合的图文形式描述UNIX的命令和概念,有助于理解深奥的概念和主题。第2版新增内容:◆本书开篇的"UNIX操作系统快速入门"一章,帮助读者快速掌握在UNIX下工作的基本方法。◆关于图形化Emacs编辑器的内容,用全新的一节详细介绍基于IMAP和POP3的UNIX电子邮件软件??图形化Kmail。◆加强了对进程属性和UNIX进程层次结构的说明。◆增加了一些新命令,如host、dig、ssh(安全Shell)、scp和sftp。◆编译C++和Java程序的相关资料(第20章)。◆完全更新了第21章,包括XFree86、fvwm2、如何使用xconfigurator修改X Window系统的默认设定、如何安装UNIX包以及介绍Mac OS X UNIX和Aqua GUI。◆第8章中的访问权限,以及第12章中的UNIX FIFO。 第0章UNIX操作系统快速入门第1章操作系统概述第2章UNIX操作系统简史第3章UNIX起步第4章UNIX Shell第5章编辑文本文件第6章电子邮件第7章文件与文件系统结构第8章文件安全性第9章基本文件处理第10章高级文件处理第11章文件共享第12章重定向与管道第13章进程第14章网络与互联网第15章 Bourne Shell编程入门第16章高级Bourne Shell编程第17章 C Shell编程入门第18章高级C Shell编程第19章文件系统的备份第20章UNIX软件开发工具第21章UNIX GUI基础
-
大学信息技术基础Linux基础篇何钦铭 刘加海本书介绍了Linux的Fedora Core操作平台以及在此平台下的应用软件。Linux的出现,打破了微软在PC操作系统上的长期垄断地位,使得用户在选用操作系统时有了更多的选择。中国加入WTO后,随着知识产权保护的逐步规范,更多企业转向使用自由开放、成本低廉的Linux操作系统。《大学信息技术基础Linux基础篇》越来越被高校所接受,成为高校各科学生的必修课或选修课。掌握Linux基本操作以及此平台下应用软件的使用已成为当代大学生的基本技能。随着Linux的快速发展,Linux基础课程将成为面向高等学校任何专业学生开设的第一层次的计算机基础教程,成为高等院校开设的一门公共基础课。针对高校的学生,《大学信息技术基础Linux基础篇》从最基本的概念出发,详细地讲述了计算机信息技术、在Linux下最基本的图形化操作以及一些常用软件的使用,结合实例以及大量的图片说明来讲解各个部分,尽量避免终端的使用,以便读者掌握。通过本书的学习使读者掌握计算机信息技术的基本知识、Linux操作系统的基本操作、文档的编辑操作、格式化文档、高级格式设置、表格处理以及图文混排,Calc基本操作、Calc公式与函数以及Calc格式化与数据处理,Impress的基本操作、修饰演示文稿以及放映和输出演示文稿,Draw工具栏中各个工具的使用、打开与导人图像以及用工具来修改图像,在Linux系统下数码相机、扫描仪等的使用以及音频、视频软件的安装与使用,计算机网络的基础知识及FTP、Firefore浏览器、Evolution等的使用。本书适合于作为计算机、非计算机专业大学本专科学生的计算机教材,也可以为Linux爱好者、准备参加Linux认证考试的读者提供参考,当然对于那些计算机操作方面的初学者,也是一本不错的入门教程。
-
UNIX操作系统实验教程张红光等 编著本书特色:·实验题目或练习具有较大独立性,并附有学习指导,有利于读者自学。·安排了从系统安装到命令使用,再到复杂的UNIX系统软件开发方法等多种实验。·书中给出了的参考答案都已在LINUXREDHAT9.0中测试和验证过。本书是《UNIX操作系统教程》(第2版)的配套实验教材,全书共分三部分内容,主要针对UNIX系统应用基础知识、UNIX系统核心技术的教学内容给出了实验练习及解答,并给出了《UNIX操作系统教程》中的课后习题的参考答案。本书旨在协助读者加深对UNIX系统的全貌和系统使用特点的理解,通过学习相关的编程技术和设计方法,进而掌握UNIX系统设计技术和软件开发方法。本书设立的实验题目或练习具有较强的独立性和指导性,既可与教材配套使用,也可作为读者学习UNIX操作系统技术的实践指导。
-
UNIX 网络编程(美)史蒂文斯,(美)芬纳,(美)鲁道夫 著,杨继张 译本书第1版和第2版由已故UNIX网络专家W.RichardStevens博士独自编写。本书是3版,由世界著名网络专家BillFenner和AndrewM.Rudoff执笔,根据近几年网络技术的发展,对上一版进行全面修订,增添了IPv6的更新过的信息、SCTP协议和密钥管理套接口的内容,删除了X/Open传输接口的内容。.本书全面深入地介绍了如何使用套接口API进行网络编程。全书从对套接口API的综合讨论开始,论述了基本编程内容后,即转入高级套接口编程的相关主题,包括IPv4与IPv6的互操作性、UNIX域协议、非阻塞I/O、路由套接口、广播、多播、线程、原始套接口、数据链路访问等,对于客户/服务器程序的各种设计方法也作了完整的探讨,最后还对流这种设备驱动机制作了深入分析。在附录中给出了IPv6、ICMPv6、虚拟网络等内容以及部分习题答案。..本书内容详尽且具权威性,几乎每章都提供精选的习题,是计算机和网络专业高年级本科生和研究生的首选教材,本书也可作为网络研究和开发人员的自学教材和参考书。...UNIX网络编程卷I套接字联网API(英文版第三版)
-
UNIX环境高级编程(美)W.R.著内容提要本书是被誉为UNIX编程"圣经"的Advanced Programming in the UNIX Environment一书的更新版。在本书第1版出版后的十几年中,UNIX行业已经有了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持了前一版的风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用示例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。本书内容权威,概念清晰,阐述精辟,对于所有层次UNIX程序员都是一本不可或缺的参考书。 ContentsChapter 1. UNIX System Overview 11.1 Introduction 11.2 UNIX Architecture 11.3 Logging In 21.4 Files and Directories 41.5 Input and Output 81.6 Programs and Processes 101.7 Error Handling 141.8 User Identification 161.9 Signals 181.10 Time Values 201.11 System Calls and Library Functions 211.12 Summary 23Chapter 2. UNIX Standardization and Implementations 252.1 Introduction 252.2 UNIX Standardization 252.2.1ISO C 252.2.2IEEE POSIX 262.2.3The Single UNIX Specification 292.2.4FIPS 332.3 UNIX System Implementations 332.3.1UNIX System V Release 4 332.3.24.4BSD 342.3.3FreeBSD 352.3.4Linux 352.3.5Mac OS X 352.3.6Solaris 352.3.7Other UNIX Systems 362.4 Relationship of Standards and Implementations 362.5 Limits 362.5.1ISO C Limits 382.5.2POSlX Limits 382.5.3XSl Limits 402.5.4sysconf, pathconf, and fpathconf Functions 412.5.5Indeterminate Runtime Limits 482.6 Options 522.7 Feature Test Macros 552.8 Primitive System Data Types 562.9 Conflicts Between Standards 562.10 Summary 58Chapter 3. File I/0 593.1 Introduction 593.2 File Descriptors 593.3 open Function 603.4 creat Function 623.5 close Function 633.6 1 seek Function 633.7 read Function 673.8 write Function 683.9 I/O Efficiency 683.10 File Sharing 703.11 Atomic Operations 743.12 dup and dup2 Functions 763.13 sync, fsync, and fdatasync Functions 773.14 fcnt 1 Function 783.15 ioct 1 Function 833.16 /dev/fd 843.17 Summary 85Chapter 4. Files and Directories 874.1 Introduction 874.2 stat, fstat, and lstat Functions 874.3 File Types 884.4 Set-User-ID and Set-Group-ID 914.5 File Access Permissions 924.6 Ownership of New Files and Directories 954.7 access Function 954.8 umask Function 974.9 chmod and f chmod Functions 994.10 StickyBit 1014.11 chown, fchown, and lchown Functions 1024.12 File Size 1034.13 File Truncation 1054.14 File Systems 1054.15 link, unlink, remove, and rename Functions 1084.16 Symbolic Links 1124.17 syml ink and readlink Functions 1154.18 File Times 1154.19 ut ime Function 1164.20 mkdir and rmdir Functions 1194.21 Reading Directories 1204.22 chdir, fchdir, and getcwd Functions 1254.23 Device Special Files 1274.24 Summary of File Access Permission Bits 1304.25 Summary 130Chapter 5. Standard I/O Library 1335.1 Introduction 1335.2 Streams and FILE Objects 1335.3 Standard Input, Standard Output, and Standard Error 1355.4 Buffering 1355.5 Opening a Stream 1385.6 Reading and Writing a Stream 1405.7 Line-at-a-Time I/O 1425.8 Standard I/O Efficiency 1435.9 Binary I/O 1455.10 Positioning a Stream 1475.11 Formatted I/O 1495.12 Implementation Details 1535.13 Temporary Files 1555.14 Alternatives to Standard I/O 1595.15 Summary 159Chapter 6. System Data Files and Information 1616.1 Introduction 1616.2 Password File 1616.3 Shadow Passwords 1656.4 Group File 1666.5 Supplementary Group IDs 1676.6 Implementation Differences 1696.7 Other Data Files 1696.8 Login Accounting 1706.9 System Identification 1716.10 Time and Date Routines 1736.11 Summary 177Chapter 7. Process Environment 1797.1 Introduction 1797.2 main Function 1797.3 Process Termination 1807.4 Command-Line Arguments 1857.5 Environment List 1857.6 Memory Layout of a C Program 1867.7 Shared Libraries 1887.8 Memory Allocation 1897.9 Environment Variables 1927.10 set j mp and longj mp Functions 1957.11 getrlimit and setrlimit Functions 2027.12 Summary 206Chapter 8. Process Control 2098.1 Introduction 2098.2 Process Identifiers 2098.3 fork Function 2118.4 vfork Function 2168.5 exit Functions 2188.6 wait and waitpid Functions 2208.7 waitid Function 2268.8 wait3 and wait4 Functions 2278.9 Race Conditions 2278.10 exec Functions 2318.11 Changing User IDs and Group IDs 2378.12 Interpreter Files 2428.13 system Function 2468.14 Process Accounting 2508.15 User Identification 2568.16 Process Times 2578.17 Summary 259Chapter 9. Process Relationships 2619.1 Introduction 2619.2 Terminal Logins 2619.3 Network Logins 2669.4 Process Groups 2699.5 Sessions 2709.6 Controlling Terminal 2729.7 tcgetpgrp, tcsetpgrp, and tcgetsid Functions 2739.8 Job Control 2749.9 Shell Execution of Programs 2789.10 Orphaned Process Groups 2829.11 FreeBSD Implementation 2859.12 Summary 287Chapter 10.Signals 28910.1 Introduction 28910.2 Signal Concepts 28910.3 signal Function 29810.4 Unreliable Signals 30110.5 Interrupted System Calls 30310.6 Reentrant Functions 30510.7 s IGCLD Semantics 30810.8 Reliable-Signal Terminology and Semantics 31010.9 kill and raise Functions 31110.10 alarm and pause Functions 31310.11 Signal Sets 31810.12 sigprocmask Function 32010.13 s igpending Function 32210.14 sigaction Function 32410.15 sigsetjmp and siglongjmp Functions 32910.16 s igsuspend Function 33310.17 abort Function 34010.18 sys t em Function 34210.19 s I eep Function 34710.20 Job-Control Signals 34910.21 Additional Features 35210.22 Summary 353Chapter 11.Threads 35511.1 Introduction 35511.2 Thread Concepts 35511.3 Thread Identification 35611.4 Thread Creation 35711.5 Thread Termination 36011.6 Thread Synchronization 36811.7 Summary 385Chapter 12.Thread Control 38712.1 Introduction 38712.2 Thread Limits 38712.3 Thread Attributes 38812.4 Synchronization Attributes 39312.5 Reentrancy 40112.6 Thread-Specific Data 40612.7 Cancel Options 41012.8 Threads and Signals 41312.9 Threads and fork 41612.10 Threads and I/O 42012.11 Summary 420Chapter 13.Daemon Processes 42313.1 Introduction 42313.2 Daemon Characteristics 42313.3 Coding Rules 42513.4 Error Logging 42813.5 Single-Instance Daemons 43213.6 Daemon Conventions 43413.7 Client-Server Model 43913.8 Summary 439Chapter 14.Advanced I/O44114.1 Introduction 44114.2 Nonblocking I/O 44114.3 Record Locking 44414.4 STREAMS 46014.5 I/O Multiplexing 47214.5.1 select and pselect Functions 47414.5.2 pol 1 Function 47914.6 Asynchronous I/O 48114.6.1 System V Asynchronous I/O 48114.6.2 BSD Asynchronous I/O 48214.7 readv and writev Functions 48314.8 readn and writen Functions 48514.9 Memory-Mapped I/O 48714.10 Summary 492Chapter 15.Interprocess Communication 49515.1 Introduction 49515.2 Pipes 49615.3 popen and pclose Functions 50315.4 Cop rocesses 51015.5 FIFOs 51415.6 XSI IPC 51815.6.1 Identifiers and Keys 51815.6.2 Permission Structure 52015.6.3 Configuration Limits 52115.6.4 Advantages and Disadvantages 52115.7 Message Queues 52215.8 Semaphores 52715.9 Shared Memory 53315.10 Client-Server Properties 54115.11 Summary 543Chapter 16.Network IPC: Sockets 54516.1 Introduction 54516.2 Socket Descriptors 54616.3 Addressing 54916.3.1 Byte Ordering 54916.3.2 Address Formats 55116.3.3 Address Lookup 55316.3.4 Associating Addresses with Sockets 56016.4 Connection Establishment 56116.5 Data Transfer 56516.6 Socket Options 57916.7 Out-of-Band Data 58116.8 Nonblocking and Asynchronous I/O 58216.9 Summary 583Chapter 17.Advanced IPC 58517.1 Introduction 58517.2 STREAMS-Based Pipes 58517.2.1 Naming STREAMS Pipes 58917.2.2 Unique Connections 59017.3 UNIX Domain Sockets 59417.3.1 Naming UNIX Domain Sockets 59517.3.2 Unique Connections 59717.4 Passing File Descriptors 60117.4.1 Passing File Descriptors over STREAMS-Based Pipes 60417.4.2 Passing File Descriptors over UNIX Domain Sockets 60617.5 An Open Server, Version 1 61517.6 An Open Server, Version 2 62017.7 Summary 629Chapter 18.Terminal I/O 63118.1 Introduction 63118.2 Overview 63118.3 Special Input Characters 63818.4 Getting and Setting Terminal Attributes 64318.5 Terminal Option Flags 64318.6 stty Command 65118.7 Baud Rate Functions 65218.8 Line Control Functions 65318.9 Terminal Identification 65418.10 Canonical Mode 66018.11 Noncanonical Mode 66318.12 Terminal Window Size 67018.13 termcap, terminfo, and curses 67218.14 Summary 673Chapter 19.Pseudo Terminals 67519.1 Introduction 67519.2 Overview 67519.3 Opening Pseudo-Terminal Devices 68119.3.1 STREAMS-Based Pseudo Terminals 68319.3.2 BSD-Based Pseudo Terminals 68619.3.3 Linux-Based Pseudo Terminals 68919.4 pty fork Function 69119.5 pty Program 69419.6 Using the pty Program 69819.7 Advanced Features 70519.8 Summary 706Chapter 20.A Database Library 70920.1 Introduction 70920.2 History 70920.3 The Library 71020.4 Implementation Overview 71220.5 Centralized or Decentralized? 71620.6 Concurrency 71820.7 Building the Library 71920.8 Source Code 71920.9 Performance 74720.10 Summary 752Chapter 21.Communicating with a Network Printer 75321.1 Introduction 75321.2 The Internet Printing Protocol 75321.3 The Hypertext Transfer Protocol 75621.4 Printer Spooling 75721.5 Source Code 75821.6 Summary 805Appendix A.Function Prototypes 807Appendix B.Miscellaneous Source Code 843B.1 Our Header File 843B.2 Standard Error Routines 846Appendix C.Solutions to Selected Exercises 853Bibliography 885Index 891
-
UNIX教程(美)萨沃尔 等著本书既适合于UNIX初学者,也适合于需要详细参考内容的UNIX高级用户。在引导读者学习进程、文件存储以及I/O管理等操作系统功能的同时,本书将深入阐述如何以及为什么在UNIX环境下工作。 本书的主要特点 ·简明而精心设计的章节内容,主要反映在精练的相关主题、精彩示例,以及帮助读者加强对复杂概念理解和掌握的章节练习上。 ·独一无二的组织结构,帮助初学者通过掌握UNIX应用程序用户接口,从而增强对操作系统基本原理的理解。 ·涵盖了UNIX软件开发工具以及速查向导,为新手和富有经验的程序员带来便利。 ·用图文并茂的方式描述UNIX的命令和概念,加深读者对深奥概念和主题的理解。 第2版新增的内容 ·本书开篇的“UNIX快速入门”一章,使读者快速掌握在UNIX下工作的基本方法。 ·关于图形化Emacs编辑器的内容,并用全新的一节详细介绍基于IMAP和POP3的UNIX电子邮件软件:图形化Kmail。 ·加强了对进程属性和UNIX进程层次结构的说明。 ·增加了一些新命令,如host、dig、ssh (安全Shell) 、scp和sftp。 ·编译C++和Java程序的相关资料 (第20章) 。 ·完全更新了第21章,包括XFree86、fvwm2、如何使用xconfigurator修改X Window系统的默认设定、如何安装UNIX包,以及介绍Mac OS X UNIX和Aqua GUI。 ·第8章中目录的访问权限,以及第12章中的UNIX FIFO。 ·实验室手册 (Lab Manual) 包含课上的实验室练习和问题,以及大量的实验练习和家庭作业,用于加深读者对本书内容的理解。