OS
暂代
须知少日拿云志,曾许人间第一流。
展开
-
Source Insight 4.0首次安装提示unable to open or create...解决方案
当初买电脑的时候too young, too naive. 注册了一个中文的windows用户名,后面踩的坑我真是。。。这又是一个哲学问题。。。好了,正式开始:出现这个问题,是因为Sourch Insight软件的初始配置路径包含中文字符,出现了编码不一致的问题,所以无法正常打开软件。解决方案如下:打开注册表编辑器windows + r 打开运行窗口输入:regedit, en...原创 2018-10-01 15:18:10 · 13588 阅读 · 12 评论 -
事件复用技术比较:Epoll & Kqueue
什么是事件复用技术假设你有一个简单的web服务器,并且那里已经打开了两个socket连接。当服务器从两个连接那里都收到Http请求的时候,它应该返回一个Http响应给客户端。但是你没法知道那个客户端先发送的消息和什么时候发送的。BSD套接字接口的阻塞行为意味着,如果你在一个连接上调用recv()函数,你就没办法去响应另外一个连接上的请求。这时你就需要I/O复用技术。 I/O复用技术的一个直接方式...转载 2018-09-29 17:56:39 · 3580 阅读 · 0 评论 -
测试机器可用栈大小
测试64位机器的可用栈空间大小测试代码:#include <stdio.h>int i = 1;void func(){ char arr[1024]; //1k printf("%d ", i); i++; func();}void main(){ func();}Linux(CentOS 7.4)结果显示为:7GWindows 10结果显...原创 2019-04-02 19:12:11 · 389 阅读 · 0 评论 -
线程相关笔记
注意:本篇文章不是系统的线程知识讲解,更多的是一些实用的线程常识和个人的笔记总结。如果读者想要获取更系统的OS线程知识讲解,那么本篇文章并不能很好的对你带来帮助,请移步至更详细系统的OS线程相关教程。一、简介线程,有时又被称为轻量级进程,是程序执行流的最小单元。一个标准的线程由线程ID、当前指令指针(PC)、寄存器集合和堆栈组成。通常意义上,一个进程由一个到多个线程组成,各个线程之间共享...原创 2019-07-09 12:41:12 · 188 阅读 · 0 评论 -
两个线程打印不同类型的字母
一、题目描述:两个线程分别打印26个英文字母的元音字母和辅音字母,分别按照字母序输出。二、解题思路:(1) 如果要求输出一行感觉看代码都可以看明白了…(2)如果要求输出两行由于线程之间共享全局变量,所以可以将26个字母保存到一个全局数组中,并且保存当前访问到数组元素的下标。然后再创建两个数组分别保存元音字母和辅音字母,不同的线程添加不同类型的字母到对应的字母表中,最后遍历打印元音字母表...原创 2019-06-28 23:59:48 · 345 阅读 · 0 评论 -
cache-主存机制和虚存-主存机制的异同分析
一、相同点1.1 出发点相同二者都是为了提高存储系统的性能价格比而构造的分层存储体系,都力图使存储系统的性能接近高速存储器,而价格和容量接近低速存储器。1.2 原理相同都利用了CSAPP著名的局部性原理,把最近常用的信息块从相对慢速的大容量存储器调入相对高速而小容量的存储器。二、不同点2.1 侧重点不同cache的出现主要是为了解决主存与CPU的速度差异问题;虚存的出现主要是为了...原创 2019-07-13 23:30:05 · 1817 阅读 · 0 评论 -
进程五态模型简明理解
进程的基本状态是:运行态,就绪态,阻塞态。如果把创建和结束加上,就可以组成五态模型。一、五种状态转换图状态图说明:就绪状态 -> 运行状态:根据系统的调度算法,处于就绪状态的进程获取到处理机资源(分派的时间片)运行状态 -> 就绪状态:处于运行状态的进程用完了系统分配给它的执行时间片,需要让出处理机在可剥夺的OS中,当有更高优先级的进程就绪,调度算法会让更...原创 2019-07-06 00:37:33 · 7202 阅读 · 0 评论 -
记一次对“缓冲区溢出漏洞”的攻击实验
记录一次对“缓冲区溢出漏洞”进行攻击的实验。通过这个实验,可以加深对函数调用底层原理(栈帧结构)以及缓冲区溢出危害的理解。进行这个实验之前,读者最好先了解一下函数的栈帧结构以及X86-64汇编语言基本语法。原创 2019-08-24 16:07:47 · 903 阅读 · 0 评论