PCgame 版 (精华区)

发信人: ghost (正在奋发中,wait), 信区: mud
标  题: os运行流程
发信站: 听涛站 (Wed Jun 21 17:42:20 2000), 转信

   今天我看了站上的一些文章,加上查看原程序,把mudos启动后,程序
运行的流程搞清楚了。小弟觉得只要有一个好的mudos,就可写出新的mudlib
框架。我拿用户连接来解释程序的运行流程。
    在config.xxx文件中指出了master和global两个文件,这是十分重要的
文件。mudos启动后会加载上述两个文件(其它文件也有,但上述文件为主要
)进入内存,mudos中定义了一些特殊的函数,例如create()、init()等等,
这些函数都是在特定事件中由mudos自动调用的。当用户在port口请求连接的
时候,mudos自动调用master.c中的connect()函数,然后connect()函数调用
LOGIN_OB这个物件,而LOGIN_OB是个物件常量,在global.h中定义LOGIN_OB
的值是"/clone/user/login.c",也就是说connect()调用了login.c这个物件
在login.c中有一些特殊函数,如果按照用户正确登陆的流程,mudos自动调
用login.c中logon()这个特殊函数。在logon()中由调用LOGIN_D这一物件常
量,LOGIN_D在global.h文件中所定义的值是"/adm/daemons/logind",于是
mudos又把logind.c调入内存并运行。
    我们一般认为mudos在编译前在它的设置文件中定义了用户login的程序
路径及文件名,编译后路径和文件名不可改,在用户连入的时候,mudos根据
路径自动启动用户登陆程序。其实非也,mudos只是一个对mud进行低级支持
的程序。
    我们可以利用mudos,完全抛弃已有的mudlib框架,进行新的创作。这样
才能使中国的mud种类走向多样化。
--
我是沧海一小龙
游到东来游到西
找寻未知的东西
只求逍遥在人间
                         

※ 来源:.听涛站 cces.net.[FROM: 匿名天使的家]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:0.805毫秒