万维网操作系统---基本原理

基本原理

 

由于web的弊端,基于web的应用没有本地计算机程序的相应概念,如进程、线程、堆栈、地址等,造成用户浏览器仅仅是呈现服务器数据及简单把用户数据发送工具,不能像本地程序一样,有数据空间、进程空间来包容各种用户数据。现在的脚本程序也可以在本地处理一些简单数据,但对于复杂数据处理起来非常繁琐,使用像ajax、xml等其他辅助技术来处理复杂数据。由于这些因素的存在,现在基于web应用对初学者来与学习本地编程语言不可比较。因此,本文尝试用一种结合本地技术与远程数据的技术,使得客户端程序处理远程数据时可像本地一样方便。为此,提出如下的基本解决方案。

1、      进程空间定义

Www协议的定义只是为了呈现用户文档数据,完全没有程序的概念,在web上建立应用时,就必须建立各种虚拟的数据空间,如cooke技术。任何人访问统一网站时,浏览器就会偷偷建立cooke文件,以便识别用户的访问,这是一种非常不和谐的技术。如果像本地程序一样,当用户打开应用程序时,操作系统便建立了一个程序运行的内存空间---进程,除非程序设计需要原因以外,进程不会在本地上再建立多余的文件,程序的运行只是对内存数据的处理,而web应用因为没有进程空间概念,浏览器也仅仅只是呈现数据样式,没有办法再进一步处理。

为了让web应用像本地程序一样,本文提出可以像本地进程一样,定义一个进程空间。

为方便,这里简单用xml来表示web进程的定义:

<进程 ID=“8888”程序名=“facebook”>

< … >

< … >

 </进程>

如上所示,当用户访问各种网站应用时,web服务器返回的只是该应用服务的进程数据给浏览器,用户浏览器再根据进程数据位用户在本地建立进程空间。

2、      函数空间定义

只有进程空间定义,web应用是没有办法运行起来的。操作系统出了会建立进程空间,为了并行计算方便,他还会建立诸如线程、纤程、对象等概念的相对独立的空间,这些空间的相对简单,且都是平等的概念,每个线程空间都是分布的进程空间线性范围内,不会交叉在一起,因此,web应用模仿操作系统也定义相似的概念---函数空间。函数空间用来包含用户数据,把用户数据相对分割开来,并提供函数内安全保护。

简单表示如下:

<进程 ID=“8888”程序名=“facebook”>

<好友>

<乔布斯ID=“1”/>

<…>

</好友>

<粉丝>

<…>

<…>

</粉丝>

</进程>

这种表示方法与XHTML非常相似,但是这是有本质区别的,本文是为了web应用而定义的,而XHTML是为文档服务的。

上述的表示方法基本上与本地进程一样,只是对空间进行简单的线性分割,采取这样的模型主要是为web应用设计方便。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值