- 博客(10)
- 收藏
- 关注
原创 进程通信 线程通信 进程调度算法
共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。它往往与其他通信机制,如信号量,配合使用,来实现进程间的同步和通信。基本思想:系统将所有的就绪进程按先来先服务的原则,排成一个队列,每次调度时,把CPU分配给队首进程,并令其执行一个时间片。管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。套解口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同及其间的进程通信。基本思想:先到达的进程先进入就绪队列,先进行调度的原则。
2024-05-27 11:12:25
154
原创 LRU 算法
LRU算法又称最近最少使用算法,它的基本思想是长期不被使用的数据,在未来被用到的几率也不大,所以当新的数据进来时我们可以优先把这些数据替换掉。在LRU算法中,使用了一种有趣的数据结构,称为哈希链表。我们知道哈希表是由多个<Key,Value>对组成的,哈希链表是将这写节点链接起来,每一个节点都有一个前驱结点和后驱节点,就像双向链表中的节点一样。哈希表拥有了固定的排列顺序。
2024-05-23 11:28:17
294
原创 TCP/UDP TCP三次握手、四次挥手
该状态会持续 2MSL(最大段生存期,指报文段在网络中生存的时间,超时会被抛弃) 时间,若该时间段内没有 B 的重发请求的话,就进入 CLOSED 状态。然后会发送 ACK 包,并进入 CLOSE_WAIT 状态,此时表明 A 到 B 的连接已经释放,不再接收 A 发的数据了。服务端收到连接请求报文段后,如果同意连接,则会发送一个应答,该应答中也会包含自身的数据通讯初始序号,发送完成后便进入 SYN-RECEIVED 状态。若客户端 A 认为数据发送完成,则它需要向服务端 B 发送连接释放请求。
2024-05-23 00:16:05
231
原创 十大排序算法
快速排序的基本思想是:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,已达到整个序列有序。一趟快速排序的具体过程可描述为:从待排序列中任意选取一个记录(通常选取第一个记录)作为基准值,然后将记录中关键字比它小的记录都安置在它的位置之前,将记录中关键字比它大的记录都安置在它的位置之后。 2.重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。 6.重复步骤2~5。
2024-05-20 13:44:59
444
1
原创 网络编程socket
请注意,这只是一个简单的示例,实际的网络通信可能涉及更复杂的协议和数据处理。在实际应用中,你可能还需要处理错误、异常和安全性等方面的考虑。这个示例演示了一个简单的TCP服务器初始化过程。你可以根据需要进一步扩展代码,以处理实际的数据通信和协议。
2023-10-18 11:48:51
20
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人