通用模式:计算机中的茅坑拉屎现象研究(未完成)

导言

在计算机的算法中,操作系统和组成原理中,我们会发现一种通用问题模式,叫做有限的坑位分配给谁的问题,更通用的说法是顺序问题,本质是一个先来后到排序的rank问题,更本质是一个动态规划的函数映射确定问题。比如进程运行排队,磁盘访问调度,内存页面换算,IO设备等。本文旨在对所有茅坑拉屎问题做一个综述和总结,并发现一些共性规律以帮助记忆。内容不断更新中。

 

问题通用建模

坑位资源:元素想要占有的目标,具有一定的价值。

元素:给定坑位,坑位可以为1或多;给定排队元素,排队元素的目标是占用坑位做自己爱做的事情。

元素特征:排队算法的主要依据。

函数映射(排队算法):给定当前状态,确定下一个坑位的使用者,进而确定下n个坑位的使用者,得到一个排队序列。

优化目标:主要来说是效率最大,当然有的也考虑成本、稳定性等其他问题。

 

需要解决的基本问题

如何获得拉屎队列先后顺序

一个占用茅坑的设备如何让别人知道这里已经满员了

如何优雅地释放茅坑

 

集中管理方式

有一个总的仲裁给各个设备,各个设备遵循规定进行茅坑拉屎,也就是有一个厕所管理员,可以分配拉屎权力

 

分布式管理方式

没有厕所管理员,每个设备或个体都有自己的排队和分配抢占原则,大家一起竞争坑位,最后决定顺序。

 

 对通信介质茅坑的占用

CSMA/CD,闪耀的有线茅坑

CSMA/CD用于有线局域网传输,由于线上每个设备都可以监听总线,总线上所有的传输数据都会被所有人听到,所以是一个闪耀的茅坑

每个人遵循的规则,先监听茅坑,如果一段时间都没有人拉屎,那么就占用,一旦占用后发的信息标志着茅坑满员,这时候其他设备等待随机事件直到空闲。

等待拉屎的有几种人,具体有几种分化的类别:

  1-坚持CSMA,一个快要拉到裤子里急死了的人,信道忙的时候也会继续保持监听,因为他除了拉屎什么也干不了,信道一旦空闲立马抢占信道,拜托不上茅坑我真的会死。

  非坚持CSMA,憋屎憋的很难受但还能再挺挺的人,信道空闲也顾不上礼仪直接发送数据,如果信道忙就放弃监听,玩玩手机转移注意力,等一个随机事件再来监听

  p-坚持CSMA,一个优雅的上厕所的迷人的魔幻的绅士,厕所满的时候持续关注厕所,厕所空的时候这个时间片以概率p去厕所,1-p概率不去上厕所,直到厕所被别人占用或者被自己占用为止。

 

CSMA/CA,多人追求一个女孩的故事

不同于无线茅坑,你给你个女孩发情书全班人都直到,有线传输你发的情书只有几个人或者只有你自己知道,但是你又不想自己勾搭的女孩同时还养着其他男人,你想专有沟通,独占茅坑,如何实现呢?

对于能看到你情书的人来说,类似于CSMA/CD算法,唯一不同的是退避时间的规定不同(更有礼貌了),你每发一帧数据都要重新排队,是个舔狗之一。

之所以更有礼貌是因为碰撞检测更难了,所以尽量不想冲突碰撞,两边都是社恐,所以更加有礼貌。

采用确认通话,因为无线信号不好,容易误码

对于看不到你情书的隐藏小男友,你需要请求(RTS)哪个女孩向她接触过的人发送一个恋爱说说(CTS),表面自己已经心有所属了,这样就可以专有对话了。(隐蔽站问题)

posted @ 2022-08-03 22:33  srid  阅读(77)  评论(0)    收藏  举报