摘要: 今天遇到一个这样的问题,假设父进程有一个变量S,fork后,子进程中的变量S地址是否和父进程中的变量S 是相同的? 再学操作系统的时候,知道fork是采用的写时复制,所以如果子进程或者父进程不对变量S做修改的话,它们应该 是指向同一块物理内存,如果有修改,那么它们会指向不同的物理内存,但虚拟内存地址 阅读全文
posted @ 2019-08-25 22:41 张杨 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 首先是LRU的定义,LRU表示最近最少使用,如果数据最近被访问过,那么将来被访问的几率也更高。 所以逻辑应该是每次都要将新被访问的页放到列表头部,如果超过了list长度限制,就将列表尾部的元素踢出去。 主要结构,STL中的双向链表结构list。 主要操作有get,表示访问key对应的value,此时 阅读全文
posted @ 2019-08-18 23:03 张杨 阅读(1584) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 求最后的输出结果: 这道题当时没分清楚,太菜了,结果应该这样推出来, 首先弄清楚fork()返回值,在父进程中是一个非0数,子进程中则是0, 所以pid1可以分为两类值非0和0, (1)pid1非0,pid2同理有两种取值,0或者非0, (2)pid1为0,表示是子进程,则pid2同样是 阅读全文
posted @ 2019-08-18 21:18 张杨 阅读(336) 评论(0) 推荐(0) 编辑
摘要: C++编译过程 C++ 编译过程在介绍编译器之前,先简单地说一下 C++ 的编译过程,以便理解编译器的工作。编译(compiling)并不意味着只创建仅仅一个可执行文件。创建一个可执行文件是一个多级过程,其中最重要的过程是预处理(preprocessing),编译(compliation)和链接(l 阅读全文
posted @ 2019-07-15 23:06 张杨 阅读(1141) 评论(0) 推荐(0) 编辑
摘要: 声明引用的同时必须对其初始化,否则系统会报错,所以我们是无法这样使用 vector<int &> vec; 这条语句会报错,同时引用不是定义一个新的变量或对象,因此内存不会为引用开辟新的空间存储这个引用 而vector将无法开辟存储空间。 参考博客: https://www.cnblogs.com/ 阅读全文
posted @ 2019-07-14 23:06 张杨 阅读(1676) 评论(0) 推荐(0) 编辑
摘要: 最近遇到一个问题,就是要对一个vector的变量设置空的参数默认值,刚开始写NULL,发现不行,后来再网上查了一下,可以通过在外部设置一个变量,来为它赋值为空 运行结果: 阅读全文
posted @ 2019-07-07 21:29 张杨 阅读(1348) 评论(0) 推荐(0) 编辑
摘要: XSS攻击: https://www.cnblogs.com/dolphinX/p/3391351.html 跨站脚本攻击(Cross Site Script为了区别于CSS简称为XSS)指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行 阅读全文
posted @ 2019-06-19 10:17 张杨 阅读(5309) 评论(2) 推荐(1) 编辑
摘要: 我的机器是CUDA16.04的,之前装过CUDA10.0,因为一些原因,现在需要安转CUDA9.0。 1.首先https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target 阅读全文
posted @ 2019-04-01 10:57 张杨 阅读(1946) 评论(0) 推荐(1) 编辑
摘要: 1.cd .ssh 2.执行下面的命令,三次回车。 3.发送公钥 4.写入公钥 这样就可以了。 如果想要去掉自动登录,可以删掉本机authorized_keys文件中对应的信息。 阅读全文
posted @ 2019-03-22 19:46 张杨 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 英伟达驱动版本是384.130 显示的NVRM version: NVIDIA UNIX x86_64 Kernel Module是:384.130。 若是旧的版本就会出现如下问题。 这个问题出现的原因是kernel mod 的 Nvidia driver 的版本没有更新,一般情况下,重启机器就能够 阅读全文
posted @ 2019-03-22 19:37 张杨 阅读(2817) 评论(0) 推荐(0) 编辑
摘要: 一、基数排序 基数排序的思想比较好理解,即是从各位数开始比较起,一直比较到最高位位置,每次比较都是在前一次比较的基础上进行的。 代码如下: 二、二路归并排序 二路归并排序的思想是开始就将数列划分为两个部分,然后依次递归的对这两部分执行二分操作,直到所有的部分都只包含一个元素位置,此时,再分别对这些部 阅读全文
posted @ 2019-03-19 21:08 张杨 阅读(704) 评论(0) 推荐(0) 编辑
摘要: 1.首先介绍一下select和epoll的异同,如下(摘抄自https://www.cnblogs.com/Anker/p/3265058.html) select的几大缺点: (1)每次调用select,都需要把fd集合从用户态拷贝到内核态,这个开销在fd很多时会很大 (2)同时每次调用selec 阅读全文
posted @ 2019-03-18 15:41 张杨 阅读(859) 评论(0) 推荐(0) 编辑
摘要: 这个问题困扰了我好长时间,网上查了好长时间,这个问题的解决方法,就是将binultils升级到2.26。 造成这个问题的原因是gcc和binultils版本不匹配,gcc对应的版本较高,gcc编译后,ld(由binultils决定)进行链接,结果由于binultils版本较低, 无法识别。 解决方法 阅读全文
posted @ 2019-03-11 19:49 张杨 阅读(6247) 评论(0) 推荐(1) 编辑
摘要: 这篇文章已经无法考证是谁原创的了 首先注意usr 指 Unix System Resource,而不是User 然后通常: /usr/bin下面的都是系统预装的可执行程序,会随着系统升级而改变。 /usr/local/bin目录是给用户放置自己的可执行程序的地方,推荐放在这里,不会被系统升级而覆盖同 阅读全文
posted @ 2019-03-06 17:12 张杨 阅读(4855) 评论(0) 推荐(1) 编辑
摘要: 主要要实现如下几个功能:方块的移动控制、方块变形、判定方块是否接触边界和进行方块堆积、对方块进行消除。 1.方块的移动控制上下左右四个方向上-->变形,下-->加速下落,左-->向左移动,右-->向右移动注意在移动的时候,还要判定是否接触边界,特别是向下移动,除了需要确定是否接触底部边界外,还要注意 阅读全文
posted @ 2018-11-09 16:53 张杨 阅读(1093) 评论(0) 推荐(0) 编辑
摘要: 今天make一个程序的时候,发现程序里面使用到了C++17的标准,而我的gcc仍然是4.8,考虑到系统是ubuntu18.04的,所以感觉应该gcc的版本不会这么低。 cd到/usr/bin下,使用指令 它自带了4.8和7,6是我用apt-get install指令装上去的。 下面我们可以进行切换 阅读全文
posted @ 2018-10-25 10:28 张杨 阅读(4149) 评论(0) 推荐(0) 编辑
摘要: 我这里故意放了一个超过100M的文件 后续,git add ,git commit 然后,git push 此时会发现出现了错误。如果,我们再这里直接在文件系统中删除这个大的文件,然后再次提交,会发现这个问题并未得到解决。 原因在于我们并没有将上次的提交操作撤回。 输入git log,找到上次提交的 阅读全文
posted @ 2018-10-17 20:57 张杨 阅读(3626) 评论(1) 推荐(0) 编辑
摘要: 首先,是wine QQ的安转教程:Wine安装最新版QQ(8.9.2)的简单教程 - Powered by Discuz! 里面作者也提到了关于重启后出现个人文件夹被占用的情况。 如下: 我按照上面的设置后,发现还是会出现这个问题,后来,我觉得应该是QQ退出后,相应的进程并未被杀死造成的。 我使用了 阅读全文
posted @ 2018-10-17 15:52 张杨 阅读(1094) 评论(0) 推荐(0) 编辑
摘要: 最近开始使用Vs codel,真的方便,可以和git结合。下面总结一下如何调试程序, 我写了一个实例程序(不重要) 这个时候,我们按F5,发现不能运行,它提示需要一个Launch.json文件,OK,这是一个启动文件,我们来配置它。 注意,这里需要修改的部分主要是program那一行,仅需修改为自己 阅读全文
posted @ 2018-10-07 15:45 张杨 阅读(6125) 评论(1) 推荐(0) 编辑
摘要: 转载:http://blog.csdn.net/lemoncyb/article/details/16841317 fseek() 函数讲解: 函数定义: int fseek(FILE *stream, long offset, int fromwhere); int fseeko(FILE *st 阅读全文
posted @ 2018-09-19 15:47 张杨 阅读(3067) 评论(0) 推荐(0) 编辑
摘要: 1.下载搜狗输入法的安装包 下载地址为:http://pinyin.sogou.com/linux/ ,如下图,要选择与自己系统位数一致的安装包,我的系统是64位,所以我下载64位的安装包 2.按键Ctr+Alt+T打开终端,输入以下命令切换到下载文件夹: [html] view plain cop 阅读全文
posted @ 2018-09-07 12:41 张杨 阅读(2392) 评论(0) 推荐(0) 编辑
摘要: 1.简单的安装方法 安装JDK的最简单方法应该就是使用apt-get来安装了,但是源一般是OpenJDK,如果需要安装Oracle的JDK这种方法就不合适了,直接跳过看下面的章节。 1.使用ctrl+alt+t打开终端,你可以添加一个含有OpenJDK源的仓库,一般是不需要,因为一般都有。 备份原始 阅读全文
posted @ 2018-09-07 12:39 张杨 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 原创作者:http://www.cnblogs.com/jerome-rong/archive/2013/02/19/2916608.html Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available 阅读全文
posted @ 2018-09-07 12:38 张杨 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 虽然不怎么用Ubuntu来看文档,但是偶尔还是需要看一下的。而Ubuntu自带的打开PDF的软件真的看着很难受,装一个跨平台的福昕好了。 首先,下载。可以官网下载:福昕官网 不过晚上不知道网络抽风还是什么问题,下载贼慢。选择了参考博客里提供的wget命令下载。 然后解压缩: 然后修改权限,并运行: 阅读全文
posted @ 2018-09-07 12:36 张杨 阅读(1011) 评论(0) 推荐(0) 编辑
摘要: 要求:原操作系统代码里只是支持了日语显示,需要做的是实现对这个系统的汉字全角支持。 hzk16的介绍以及简单的使用方法 HZK16字库是符合GB2312标准的16×16点阵字库,HZK16的GB2312-80支持的汉字有6763个,符号682个。其中一级汉字有3755个,按声序排列,二级汉字有300 阅读全文
posted @ 2018-08-05 17:00 张杨 阅读(1506) 评论(0) 推荐(0) 编辑
摘要: 操作系统常用调度算法 在操作系统中存在多种调度算法,其中有的调度算法适用于作业调度,有的调度算法适用于进程调度,有的调度算法两者都适用。下面介绍几种常用的调度算法。 先来先服务(FCFS)调度算法 FCFS调度算法是一种最简单的调度算法,该调度算法既可以用于作业调度也可以用于进程调度。在作业调度中, 阅读全文
posted @ 2018-07-20 09:48 张杨 阅读(742) 评论(0) 推荐(0) 编辑
摘要: 之前使用的是递归的方法来解决的问题,后来有点想用bfs(宽度优先搜索来尝试一下的想法,在网上看到有人使用了dfs(深度优先搜索)更加坚定了自己的这种想法。 这个方法首先是以顶点的四组开始,加入那些没有放置卡片的位置,同时使用另外一个数组来标记距离,就这样一直拓展下去,如果碰到了目标位置,那么我们就对 阅读全文
posted @ 2018-06-14 11:45 张杨 阅读(482) 评论(0) 推荐(0) 编辑
摘要: 这题可以使用递归来进行求解,让点分别向4个方向进行探索,直到遇到目标点,或者最后执行失败。如果找到了目标顶点,就对totalStep进行对比赋值。但step已经比目前的totalStep大时,应忽略这种情况,因为这样下去是没有意义的。 题目如下: 2802:小游戏 2802:小游戏 查看 提交 统计 阅读全文
posted @ 2018-06-13 15:51 张杨 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 这种写法的bfs和前面的最大区别在于它对队列的处理,之前的简单bfs是每次从队列中取出当前的访问节点后,之后就将它的邻接节点加入到队列中,这样明显不利于并行化, 为此,这里使用了两个队列,第一个队列上当前同一层的节点,第二个队列用来存储当前层节点的所有邻接节点,等到当前层的节点全部访问完毕后,再将第 阅读全文
posted @ 2018-05-09 21:51 张杨 阅读(1370) 评论(1) 推荐(0) 编辑
摘要: usr/bin/ld: cannot find -lxxx问题总结 linux下编译应用程序常常会出现如下错误: /usr/bin/ld: cannot find -lxxx 意思是编译过程找不到对应库文件。其中,-lxxx表示链接库文件 libxxx.so。 注:有时候,由于库文件是编译过程临时生 阅读全文
posted @ 2018-05-09 16:30 张杨 阅读(627) 评论(0) 推荐(0) 编辑