操作系统
文章平均质量分 55
macans
止步就是退步
展开
-
Peterson算法-软件实现进程(线程互斥)
boolean flag[2]; int turn=0; flag[0]=false; flag[1]=false; void P0 () //进程P0 { while (TURE){ Flag[0]=TURE; turn=1; While原创 2017-04-28 09:07:38 · 1803 阅读 · 0 评论 -
C++内存地址分配和内存区划分简介
C++内存地址分配简介1 内存地址是从高地址到低地址进行分配的:int i=1; int j=1; cout/*输出:0012FF60(高地址处) 0012FF54(低地址处)*/1231232 函数参数列表的存放方式是,先对最右边的形参分配地址,后对最左边的形参分配地址。 3 Little-endian模式的CPU对操作数的存放方式是从低字节到高字节的 0x1转载 2017-07-18 09:12:35 · 1359 阅读 · 0 评论 -
linux内核 RCU数据同步机制详解
简介 RCU(Read-Copy Update)是数据同步的一种方式,在当前的Linux内核中发挥着重要的作用。RCU主要针对的数据对象是链表,目的是提高遍历读取数据的效率,为了达到目的使用RCU机制读取数据的时候不对链表进行耗时的加锁操作。这样在同一时间可以有多个线程同时读取该链表,并且允许一个线程对链表进行修改(修改的时候,需要加锁)。RCU适用于需要频繁的读取数据,而相转载 2017-05-04 11:47:12 · 693 阅读 · 0 评论 -
存储管理
存储管理方案:分区管理、页式管理、段式管转载 2017-04-19 15:07:42 · 403 阅读 · 0 评论 -
sync同步命令
在Linux系统中,为了加快数据的读取速度,默认情况下已经加载到内存的数据不会被写回硬盘,而是先暂存在内存中,这样的话如果一个数据被你重复改写,可以直接从内存中取来,速度上一定提升很多。但是万一系统因某些情况造成不正常关机,由于数据尚未写回硬盘,所以就会造成数据的更新不正常。 这是就需要sync命令来进行数据的写入操作。这个命令最好在系统关机或重启之前多执行几次(虽然目前的shutdown/r原创 2016-11-28 08:53:12 · 1103 阅读 · 0 评论 -
Linux tcpdump命令详解
Linux tcpdump命令详解简介用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。转载 2016-10-06 14:40:30 · 608 阅读 · 0 评论 -
修改Ubuntu默认运行级别,启动字符界面
Ubuntu的默认开机的runlevel是2,可以用runlevel来查看当前的默认运行级别。debian系(ubuntu是基于debian)的Linux一直是用runlevel 2来默认启动,并且runlevel定义也与redhat有区别。debian的runlevel级别定义如下:0 – Halt,关机模式1 – Single,单用户模式2 - Full multi-user转载 2016-11-05 17:13:34 · 501 阅读 · 0 评论 -
Unix家族谱
首先说明本帖是转的,旨在让大家了解科技界的一些故事,每一种科技的进步都伴随开发者们不懈的努力!就是想让大家明白一个道理不管unix、linux、ios还是android都是开发者辛勤汗水的积累。大家可以看附件里面的UNIX家族谱,若你没有惊叹唏嘘的,回来菊花随你捅!Unix是目前还在存活的操作系统的元老了,走过了40年的历程。由它引发的思想变革,对当今计算机文化造成的深远影响。这是一段所有转载 2016-04-08 12:58:54 · 1047 阅读 · 0 评论 -
Linux内存管理
本文以32位机器为准,串讲一些内存管理的知识点。 1. 虚拟地址、物理地址、逻辑地址、线性地址 虚拟地址又叫线性地址。linux没有采用分段机制,所以逻辑地址和虚拟地址(线性地址)(在用户态,内核态逻辑地址专指下文说的线性偏移前的地址)是一个概念。物理地址自不必提。内核的虚拟地址和物理地址,大部分只差一个线性偏移量。用户空间的虚拟地址和物理地址则采用了多级页表进行映射,但仍转载 2017-07-26 11:01:54 · 747 阅读 · 0 评论