计算机理论与基础
夜石
韦海涛
展开
-
DFS BFS的典型案例
https://github.com/AbitGo/Algorithm/blob/main/Master%20algorithm/src/Algorithm/DFS_BFS/BFS_Maze.javaBFS类型package Algorithm.DFS_BFS;import DataStructure.BaseDataStructureUtil.LinerList.queue.LinkSqeue;public class BFS_Maze { static class node .原创 2021-12-21 11:01:19 · 128 阅读 · 0 评论 -
正则表达式高级应用(java语言版)
1.边界package 正则;import java.util.ArrayList;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Exp001 { public static void main(String[] args) { // TODO Auto-generate...原创 2019-02-13 20:41:15 · 1607 阅读 · 0 评论 -
正则表达式中级应用(java语言版)
1. 对特殊字符进行转义元字符是在一些在正则表达式里有特殊含义的字符。英文句号”.”是一个元字符,它也可以匹配任何一个单个字符,类似的”[”,”]”也是元字符。package 正则;import java.util.regex.Matcher;import java.util.regex.Pattern;//匹配*a* 类似文本public class Exp001 { pu...原创 2019-02-13 20:41:23 · 1403 阅读 · 0 评论 -
正则表达式初级应用(java语言版)
正则表达式是现代编程的一个极为重要的技能之一,在开发的过程中我们经常需要进行字符串的筛选,截取等操作。接下来我会将《正则表达式必知必会》里的知识点使用java语言描述。1. Java正则基本知识点 正则标记 1.单个字符(数量1) 字符:表示由一个字符组成 \\:表示转义符号'\' \t:表示一个'...原创 2019-02-13 20:41:04 · 1410 阅读 · 0 评论 -
操作系统中的线程种类
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》,接下来我将会使用书中部分描述以及课外例题去巩固知识。线程在现在操作系统中使用非常广泛,但是在各个系统中实现的方式各有不同,如infomix实现的是用户级线程,而macintosh实现的是内核支持线程,比如Solaris OS两者都实现了。1.内核支持线程(Kernel Supported Threads)在OS...翻译 2020-04-23 11:37:44 · 1333 阅读 · 0 评论 -
操作系统中的信号量实现互斥(java实现)
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》接下来我将会使用java语言去实现内部代码。信号量操作为使多个进程能互斥地访问某临界资源,只需为该资源设置一互斥信号量mutex,并设其初始值为1,然后将各进程访问该资源的临界区cs置于wait(mutex)和signa(mutex)操作之间即可。这样,每个欲访问该临界资源的进程在进入临界区之前,都要先对mute...原创 2020-03-09 11:18:27 · 2859 阅读 · 0 评论 -
操作系统中的LRU置换算法的实现(java实现)
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》接下来我将会使用java语言去实现内部代码。LRU算法LRU算法全程为Least Recently Used置换算法,最近最久未使用(LRU)的页面置换算法是根据页面调入内存后的使用情况做出的决策。假定系统为某进程分配了三个物理块,并考虑有以下的页面号引用串:7, 0, 1, 2, 0, 3, 0, 4, 2, ...原创 2020-02-08 00:27:47 · 2019 阅读 · 1 评论 -
操作系统中的最佳置换Optimal算法的实现(java实现)
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》接下来我将会使用java语言去实现内部代码。Swap指令最佳置换算法是由Belady于1966年提出的一种理论上的算法。其所选择的被淘汰页面是以后永不使用的,或许是在最长(未来)时间内不再被访问的页面。采用最佳置换算法通常保证获取最低的缺页率。但人们目前还无法与之,一个线程在内存的若干个页面中,哪个页面是未来最长时间内不...原创 2020-02-07 00:24:00 · 3197 阅读 · 0 评论 -
操作系统中的哲学家进餐问题的实现(java实现)
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》接下来我将会使用java语言去实现内部代码。Swap指令哲学家就餐问题是在计算机科学中的一个经典问题,用来演示在并行计算中多线程同步(Synchronization)时产生的问题。在1971年,著名的计算机科学家艾兹格·迪科斯彻提出了一个同步问题,即假设有五台计算机都试图访问五份共享的磁带驱动器。稍后,这个问题被托尼·霍...原创 2020-07-02 22:14:11 · 1809 阅读 · 0 评论 -
操作系统中的Swap指令实现互斥(java实现)
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》接下来我将会使用java语言去实现内部代码。Swap指令该指令又称为对换指令,在Intel 80x86中又称为XCHG指令,用于交换两个字的内容。下面为伪代码。void swap(boolean *a,boolean *b){ boolean temp; temp = *a; *a = *...原创 2020-01-17 22:10:28 · 5352 阅读 · 0 评论 -
操作系统中的Test-and-Set指令实现互斥(java实现)
在学习操作系统这本书的时候,我们使用的是汤小丹老师的《计算机操作系统》接下来我将会使用java语言去实现内部代码。Test-and-Set指令用TS指令管理临界值区时,为每个临界资源设置一个布尔变量lock,由于变量lock代表了该资源的状态,故可以将它看成一把锁。lock的初值为false,表示临界值资源空闲。进程在进入该线程之前,首先会使用TS指令测试lock,如果lock为fals...原创 2020-01-17 00:42:34 · 6796 阅读 · 2 评论 -
Unity3d动画死亡动画一直播放的问题
在学习unity3d的过程中遇到一个问题,就是在任务死亡的时候人物会一直重复死亡的动作,在设置animations的之后发现一起都没问题,触发器也是使用的trigger,一起都没问题,一直没找到解决的办法,终于在一片博客的帮助下解决了:在siki的网站上看见的只需要将下面这个勾选去掉即可...原创 2019-09-28 20:19:09 · 5643 阅读 · 1 评论 -
磁盘调度与电梯算法
让磁盘控制器在若干个请求中选择一个来首先执行,是提高磁盘系统吞吐率的一个有效方法,相比较先到先到先服务算法在多请求时磁盘吞吐率更高。电梯算法:我们把磁头看作是在做横跨磁盘的扫描,从柱面最内圈再到最外圈,然后再返回来,正如电梯做垂直运动,从建筑物的最底层再到顶层,然后再返回来。假设我们正在调度一个Megatorn747硬盘,我们回一该磁盘的平均寻道时间、旋转等待时间和传输时间分别为6.46、...原创 2019-04-24 09:28:06 · 4488 阅读 · 0 评论