理内存管理、显示生成、磁盘输入/输出、移动通信,以及其他“操作系统”功能。对象实现世界本身
语义。每种类型
栖息地对象都有
个由
组资源组成
定义,包括用于驱动显示、音频数据和可执行代码
动画。对象
可执行代码实现
系列标准行为,每个行为都由不同玩家
命令或系统事件调用。该模型与面向对象编程系统中
模型类似,如Smalltalk[69],分类、方法、消息都是如此。这些资源消耗
大量稀缺
前端内存,因此
们不能同时将它们全部保存在内核中。幸运
是,它们
定义是不变
,所以
们只需在需要
时候从磁盘中交换它们,丢弃最近使用
资源来腾出空间。
当个对象被实例化时,
们分配
个内存块来包含对象
状态。对象状态信息
前几个字节在所有对象中都采用相同
形式,包括对象
屏幕位置和显示属性等内容。当系统内核生成显示并管理运行时
环境时,该标准信息将被内核解释。状态信息
其余部分随对象类型而变化,只能通过对象
行为代码访问。
对象行为是由内核在响应玩家输入信息时调用
。每个对象都响应
组标准动词,这些标准动词直接映射到玩家可用
命令。每个行为只是
个执行指定动作
子程序,为此,它可以调用其他对象
行为或向后端发送请求消息。除
标准
动词行为之外,对象可能还有额外
行为,这些行为是由从后端异步到达
消息所调用
。
后端还维护着面向对象世界。与前端
样,后端对象具有可执行
行为和内存中
状态信息。此外,由于后台维护着整个栖息地世界持续
全局状态,因此对象也由数据库记录来表示,这些数据库记录可以在“不使用”
时候存储在磁盘上。后端对象行为是由前端
消息调用
。这些后端行为
工作方式大致相同:后端从玩家
前端接收到
请求
些动作
消息,随后采取行动并使世界
状态产生变化;后端行为将响应消息发送回前端,通知它请求
结果,并将通知消息发送到同
地区其他玩家
前端,告诉他们发生
什
事情。
经验教训
为在有限
篇幅里尽可能多地叙述,
们将通过
系列
原则和主张来描述
们自认为学到
东西,这些原则和主张围绕着推理和事例展开。
们在上文提到
们
主要原则:
多用户环境是网络空间概念核心。
们深信,网络空间系统
个决定性特征是它代表
个多用户环境。这源于
个事实:(在
们看来)人们在这样
个系统中寻求
是丰富性、复杂性和深度。没有人知道如何制造出接近真正人类复杂性
自动机器,更不用说
请关闭浏览器阅读模式后查看本章节,否则可能部分章节内容会丢失。