自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爱吃_宫爆鸡丁

勤学如春起之苗,不见其增,日有所长

  • 博客(32)
  • 资源 (1)
  • 收藏
  • 关注

转载 innodb中外键的简单讲解

此博文内容通俗易懂,还结合了实例,适合我这样的小白阅读(汗!)参考链接:https://blog.csdn.net/weixin_42102152/article/details/801435191.新建一个数据库。mysql>create database school;2.新建一个班级表 班级名称(name),mysql>create table sc_cl...

2018-08-31 11:14:49 2834 1

转载 find命令详解

find是个使用频率比较高的命令。常常用它在系统特定目录下,查找具有某种特征的文件。 find命令的格式:find [-path……] -options [-print -exec -ok] path:要查找的目录路径。       ~ 表示$HOME目录       . 表示当前目录       / 表示根目录 print:表示将结果输出到标准输出。 exec:对匹配的文件执行该参...

2018-08-30 22:36:39 382

原创 volatile限定符——C++讲解

1、使用volatile的背景直接处理硬件的程序常常包含这样的数据元素,它们的值由程序直接控制之外的过程控制。举例如下 :i、程序可能包含一个由系统时钟定时更新的变量。当对象的值可能在程序的控制或检测之外被心迹时,应该将该对象声明为volatile。告诉编译器不应对这样的变量进行优化。ii、变量读取volatile int i = 10;int k = i;这段代码如果没有加上...

2018-08-30 16:13:16 461

原创 内存管理

OS系统的基本知识,隔久又见忘了,写下博文温故而知新!由于本章节内存管理中主要讲述连续分配方式、基本分页分配方式和基本分段分配方式。所以一些细枝末节的东西能减即简。围绕主题,突出重点。1、存储管理必须能够实现内存分配、地址变换、存储保护、存储共享、存储扩充等功能;2、连续分配方式包含四大部分:  A、单一连续分配(针对单道程序系统,内存只需要划分为系统区和用户区)  B、固定分...

2018-08-30 11:55:11 296

转载 DOS攻击之详解--转载

直接考参博文:https://www.cnblogs.com/davidwang456/p/3590846.html源地址没有找到,间接引用地址:http://wushank.blog.51cto.com/3489095/1156004DoS到底是什么?接触PC机较早的同志会直接想到微软磁盘操作系统的DOS--DiskOperationSystem?不,此DoS非彼DOS也,DoS即Den...

2018-08-28 17:40:59 3722

原创 剑指offer——树中两个节点的最低公共祖先(68题)

求树中两个节点的最低公共祖先,此题可由多道题构成。变型一:如果该树是二叉查找树,求树中A、B两个节点的最低公共祖先,方法如下:1、如果遍历结点C的值比A、B结点的值都大,那么最低公共祖先在C的左子树上,于是到C的左子树上重复1、2、32、如果遍历结点C的值比A、B结点的值都小,那么最低公共祖先在C的左子树上,于是到C的右子树上重复1、2、33、否则遍历结点C即是结点A、B的最低公共祖...

2018-08-27 17:31:44 268

转载 浅析Linux中的零拷贝技术

零拷贝技术是尽可能减少内核态与用户态消息传递的次数,从而提高linux的I/O访问速度。下文主要介绍了使用mmap(共享内存的思想)、使用sendfile、使用splice,前者在IPC中即主要介绍的共享内存思想(参考UNPv2第三部分),后两者不太熟悉。 本文探讨Linux中主要的几种零拷贝技术以及零拷贝技术适用的场景。为了迅速建立起零拷贝的概念,我们拿一个常用的场景进行引入:引...

2018-08-27 15:31:27 194

原创 仅使用互斥锁实现读写锁

清楚认识到读写锁分为共享锁(读锁)和独占锁(写锁),可能通过设置标志位记录读锁调用的次数结合互斥锁实现共享锁。但需要注意的是,以下的实现在多个写锁被阻塞时非常消耗计算机资源。因为线程阻塞在写锁中而没有被投入睡眠,导致轮询策略。避免轮询可通过互斥锁+条件变量实现读写锁,具体实现见上一篇博文。以下是代码实现:#include<pthread.h>pthread_mutex_t...

2018-08-27 09:46:46 2920 2

转载 Linux 下的dd命令使用详解

对dd命令讲解很详细,各取所需。参考博文:https://blog.csdn.net/noviblue/article/details/56012275(这也是转载而来的)一、dd命令的解释dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2参数注释:1. if=...

2018-08-26 11:08:24 247

转载 内核态(内核空间)和用户态(用户空间)的区别和联系

http://www.cnblogs.com/viviwind/archive/2012/09/22/2698450.htmlhttp://www.cjjjs.com/paper/czxt/625201519722538.aspx用户空间就是用户进程所在的内存区域,相对的,系统空间就是操作系统占据的内存区域。用户进程和系统进程的所有数据都在内存中。  是谁来划分内存空间的呢?在电脑开机之...

2018-08-26 01:11:37 579

转载 从B 树、B+ 树、B* 树谈到R 树

从B 树、B+ 树、B* 树谈到R 树 此博文直接参考链接:https://blog.csdn.net/v_july_v/article/details/6530142作者:July、weedge、Frankie。编程艺术室出品。说明:本文从B树开始谈起,然后论述B+树、B*树,最后谈到R 树。其中B树、B+树及B*树部分由weedge完成,R 树部分由Frankie完成,全文最终由J...

2018-08-25 22:42:10 340

原创 剑指offer——包含max函数的栈(30题)和队列(59题)

1、包含max函数的栈思想很简单,在申请一个数据栈的同时也申请一个辅助栈。辅助栈用来存放数据栈中最大值与新压入栈元素两者间的较大值,也就是说辅助栈的栈顶元素永远都是数据栈元素的最大值。实现代码如下:#include<iostream>#include<stack>#include<assert.h>using namespace std;...

2018-08-24 10:45:38 902

转载 面试中计算机网络高频问题汇总

1.     tcp和udp的区别【1】    tcp是面向连接的,udp是面向无连接的面向连接:就是tcp传输之前要先发送连接请求和应答包,确定双方能够正常传输后,才会进行数据传输无连接:udp在发送数据之前,并不考虑对方能否接受到,甚至目的地址可能是无效的【2】    tcp能保证可靠传输,udp不能保证可靠传输所谓可靠性就是指tcp能保证把数据一定能送到目的地址,为了实现...

2018-08-23 23:30:14 360

原创 使用互斥锁和条件变量实现读写锁

只使用互斥锁和条件变量实现读写锁,此读写锁的实现优先考虑等待着的写入者。1、pthread_rwlock_t数据类型给出一个pthread_rwlock.h头文件,其中pthread_rwlock_t数据结构由一个互斥锁、一个读条件变量、一个写条件变量、一个标志位及三个计数量(读条件变量等候计数器、写条件变量等候计数器、读写锁引用计数器)构成。/* include rwlockh *...

2018-08-23 20:58:18 738

原创 模版实参推断和引用

模版参数推断包含函数指针及引用等部分,此处只介绍有关引用的模版参数推断。考虑下面的例子:template<typename T> void f(T &p);其中函数参数p是一个模版类型参数T的引用,记住以下两点:i、编译器会应用正常的引用绑定规则;ii、const是底层的,不是顶层的。1、从左值引用函数参数推断类型当一个函数参数是模版类型参数的一个...

2018-08-21 12:33:30 257

原创 空间调制技术章节编写

说点废话从接到任务起(稀里糊涂的就被拉下水了),一直没有鼓起勇力编写这一章的内容。说实话,自己一直在拖延任务,总想这一章的编写能与学位论文相结合起来。于是向导师申请了延缓一个月的编写时间(当时瞬间就能感受到她的不愉快),也就是到9月底。自己估计了一下9月的时间,各种秋招笔试,面试(本人找工作的性质带有转行的味道,心累哈)。恐怕越是往后推迟,将越难完成任务。遂早些时段横下一心,预计花费10天的时...

2018-08-20 20:58:21 2954 11

转载 TCP流量控制

1.TCP的滑动窗口       为了提高信道的利用率TCP协议不使用停止等待协议,而是使用连续ARQ协议,意思就是可以连续发出若干个分组然后等待确认,而不是发送一个分组就停止并等待该分组的确认。       TCP的两端都有发送/接收缓存和发送/接收窗口。TCP的缓存是一个循环队列,其中发送窗口可以用3个指针表示。而发送窗口的大小受TCP数据报中窗口大小的影响,TCP数据报中的窗口大小是...

2018-08-20 20:21:39 177

转载 宏定义的使用,如#define后接#和##、宏展开等

之前相应了解#define和inline的区别,以及各自的优缺点(下篇文章再好好总结一下吧)。但被effective C++的作者的一句话,尽量少用宏(万恶之源)所惑,多少有些忽视了#define的特性。下面所转载的东西,第7条看的多少有些迷糊外,其他6点还总结的非常好。参考如下:众多C++书籍都忠告我们C语言宏是万恶之首,但事情总不如我们想象的那么坏,就如同goto一样。宏有一个很大的...

2018-08-16 18:18:35 1998

原创 非加权图的单源最短路径问题(解法:BFS)以及BFS、DFS的简单实现

1、非加权图的单源最短路径问题(解法:BFS)此问题可以利用Dijkstra算法求解时,只需要把所有边的权值看成1即可,但复杂度高。此处利用BFS加以求解。以下给定几个参数方便存储信息。非加权单源最短路径解法:BFS    start:    有向图中的计算的起始结点    dist:    存储结点到源结点的距离的数组,初始值为无穷大,虽然每条边权值都相等,但源结点到所求结点经过几条...

2018-08-14 11:15:43 1695

转载 加权图的单源最短路径问题——解法:DijKstra算法

问题都是老生常谈,不再介绍,此处给出算法思想(自己总结的,别人写好的)、以及代码实现。1、自己总结算法思想记新加入顶点的集合为S,余下顶点的集合为V-S.         i、取一个起始顶点,加入S中。         ii、从V-S集合中,寻找出最短路径距离信息的结点,加入S集合中。         iii、对新加入S中的顶点,更新新加入顶点到V-S中邻接顶点的路径距离信息,...

2018-08-13 20:55:45 621

转载 STL库查找算法——如上下界查找,最大最小值查找,统计次数,二分查找,子区间匹配查找,集合(集合内任意一个元素匹配)查找

STL中有很多算法,这些算法可以用到一个或多个STL容器(因为STL的一个设计思想是将算法和容器进行分离),也可以用到非容器序列比如数组中。众多算法中,查找算法是应用最为普遍的一类。以下算法参数均可以迭代器或指针。单个元素查找1、 find() 比较条件为元素是否相等的查找: 1 2 template <class InputIterato...

2018-08-12 10:43:17 904

原创 0-1背包、完全背包、多重背包问题求解

背包问题无外乎是利用动态规划的思想求解。而求解动态规划问题最主要是寻找到核心推导式(有些问题隐藏的非常深,一眼很难看出来)。这里不再介绍动态规划的思想,主要讲解背包问题,闲话少说,直接上题。1、0-1背包问题描述:有编号分别为a,b,c,d,e的五件物品,它们的重量weight分别是2,2,6,5,4,它们的价值value分别是6,3,5,4,6,每件物品数量只有一个,现在给你个承重为C=...

2018-08-10 21:05:44 628

原创 static关键字的作用说明

就目前,本人掌握的信息来看,static关键字的作用有俩,其一是在分离式编译环境下避免不同源文件中定义的全局变量使用相同的名字引发的命名冲突(有点绕脑),其二,有关类的静态成员定义说明。i、对第一点进行说明,static修饰符能够减少类命名冲突。如static int a; 注意此处把a看作是全局变量。(使用static修饰的局部变量不会随函数结束而释放地址空间!)通过static关健...

2018-08-09 16:10:54 456

原创 setjump和longjmp函数

1、setjmp和longjmp函数特点此两函数所处头文件<setjmp.h>,弥补了C语言有限的转移能力,其必须协同工作,工作特点如下:i、记录:setjmp(jmp_buf j)必须首先调用,表示“使用变量j记录现在的位置。函数返回零。”ii、转移:longjmp(jmp_buf j,int i)可以接着调用。表示“回到j所记录的位置,让它看上去像是原先的setjmp(...

2018-08-08 23:47:24 463

原创 UNP卷二 chapter3 System V IPC

1、System V IPCSystem V IPC包含消息队列、信号量和共享内存。其主要是利用key_t键创建相应的IPC。可利用ipcs或ipcrm命令对System V消息队列、信号量和共享内存进行查询或删除。下表是所有System V IPC函数:  消息队列 信号量 共享内存区 头文件 <sys/msg.h> <sys/se...

2018-08-08 16:13:18 255

原创 sed管道命令及数据处理工具awk命令

sed管道命令工具:分析standard input,对比数据、替换c、删除d、新增a、插入i、选择语法:sed [-nefri] [动作]-n:使用安静模式,在一般情况所有的 STDIN 都会输出到屏幕上,加入-n 后只打印被 sed 特殊处理的行-e:多重编辑,且命令顺序会影响结果-f:直接将sed的动作写在一个文件中,然后-f filename则可执行filename内的sed...

2018-08-07 17:31:16 3448

原创 正则表达式

正则表达式与结合grep、sed(对行处理)、awk(对行分段处理)命令进行搜索及查询使用。正则表达式字符的讲解:行首:^    行尾:$   于是空白行可用 ^$ 表示。.表示任意单个字符,*表示0至多个的前一个字符,于是.*可表示成任意零个或多个字符。[...]中括号内,不论几个字符,都只表示一个字符。RE字符 意义与范例 ^word grep -n '^w...

2018-08-07 17:28:53 145

转载 大数的加减乘除及其求模运算

此处大数问题针对的操作数是非负整数,如果需要包含负整数范围内的运算,需改动代码(此部分后续再添加吧)。现在主要是针对笔试中出现的大数运算的求解问题。另外说明,i、以下函数可以放在一个类内里面,只提供接口,在别处定义,实现接口与实现分离。ii、乘法函数需要加法函数,除法函数需要加法、减法和乘法函数。iii、求模函数与除法函数只是返回值不一样,除法函数只是返回商的整数部分。#in...

2018-08-07 17:00:51 470 1

原创 UNP卷二 chapter2 Posix IPC

刚开始翻开UNPv2时,看此章节,有点不知所云。内容看似简单,但却是后续多个章节的总领的简单介绍。当学完后续章节再回过头来看看,其实是非常有用的。可以起到一个快速复习的效果。所以一直都没及时打笔记直至将书本知识都过了一遍。现在再看看,知识点都非常亲切,尤其是创建或打开一个IPC对象的逻辑图,真心佩服作者只用一幅图便可以高度概括相应一个模块知识的能力。接下来好好回顾一下,enjoying!1、P...

2018-08-05 17:37:07 245

原创 UNP卷二 chapter14 System V共享内存区

1、System V共享内存区System V共享内存区的学习类比Posix共享内存区,与调用shm_open后,再调用mmap相类似的是,System V先调用shmget,再调用shmat。对每个共享内存区,内核维护如下的信息的结构,且定义在<bits/shm.h>头文件中。struct shmid_ds { struct ipc_perm shm_perm;/*...

2018-08-03 17:26:31 252

原创 UNP卷二 chapter13 Posix共享内存区

1、Posix共享内存区第十二章,在父子进程间使用内存映射文件提供共享内存。其实共享内存还可应用在无亲缘关系进程间。以下有两种无亲缘关系进程间共享内存的方法。i、内存映射文件:由open函数打开,由mmap函数把得到的描述符映射到当前进程地址空间中的一个文件。ii、共享内存区对象:由shm_open打开一个Posix.1IPC名字(也许中在文件系统中的一个路径名,貌似行不通),所返回的...

2018-08-03 17:25:33 194

原创 UNP卷二 chapter12 共享内存区介绍

1、共享内存区是可用IPC形式中最快的一旦某个某个内存区映射到相应进程的地直空间,则这些进程间数据的传递就不再涉及内核(即进程不再通过执行任何进入内核的系统调用来彼此传递数据)。但是往该共享内存区存放信息或从中取走信息的进程间通常需要某种形式的同步(如,互斥锁、条件变量、读写锁、记录锁、信号量)。以下通过管道、FIFO或消息队列的IPC通道方式进行消息传递,产生的文件复制情况:上图...

2018-08-01 22:34:14 252

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除