图书介绍
NOVELL指南 NetWare 4.0NLM程序设计PDF|Epub|txt|kindle电子书版本网盘下载
![NOVELL指南 NetWare 4.0NLM程序设计](https://www.shukui.net/cover/17/31563031.jpg)
- (美)戴(Day,Michael)等著;李卫国等译 著
- 出版社: 北京:电子工业出版社
- ISBN:7505322710
- 出版时间:1994
- 标注页数:399页
- 文件大小:14MB
- 文件页数:413页
- 主题词:局部区域网络-程序设计 程序设计-局部区域网络
PDF下载
下载说明
NOVELL指南 NetWare 4.0NLM程序设计PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
引 言……………………………………………………………………………………(Ⅳ)第一章NLM基础1
熟悉NetWare操作系统环境1
目 录1
了解NLM是什么?2
NLM能做什么?3
怎样编译一个NLM?3
NLM程序设计所需内容3
熟悉NetWare NLM C接口库函数3
怎样使你的NLM程序设计又快又好?4
为什么要了解CLIB接口?4
什么是CLIB中一般类型的函数?4
怎样使用NLM库APIs?6
NLM链接程序的差异7
怎样使用NLM链接程序?7
什么是PRELUDE.OBJ?7
链接/装入程序7
了解NetWare核8
核是怎样运行的?8
内存管理8
NetWare是怎样使用内存的?8
什么是多线程程序设计的基本内容?9
什么是多线程程序设计?9
多线程程序设计9
怎样分配和使用内存?9
NetWare提供怎样的内部保护机制以阻止NLMs相互间的破坏?9
NLM上下文变量10
什么是NLM上下文?10
怎样建立NLM上下文?10
屏幕处理系统10
什么是屏幕?10
怎样使用NLM库?11
怎样建立NLM库?11
NLM库11
推荐使用屏幕的方法11
什么是NLM库?11
目录服务和装订库12
什么是目录服务?12
DIB和装订库之间的区别12
什么是装订库仿真?12
怎样访问目录?13
了解NetWare 4.0文件系统13
文件系统怎样执行?13
名字空间13
什么是名字空间?13
什么是SPXⅡ?14
怎样区别SPXⅡ与IPX/IP?14
怎样使用SPXⅡ?14
熟悉SPXⅡ14
怎样使用名字空间?14
熟悉STREAMS15
什么是SREAMS?15
为什么需要了解STREAMS?15
怎样使用STREAMS?15
小结15
单线程的NLMs17
线程和非优先级环境的定义17
第二章写多线程NLMs程序17
多线程的NLMs18
非优先级环境18
NetWare OS中的队列18
线程与作业的比较:它们分别在OS中的工作原理19
WorkToDoList队列19
RunList队列19
DelayedWorkToDoList队列19
本章讨论的C接口子程序20
LowPriorityRunList队列20
一个多线程NLM例子23
服务器一侧23
客户方一侧24
ENGINE NLM的主线程24
主程序为开始附加线程作准备27
OPENSEMAPHORE子程序29
INITMAIN:缺省线程组中的附加线程29
初始化监听、发送ECB31
为监听询问设置监听、发送ECB32
让InitMain睡眠32
InitMain从睡眠到唤醒34
InitMain建立线程组35
EngineMain填写监听ECB(包括SemHandle字段)并且设置它们35
EngineMain睡眠36
EngineMain唤醒并得到呼入请求37
EngineMain处理ECB请求40
使用BeginThread的选择方法44
正常地退出engine NLM44
小结47
第三章NetWare目录服务48
目录服务的概念48
定义目录信息库49
了解目录纲要49
解释什么是分区52
回答访问问题52
进一步考查目录服务的安全性53
开始用目录服务函数58
成为正式的NetWare 4.0客户60
初始化目录上下文60
通过注册建立凭证63
进行证明63
目录服务的访问控制65
为目录信息库设置访问安全65
改变ACL属性66
安全等效性和组成员68
改变目标的密钥对69
查询目录树70
通过浏览树来找出目标70
执行黄页查询72
两种检查属性值的方法74
目录纲要函数76
修改目录纲要77
分区的目录树79
一个简单的NLM应用81
学习使用DSSCRIPT81
介绍DSSCRIPT82
练习运行DSSCRIPT82
学习怎样建立一个脚本文件83
小结93
第四章基本文件系统程序设计94
NetWare 4.0文件系统概述94
文件系统的向下兼容性94
NetWare卷94
文件系统高速缓存96
并发控制97
事务控制97
压缩98
稀疏文件98
名字空间98
子地址分配99
标准文件I/O99
低级标准I/O99
高级标准I/O99
对于NetWare的DIR命令101
合法的NetWare路径110
查询目录111
打印文件的时间和日期信息112
从目标IDs获得目标名113
获得子目录信息114
修改DIR.NLM114
文件属性处理115
FLAG.NLM的内容115
处理命令行参数122
处理文件属性123
修改FLAG.NLM124
用户信息和控制124
空间消耗控制124
托管控制126
修改继承权屏蔽129
DSPACE.NLM129
小结138
对DSPACE.NLM的修改138
第五章高级文件系统编程139
高性能文件I/O139
异步文件I/O注释141
用FEsopen获得更多的控制141
转移服务器注释143
用共享的文件工作143
标识文件共享143
sopen和FEsopen144
在一个可共享文件上加锁144
对单个文件加锁和解锁145
对一组文件加锁和解锁146
加锁和释放单个记录147
加锁和释放一组记录149
一些文件或记录解锁,但不清除它们150
什么是一个事务?151
什么是一不完整事务?151
NetWare事务跟踪系统151
逻辑锁与物理锁151
隐含事务和明显事务152
在你的NLM中使用TTS152
异步文件系统155
异步地读文件数据155
释放由AsyncRead所分配的存储区157
异步地写文件数据158
FILEIO.NLM159
文件监视器接口170
FMON.NLM171
对FMON.NLM源程序的讨论191
小结196
第六章IPX/SPX与SPX Ⅱ通信197
IPX编程197
IPX的组成部分198
Client/Server应用程序的编程200
事件服务子程序(ESRS)的使用200
SPX的使用205
IPX与SPX的比较205
把采用IPX的应用程序移植到SPX205
SPX Ⅱ212
SPX Ⅱ的评价213
介绍用于SPX Ⅱ中的TLI213
TLI和IPX216
TLI和SPX220
TLI和TCP226
小结227
第七章用NCP扩展器编写分布式应用程序229
NCP扩展器如何工作229
NCP扩展器的APIs230
C接口服务器APIs230
C接口客户APIs230
服务器一方231
在一个样本的客户机/服务器NLM中实现NCP扩展器231
NCP扩展器的优点和缺点231
客户机一方253
小结284
第八章存储管理和保护285
Netware 4.0存储管理285
存储管理和处理程序285
存储管理服务控制命令287
NetWare 4.0存储保护288
环保护288
范围保护288
开发者选项290
存储保护演示NLM:Prodemo290
存储保护命令290
调试(debugger)命令292
小结294
向下兼容性:使用目录库和装订库295
第九章编写与多种NetWare版本兼容的NLM295
Broker NLM如何动态地输入目录库服务APIs296
Broker NLM是如何工作的301
本章讨论的C接口程序302
建立一个基于装订库的客户307
建立一个基于目录库的客户324
删除一个客户331
在目录库中生成一个Broker目标(Broker Object)332
在ENGINE.H中的预处理器语句346
向下性兼容性:合适的APIs和预处理器指令346
在ENGINE.C中的预处理器语句347
编写一个运行于NetWare SFTⅢ上的NLM351
镜像服务器的工具:IOEngine和MSEngine351
IOEngine支持C语言接口程序352
MSEngine支持的NetWare C接口程序353
小结353
字节顺序和数据校准354
第十章NETWARE可移植性354
指导1:遵循标准的技术说明编写程序(ANSI C)355
指导2:避免对数据目标值的描述作出假设355
在结构中引用元素356
将“字节”指针拼接成“字”或“长字”指针,将“字”指针拼接成“长字”指针358
把非校准数据用于库程序359
对于所有的数据长度使用长度操作符359
寻址数组元素359
指导3:避免对字节顺序做假设359
指导4:使用宏指令消除机器字节顺序特性361
指导5:避免将若干字节组合成一个长字或字384
指导6:避免通过长字指针分配/初始化字节386
指导7:避免对堆栈的用法和堆栈的增加方向做假设387
指导8:不要假设缺省使用的编程语言或计算机388
使用INT388
位图389
使用变参方式来实现那些需要参数数量是变化的函数389
定义范围与使用局部和全局变量及函数389
指导9:对依靠环境的程序进行标识、分离和参数化390
指导10:在每个程序中包括头文件Portable.H文件391
其它方面的指导391
尽可能地将特殊的用户接口从程序中分离出来391
用许多计算机上的各种不同的编译器来测试程序391
让有不同背景的人来检查程序391
小结392
第十一章名字空间、数据流、扩展属性393
什么是名字空间?393
什么是数据流?394
什么是扩展属性?395
NetWare的名字空间机制的概要395
文件工具(File Engine)接口的综述396
AFP(Apple Talk Filing Protocol)API综述398
小结399