自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

danneel_zhu

stay hungry, stay foolish...

  • 博客(43)
  • 收藏
  • 关注

原创 计算机网络 -- TCP/UDP详解(传输层)

零散的知识点:网络层为主机之间提供逻辑通信,运输层为应用进程之间提供端到端的逻辑通信。 运输层向高层屏蔽了下层网络的核心细节,使得应用进程看起来好像是两个运输实体之间有一条端到端的逻辑通信道路。当使用tcp协议的时候,逻辑通路就像一条全双工的可靠信道,而采用无连接的udp的时候就像一条不可靠的信道。运输层主要采用两种的通信方式,一种是提供可靠传输的tcp协议,一种是提供不可靠传输的udp协议。软件

2017-05-06 21:31:24 946

原创 计算机网络 -- 网络层

虚电路数据报多播ipIGMPICMPRIPEGPIGPOSPFARPRARP

2017-05-03 17:32:10 3738 4

转载 虚拟继承

虚拟继承虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。 如:类D继承自类B1、B2,而类B1、B2都继承自类A,因此在类D中两次出现类A中的变量和函数。 virtual直接继承 多继承

2017-05-02 13:57:27 662

原创 static的常见用法

Static作用:1、 修饰函数:限制作用域,限定只有源文件有效(makefile多个文件的程序出现命名重复的问题,属于一种封装)2、 修饰全局变量,限定在源文件中可以使用,避免命名重复。3、 修饰局部变量:使得局部变量存储在静态存储区,直到程序结束,该声明的变量只初始化一次,作用域没有改变,但是生命周期延长了。4、 修饰类成员变量:该变量或着成员函数属于该类的所有对象所共有

2017-05-02 13:37:36 514

原创 const的常见用法

Const的常见用法:1、 修饰变量:表示该变量是一个常量,不可以进行改变2、修饰指针:这时要考虑和const的位置,在前表示这是一个指针常量,指针指向的对象不可变;*在后,表示这是一个常量指针,不可以通过解引用的方式修改对象的值3、 修饰函数参数(只有在指针和引用的时候)表示在函数中不改变实参4、 修饰函数返回值(只有在指针一般情况)指针常量常量指针指向常量的指针常量

2017-05-02 13:34:03 510

原创 计算机网络 -- 数据链路层

数据链路层的功能:(1) 链路管理:链路的简历、维持和释放 (2) 帧定界 (3) 流量控制 (4) 差错控制 (5) 将数据和控制信息区分开来 (6) 透明传输 (7) 寻址:每一帧都能找到目的站数据链路层的通信信道:点对点信道:一对一进行通信广播通信:一对多的通信方式重要的三个概念:物理链路:两个结点的一段物理线路,中间没有任何的交换结点。链路是 一条路径的组成部分。逻辑链

2017-05-02 12:11:35 3048 1

原创 计算机网络 -- 物理层

计算机网络性能指标:速率:传送数据的速率。数据率或比特率带宽:信号具有的频带宽度或者是单位时间内点到点所能通过的“最高数据率”(简单理解为速率)。吞吐量:单位时间内通过某个网络的数据量。时延: 发送时延:从第一个比特到最后一个比特发送完毕所需要的时间,也叫传输时延。 发送时延 = 数据帧长度/发送速率 传播时延:电磁波在信道传输的时间。 传输时延 = 信道长度/电磁波传输速率

2017-05-02 00:33:36 4959 9

原创 虚析构函数

多态:字面意思:多种形态,在编程中指的是同样的消息(成员函数等)被不同的对象接受时导致的完全不相同的行为的一种现象。联编:确定程序中操作与执行该操作的代码段之间的映射关系。(简单来说就是你妈说你可以吃糖,联翩就是绑定你吃的是哪种糖,硬糖还是软糖)多态的分类:编译时多态:通过静态联编,也叫早期绑定,在编译阶段进行。现象:函数重载和操作符重载,隐藏等。运行时多态:通过动态联编,也叫晚期绑定,在运行时确定

2017-05-01 14:41:21 476

原创 redis -- 过期 淘汰 事务原子机制

redis的过期机制:1、创建一个key value的时候同时指定存活时间:set key value EX 60 #键值对存活60秒 set key value PX 60 #键值对存活60毫秒2、为已经存在的key设置过期时间:expire key 60 #key60秒之后失效,在2.6版本之后使用pexpire可以查看毫秒数3、查看一个key的有效期:ttl key #在2.6版本以上可以使

2017-04-29 18:59:48 1294

转载 在mac中安装docker

转自:http://eric-gao.iteye.com/blog/2315094本文使用的环境是Mac OS 10.11.5、Docker 1.12.0。一、安装Docker for Mac前需要知道的事情 二、官方下载Docker for Mac下载地址:https://docs.docker.com/docker-for-mac/三、安装Docker for Mac

2017-04-29 11:35:27 4035

原创 redis -- 配置文件部分信息

redis配置文件详解:redis的配置文件在redis目录下与src目录同级的redis.conf文件。其他配置文件:服务监听:运行方式:日志配置:数据库配置:快照持久化时间配置:文件持久化配置:登陆密码:对于客户端的设置:主从服务配置:内存设置: 虚拟内存的设置:在上面的内存设置中也有提到虚拟内存,我使用的版本是3.2.8,在我的版本里面没有相关的vm的设置。在开源社区中有朋友说2.6就取消了

2017-04-29 11:33:56 594

原创 重载函数

函数重载:允许多个函数共享一个函数名,每个参数列表唯一(函数签名唯一)(参数列表个数不一样, 或则参数类型不同)。重载条件:函数的返回类型不足以区分两个函数。(在调用的时候一般不指定返回的类型,而且有很大一部分的返回都会进行隐式或则是显示类型转换)函数的缺省实参不足以区分两个函数。使用typedef类型别名的不足以区分两个函数(没有产生新的类型)参数修饰符(const volatitle)不

2017-04-18 18:32:01 678

原创 迭代器和指针、指针和引用

迭代器和指针的区别:相同的点:都可以进行整数操作进行加减运算,实现当前位置的移动;支持同类型的进行减法操作,得到两个指针之间的距离。不同点:迭代器:1、 迭代器不是指针是类模版,表现像指针。它模拟了一些指针的功能, 通过重载指针的一些操作符。本质是封装了原生指针,相当于指针的一种升级。 2、 迭代器返回的是对象的引用而不是对象的值。指针:1、 指针有迭代器不能完成的功能, 比如指向函数。迭代

2017-04-17 21:14:50 3211

原创 迭代器的分类

不同的迭代器适用于不同的容器在c++中有两种不同的迭代器分法:按操作分五类:输入迭代器:(相当于读取)取出其指向的值,访问下一个元素,判断是否到达下一个元素,可以复制:*p(读取), ++p, p++; p != q, p == q输出迭代器:(相当于输出),*p(可以修改)*p, p++, ++p, p != q, p == q向前迭代器:输入迭代器和输出迭代器的结合, *p既可以读取元素, 也可

2017-04-17 21:12:07 914

原创 c++内存模型

c++的内存模型分为五个区:堆heap:由new分配的内存空间, 由程序员进行操作, 当不需要的时候调用delete,如果程序员没有将其进行释放, 当程序结束的时候,操作系统会进行回收。操作不当引发的问题: 内存溢出:申请的大小没能装下应该存储的文件的内容。 内存泄漏:程序员申请的内存空间没有及时的进行释放, 导致内存一直被占用内存泄露的类型: 1. 常发性内存泄露:发生内存泄漏的代码会被多

2017-04-16 21:51:00 578

转载 linux常用命令简单整合

linux目录结构:系统信息arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验内存使用 cat /proc/swaps 显示哪些swap被使用

2017-04-16 15:30:49 806

转载 三剑客 -- sed,awk和grep

edgrepsedawk

2017-04-16 14:30:35 1245

转载 redis -- 基本数据类型对象

redis:remote dictionary server字面意思:远程“字典“服务器(哈哈哈哈)由Salvatore Sanfilippo写的key-value存储系统,属于nosql的一种,Redis是一个开源的使用ANSI c语言编写,遵守BSD协议,支持网络, 基于内存但是可以实现持久的一款数据库。redis相对于数据库家族的优势:redis有着更为复杂的数据类型,支持set、list、

2017-04-10 19:56:27 523

原创 文件描述符和dup dup2 fcntl

一张表图:这张图描述的是进程级别的文件描述符和系统级别的打开文件表和系统级别的文件系统索引结点的连系关系。由图可以知道:每个进程维护的文件描述符表文件描述符从零开始, 进程间的文件描述符编号会重复;打开文件表中的打开文件句柄可以对应同一个进程的多个文件描述符(dup dup2 fcntl效果),或者是不同进程间的多个文件描述符(例如父子进程的继承关系);不同的打开文件表的打开文件句柄可能对应着

2017-04-10 01:27:56 1094

原创 Apache服务的基本配置

apache服务环境的搭建Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个Web服务器是Apache Nginx Microsoft的Internet信息服务器(Internet Information Services,IIS)。1.安装apache软件包:

2016-10-07 00:14:15 912 1

原创 FTP文件服务器

关于FTP服务FTP(file transfer protocol)文件传输协议,工作在TCP/IP模型的应用层,在客户端与服务器之间进行数据的传输。两种工作方式:主动模式(PORT模式):客户端打开一个随机的端口x(端口号大于1024,小于65535),连接至服务器的21号命令端口。源端口为客户端随机端口x,远程端口为服务器端口21。客户端开始监听端口(x+1),同时通过服务器的21号命令端口

2016-10-05 16:28:32 684

原创 文件共享服务nfs-samba

NFS(Network FileSystem)由Sun开发的通过网络跨平台分享文件的系统(网络文件系统)。安装服务:yum install nfs-utils portmap -y 安装完成可以设置启动或者开机启动添加服务内容:vim /etc/exports ##正在这个文件里面添加共享规则例如:/share *(rw,no_root

2016-10-05 16:04:04 450

原创 磁盘阵列

磁盘阵列磁盘阵列(RedundantArrays of Inexpensive Disks) RAID 直译是容错廉价磁盘阵列(独立硬盘冗余阵列)。功能:增强数据集成度,增强容错功能,增加处理量或容量。磁盘阵列的分类:硬件磁盘阵列(Hardware RAID):通过磁盘阵列卡完成RAID的任务。软件磁盘阵列(software RAID):通过软件来实现磁盘阵列的功能,以分区

2016-10-05 16:02:10 871

转载 封锁机制

** 转自: http://blog.csdn.net/xijiaoda_liuhao/article/details/8444443**

2016-09-20 08:41:09 467

原创 DNS 服务器

相关知识域名解析:将主机名自动转换为ip地址。1./etc/hosts (早期单一文件式处理)利用/etc/hosts文件将主机名与ip一一对应,来达到根据主机名获取ip的功能。 缺点:容量小,同步性差,信息要求高(需要同时知道主机名和ip)。2.bind (阶层式管理系统)BIND(berkeley internet name domain)伯克利大学开发,目前世界上使用最广泛的域名系统(DNS

2016-09-02 21:22:36 1265

原创 Mariadb 数据库

Mariadb 数据库Mariadb 成立于2009年。出自 MySQL之父Michael “Monty” Widenius之手。甲骨文公司收购mysql后为了规避mysql闭源的风险,而产生的衍生版。在扩展功能、存储引擎以及一些新的功能改进方面都强过MySQL。与mysql几乎完全兼容。Mariadb的使用安装相关软件:yum install mariadb mariadb-server -y关

2016-09-02 14:45:55 1117

原创 脚本

脚本使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。 创建新shell脚本开头 创建包含bash命令的文本文件。文件的第一行应为: #!/bin/bash权限 文件书写完成后,使文件可执行赋予可执行的权限 chmod +x 直接指定交互执行方式 sh/bash路径自动检测 将文件放置在用户的$PATH的目录中 ~/bin ##用于用

2016-09-01 02:49:09 774 2

原创 简单文本处理小工具

简单文本处理小工具=======制作补丁文件以及补全diffdiff file1 file2 ##查看文件1和文件2的不同diff -u file1 file2 > file.path ##导向生成补丁文件diff -b :忽略一行当中仅有多个空白的区别 -B:忽略空白行的区别 -i: 忽略大小写的不同 -c:显示上上下文周围的行 -

2016-09-01 01:44:54 880

原创 简单磁盘分区与交换空间的使用

简单磁盘分区与交换空间的使用磁盘分区创建删除交换空间的两种创建方式以及删除

2016-08-10 22:42:04 2939

原创 日志服务与日志分析工具

系统日志生成服务功能:日志服务是根据日志配置文件进行提供相应的功能服务,对于各种服务的信息等级的设定将不同服务的不懂等级信息记录在不同的文件里面。日志管理服务分类:1.rsyslogd 普通日志管理服务采集各种服务产生的信息根据日志服务配置文件内容将信息进行分类保存。2.klogd 内核信息日志文件服务专门记录内核信息3.logrotate 日志文件轮替服务解决日志文件内容过多消耗内存的日志文件替

2016-08-08 00:28:53 18400 1

原创 linux下文件打包与远程共享

tar zip bzip gzip zx scp rysnc

2016-08-07 23:54:18 2028 2

原创 记两种计划任务

单次计划任务:两种计划任务的设定,当有返回内容的时候会通过mail方式查看特点:单次指定时间的一次延时执行,交互式设定计划任务在一个指定的时间里面只能执行一个指定的任务,并且只执行一次,重要的事情再说一遍,只执行一次,且需要开启atd进程。关于atd服务进程:当需要一次性计划任务的时候我们需要有相关的服务开启。在我们进行使用at一次性任务服务的时候我们来看一下

2016-08-04 21:53:16 1659

原创 rpm yum 软件安装

rpm yum 源码安装 RPM(red hat package manager):是red hat 贡献的一款底层软件管理工具。rpm可以对已经进行编译打包成rpm包的软件包进行简单的安装 删除,但是它对有依赖关系的软件不是一个很好的选择,它不会自动机智地在安装过程中解决安装过程中存在的依赖关系安装包。需要我们手动解决。rpm安装优点:事先进行编译打包,传输安转很方便。rpm安装缺点:对安装环境

2016-08-02 23:43:20 481

原创 配置本地和共享yum源,定制属于自己的yum仓库

配置本地和共享yum源,定制属于自己的yum仓库

2016-08-02 22:13:03 30013 2

转载 Linux启动管理器

转自:http://blog.csdn.net/trendgrucee/article/details/8298708一、hd0表示什么答:一块硬盘最多只能有四个主分区。其中一个可以为扩展分区(主分区的特殊形式),扩展分区中可以有60个逻辑分区。linux表示分区,与顺序和类型有关。/dev/sda1为第一主分区/dev/sda2为第二主分区/dev

2015-08-14 11:10:24 566

原创 互斥锁和条件变量

互斥锁和条件变量产生背景:线程的最大特点是资源共享,在多线程的编程里面,多个线程对于临界变量的修改,就出现了同步问题;互斥锁和条件变量是解决这个问题的常用办法。互斥锁:通过锁机制来实现线程间数据的同步,在同一时刻通常只允许一个关键部分的代码。使用例子:pthread_mutex_lock (&mutex); //加锁printf(" a = %d\n", a);a++;pthread_mut

2015-08-09 23:58:04 1182

原创 数据结构-图的概述

数据结构-图的概述一、基本定义1、图:由点集和弧集(或者为边集)组成的 数据结构。(弧集或边集可为空)注:弧是有方向的,边可以看成双向的弧。2、有向图:由点集和弧集的数据结构为有向图。3、无向图:由点集和边集的数据结构为无向图,无向图的临接矩阵为对称矩阵。快速区分图是否有向:1、有向图点的序偶<>表示,无向图的用()表示。2、无向图边的数目不会大于(点 -1),而有

2015-08-09 13:11:08 1445

原创 linux进程一章知识总结

linux进程总结指令:基础的计算机动作 程序:机器代码指令和数据的集合 进程:一个程序的具体实现,进程是运行中的程序先来复习进程的查看:1、ps: 参数选项: -e:显示所有的进程 -f:全格式显示 -h:不显示标题 -l:长格式输出 -a:显示终端所有进程 -r:只显示运行的进程 2、who:3、w:比who好

2015-08-01 21:47:22 766 2

原创 二叉树思想小结

二叉树思想小结1、二叉树:每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。 2、平衡二叉树,又称AVL树。它或者是一棵空树,或者它的左子树和右子树都是平衡二叉树,且左子树和右子树的高度之差之差的绝对值不超过1。 3、二叉树的高度:树中结点的最大层次称为树的深度(Depth)或高度。 4、完全二叉树与满二叉树:

2015-07-31 01:03:37 1945

原创 小议进程与线程

进程与线程一、定义:进程:具有一定独立功能的,程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程:程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位,有时被称为轻量级进程(Lightweight Process,LWP)。二、联系:1、隶属关系:一个进程有且至少含有一个线程。一个线程只能属于一个进程。线程是进程的一个执行单元,是

2015-07-30 16:05:36 501

空空如也

空空如也

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

TA关注的人

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