竞态条件
来源:互联网 发布:怎么在淘宝找客户资料 编辑:程序博客网 时间:2024/05/17 22:41
1、竞态条件(race condition)
从多进程间通信的角度来讲,是指两个或者多个进程对共享数据进行读或者写的操作时,最终的结果取决于这些进程的执行顺序。竞态条件的发生指的是设备或系统出现不恰当的执行顺序,而得到的不正确的结果。
(待补充)
2、游戏安全中的竞态条件
2.1 简介
竞态条件和其他状态问题是网络游戏中BUG的主要来源,多重世界有边界问题。竞态条件建立在软件边界状态的基础上。
网络延迟(会产生时间扭曲,就像黑洞那样)会让这些问题进一步恶化。大型网络的有序特别的设计,需要将大量的数据分布在许多服务器上。有些存储的是账号信息,有些存储的事状态信息。
竞态条件这种类型的错误都是关于时间的
2.1.1 如何免费玩游戏
一旦你激活了自己的账号,几件事情就会发生。第一,你的账号信息会更新。然后你的玩家账号上会被奖赏一个游戏数据库编码。然而,有些事情可能不是同时发生的。事实上,在你付费要求到达账户服务器和你实际付费的时间之间,空窗期就开启了。这个时间上的延迟有可能长达三天。然而,激活你的角色要用的时间短的多,通常只要几分钟。所以这三天,将会是免费的游戏时间。
但是到此为止,还没有能显示出完整的事件,我们假设在新的一天开始的时候,你登录了网络账号管理系统,取消了付费。这个时候就会出现很有趣的事情了,你的玩家账号可能并没有如你想象的被删除。他被放置为展厅的状态。同时账号服务器获取了一个信息,把你的账号标志为不可付费。这一切都发生在空窗期内,所以你不会受到任何账单。
一天之后,回到家,打算开始玩一晚上的游戏,这是你恢复了你的账号,三天的空窗期再次从零开始。你又可以玩一个晚上,当新的一天再次开始,例行取消付费。
3 网络中的竞态条件
网络里,竞态条件(race condition)会在两个用户同时试图访问同一个可用信道的时候发生,在系统同意访问之前没有计算机能得到信道被占用的提示。统计上说这种情况通常是发生在有相当长的延迟时间的网络里,比如使用地球同步卫星。为了防止这种竞态条件发生,需要家里一个优先级列表。比如用户的用户名在字母表里排列靠前可以得到相对较高的优先级。黑客可以利用竞态条件这一弱点来赢得非法访问网络的权利。
当出现如数冲突的时候,逻辑门偶尔发生竞态条件。由于门的输出状态是有限的,相应输入变化的时间是非零值,因此会导致一些不合适的操作。
0 0
- 竞态条件
- 竞态条件
- 竞态条件
- 竞态条件
- 竞态条件
- 谈谈竞态条件
- 多线程1:竞态条件
- race condition 竞态条件
- 竞态条件(多线程)
- 竞态条件漏洞实验
- Java 并发 竞态条件
- 线程中的竞态条件的问题
- 竞态条件与临界区
- 竞态条件与临界区
- java竞态条件与临界区
- 竞态条件与临界区
- 竞态条件与sigsuspend函数
- 8.竞态条件和临界段
- NSObject的load和initialize方法
- ListView嵌套GridView
- iOS 第三方Reachability网络检测
- 简单总结RectF、Rect 和Matrix ,还有Paint的使用方法
- MFC中关于控件和变量对应方法
- 竞态条件
- sql order by错top(100)percent
- iOS集成环信聊天和EaseUI之后出现警告:Warning! ivar size mismatch in PSUICollectionView_ - can't change the supercl
- 隐藏css中超出TD宽度的字段的方法
- 微信公众号开发接入指南
- 搜索实现最近联系人 thinkPHP框架
- DrawerLayout实现侧滑菜单
- POJ2488==DFS+路径输出+字典序排列
- ITer感悟