Linux网络编程

副标题:无

作   者:李卓桓等编著

分类号:

ISBN:9787111076773

微信扫一扫,移动浏览光盘

简介

   本书详尽而细致地介绍了在Linux操作系统下进行网络编程所需要的各种知识,从基本的进程控制、通信到Berkeley套接字都有讲解。书中还穿插了大量的实例程序,并配以说明,更加方便读者的学习和理解。本书内容的精心安排,简洁的措辞,丰富的实例可以使初学者迅速地掌握Linux网络编程的技术。同时,Linux的高级程序员也可以从中得到一些启示,从而最大限度地发挥Linux程序的潜能。   本书适用于各种Linux网络程序的开发维护人员。   

目录

目录

前言

第1章 概论

1.1 网络的历史

1.2 osi模型

1.3 internet体系模型

1.4 客户/服务器模型

1.5 unix的历史

1.5.1 unix诞生前的故事

1.5.2 unix的诞生

1.5.3 1979-unix第7 版

1.5.4 unix仅仅是历史吗

1.6 linux的发展

1.6.1 linux的发展历史

1.6.2 什么叫gnu
1.6.3 linux的特色

1.6.4 硬件需求

1.6.5 linux可用的软件

1.6.6 为什么选择linux
1.7 linux和unix的发展

.第2章 unix/linux模型

2.1 unix/linux基本结构

2.2 输入和输出

2.2.1 unix/linux文件系统简介
2.2.2 流和标准i/o库

2.3 进程

第3章 进程控制
3.1 进程的建立与运行

3.1.1 进程的概念

3.1.2 进程的建立

3.1.3 进程的运行

3.1.4 数据和文件描述符的继承

3.2 进程的控制操作

3.2.1 进程的终止
3.2.2 进程的同步

3.2.3 进程终止的特殊情况

3.2.4 进程控制的实例

3.3 进程的属性

3.3.1 进程标识符

3.3.2 进程的组标识符

3.3.3 进程环境

3.3.4 进程的当前目录

3.3.5 进程的有效标识符

3.3.6 进程的资源

3.3.7 进程的优先级

3.4 守护进程

3.4.1 简介

3.4.2 守护进程的启动

3.4.3 守护进程的错误输出

3.4.4 守护进程的建立

第4章 进程间通信

4.1 进程间通信的一些基本概念

4.2 信号

4.2.1 信号的处理

4.2.2 信号与系统调用的关系
4.2.3 信号的复位

4.2.4 在进程间发送信号

4.2.5 系统调用alarm()和pause()

4.2.6 系统调用setjmp()和longjmp()

4.3 管道

4.3.1 用c来建立、使用管道

4.3.2 需要注意的问题

4.4 有名管道

4.4.1 有名管道的创建

4.4.2 有名管道的i/o使用

4.4.3 关于有名管道的一些问题

4.5 文件和记录锁定

4.5.1 实例程序及其说明

4.5.2 锁定中的几个概念

4.5.3 system v的咨询锁定

4.5.4 bsd的咨询式锁定

4.5.5 前面两种锁定方式的比较

4.5.6 linux的其他上锁技术

4.6 system v ipc

4.6.1 ipcs命令

4.6.2 ipcrm命令

4.7 消息队列

4.7.1 有关的数据结构

4.7.2 有关的函数

4.7.3 消息队列实例

4.8 信号量

4.8.1 有关的数据结构

4.8.2 有关的函数

4.8.3 信号量的实例

4.9 共享内存

4.9.1 有关的数据结构

4.9.2 有关的函数
4.9.3 共享内存应用举例

4.9.4 共享内存与信号量的结合使用
第5章 通信协议简介

5.1 引言

5.2 xns概述

5.2.1 xns分层结构
5.3 ipx/spx协议概述
5.3.1 网际包交换

5.3.2 排序包交换

5.4 net bios概述
5.5 apple talk概述

5.6 tcp/ip概述

5.6.1 tcp/ip结构模型

5.6.2 internet协议

5.6.3 传输控制协议

5.6.4 用户数据报文协议

第6章 berkeley套接字

6.1 引言

6.2 概述

6.2.1 套接字的历史
6.2.2 套接字的功能

6.2.3 套接字的三种类型

6.3 linux支配的网络协议

6.4 套接字地址

6.4.1 什么是套接字

6.4.2 套接字描述符

6.4.3 一个套接字是怎样在网络上传输数据的

6.5 套接字的一些基本知识

6.5.1 基本结构
6.5.2 基本转换函数
6.6 基本套接字调用

6.6.1 socket()函数
6.6.2 bind()函数
6.6.3 connect()函数
6.6.4 listen()函数
6.6.5 accept()函数
6.6.6 send()、recv()函数
6.6.7 sendto()和recvfrom()函数

6.6.8 close()和shutdown()函 数

6.6.9 setsockopt()和getsockopt函数
6.6.10 getpeername()函数
6.6.11 gethostname()函数
6.7 dns的操作

6.7.1 理解dns

6.7.2 和dns有关的函数和结构
6.7.3 dns例程

6.8 套接字的客户/服务器结构实现

6.8.1 简单的流服务器

6.8.2 简单的流式套接字客户端程序
6.8.3 数据报套接字例程

6.9 保留端口

6.9.1 简介
6.9.2 保留端口

6.10 五种i/o模式

6.10.1 阻塞i/o模式

6.10.2 非阻塞模式i/o

6.10.3 i/o多路复用

6.10.4 信号驱动i/o模式

6.10.5 异步i/o模式
6.10.6 几种 i/o模式的比较

6.10.7 fcntl()函数
6.10.8 套接字选择项select()函数
6.11 带外数据

6.11.1 tcp的带外数据

6.11.2 oob传输套接字例程的服务器代码server.c

6.11.3 oob传输套接字例程的客户端代码client.c

6.11.4 编译例子

6.12 使用inetd

6.12.1 简介

6.12.2 一个简单的服务器程序

6.12.3 /etc/services和/etc/inetd.conf文件
6.12.4 一个复杂一些的inetd 服务器程序

6.12.5 一个更加复杂的inetd服务器程序

6.12.6 程序必须遵守的安全性准则

6.13 小结

第7章 网络安全性

7.1 网络安全简介

7.1.1 网络安全的重要性

7.1.2 信息系统安全的脆弱性
7.2 linux网络不安全的因素

7.3 linux程序员安全
7.3.1 系统子程序
7.3.2 标准c函数库
7.3.3 书写安全的c程序
7.3.4 suid/sgid程序指导准则
7.3.5 root程序的设计
第8章 ping例程

8.1 ping命令简介

8.2 ping的基本原理

第9章 tftp例程

9.1 tftp协议简介

9.2 tftp的使用
9.3 tftp的原理

9.4 tftp的基本结构
第10章 远程命令执行
10.1 引言

10.2 rcmd函数和rshd服务器

10.3 rexec函数和rexecd服务器

第11章 远程登录

11.1 简介

11.2 终端行律和伪终端

11.3 终端方式字和控制终端
11.4 rlogin概述

11.5 窗口环境

11.6 流控制与伪终端方式字

11.7 rlogin客户程序

11.8 rlogin服务器

第12章 远程过程调用

12.1 引言

12.2 远程过程调用模型

12.3 传统过程调用和远程过程调用的比较

12.4 远程过程调用的定义

12.5 远程过程调用的有关问题

12.5.1 远程过程调用传送协议

12.5.2 sun rpc

12.5.3 xerox courier

12.5.4 apollo rpc

12.6 stub过程简介
12.7 rpcgen简介
12.8 分布式程序生成的例子

12.9 小结

第13章 远程磁带的访问
13.1 简介

13.2 linux磁带驱动器的处理
13.3 rmt协议

13.4 rmt服务器设计分析
第14章 www与http协议

14.1 引言

14.2 http客户请求

14.2.1 客户端

14.2.2 服务器端

14.2.3 web请求简介
14.2.4 http-hypertext transfer protocol超文本传输协议

14.3 web编程

附录a 有关网络通信的服务和网络库函数

附录b vi使用简介
b.1 vi基本观念

b.1.1 进入与离开

b.1.2 vi输入模式

b.2 vi基本编辑

b.2.1 删除与修改

b.3 vi进阶应用
b.3.1 移动光标

b.3.2 进阶编辑命令

b.3.3 文件命令

附录c linux下c语言使用与调试简介
c.1 c语言编程

c.2 什么是c?

c.3 gnu c编译器

c.3.1 使用gcc

c.3.2 gcc选项

c.3.3 优化选项

c.3.4 调试和剖析选项

c.3.5 用gdb调试gcc程序

c.4 另外的c编程工具

c.4.1 xxgdb

c.4.2 calls

c.4.3 cproto

c.4.4 indent
c.4.5 gprof

c.4.6 f2c和p2c

附录d ping源码

附录e tftp服务器程序源码


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Linux网络编程
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon