自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

转载 epoll实现高并发聊天室

项目介绍本项目是实现一个简单的聊天室,聊天室分为服务端和客户端。本项目将很多复杂的功能都去掉了,线程池、多线程编程、超时重传、确认收包等等都不会涉及。总共300多行代码,让大家真正了解C/S模型,以及epoll的使用。为了方便查看,代码已经改的很小白,绝对比nginx源码好理解(当然大家有兴趣的话,还是要拜读下nginx源码,绝对大有收获)。希望本项目能为大家以后的工作或者学习提供一点帮助! ...

2019-04-29 21:21:09 1117 1

转载 C++后台开发

C++后台开发之我见                                                                                                                   --------2017.2.6        工作也快两年了,偶然看到自己以前写过的一些技术博客,发现自己自毕业后一直没有更新过自己的技术博...

2018-11-25 12:33:15 5509

转载 1.KVM介绍与安装

1. KVM 介绍1.0 虚拟化简史其中,KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor:它由 Quramnet 开发,该公司于 2008年被 Red Hat 收购。它支持 x86 (32 and 64 位), s390, Powerpc 等 CPU。它从 L...

2018-06-23 11:14:08 1608

转载 8.使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]

1. QEMU/KVM 迁移的概念     迁移(migration)包括系统整体的迁移和某个工作负载的迁移。系统整理迁移,是将系统上所有软件包括操作系统完全复制到另一个物理机硬件机器上。虚拟化环境中的迁移,可分为静态迁移(static migration,或者 冷迁移 cold migration,或者离线迁移 offline migration) 和 动态迁移 (live migration,...

2018-06-23 11:13:17 399

转载 7.使用 libvirt 做 QEMU/KVM 快照和 Nova 实例的快照 (Nova Instances Snapshot Libvirt)

本文将梳理 QEMU/KVM 快照相关的知识,以及在 OpenStack Nova 中使用 libvirt 来对 QEMU/KVM 虚机做快照的过程。1. QEMU/KVM 快照1.1 概念QEMU/KVM 快照的定义:快照就是将虚机在某一个时间点上的磁盘、内存和设备状态保存一下,以备将来之用。它包括以下几类:磁盘快照:磁盘的内容(可能是虚机的全部磁盘或者部分磁盘)在某个时间点上被保存,然后可以被...

2018-06-23 11:12:29 363

转载 6.Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]

1. Libvirt 在 OpenStack 架构中的位置在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该 Hypervisor 的虚机。Nova 使用 libvirt 管理 QEMU/KVM 虚机,还使用别的 API 去管理别的虚机。       libvirt 的实现代码在 /nova/virt/libvirt/dri...

2018-06-23 11:11:40 291

转载 5.libvirt 介绍 [ Libvrit for KVM/QEMU ]

1. Libvirt 是什么为什么需要Libvirt?Hypervisor 比如 qemu-kvm 的命令行虚拟机管理工具参数众多,难于使用。Hypervisor 种类众多,没有统一的编程接口来管理它们,这对云环境来说非常重要。没有统一的方式来方便地定义虚拟机相关的各种可管理对象。Libvirt提供了什么?它提供统一、稳定、开放的源代码的应用程序接口(API)、守护进程 (libvirtd)和和一...

2018-06-23 11:09:48 463

转载 4.I/O 设备直接分配和 SR-IOV [KVM PCI/PCIe Pass-Through SR-IOV]

本文将分析 PCI/PCIe 设备直接分配(Pass-through)和 SR-IOV, 以及三种 I/O 虚拟化方式的比较。1. PCI/PCI-E 设备直接分配给虚机 (PCI Pass-through)设备直接分配 (Device assignment)也称为 Device Pass-Through。 先简单看看PCI 和 PCI-E 的区别(AMD CPU):(简单点看,PCI 卡的性能没...

2018-06-23 11:08:56 652

转载 3.I/O 全虚拟化和准虚拟化 [KVM I/O QEMU Full-Virtualizaiton Para-virtualization]

在 QEMU/KVM 中,客户机可以使用的设备大致可分为三类:1. 模拟设备:完全由 QEMU 纯软件模拟的设备。2. Virtio 设备:实现 VIRTIO API 的半虚拟化设备。3. PCI 设备直接分配 (PCI device assignment) 。1. 全虚拟化 I/O 设备KVM 在 IO 虚拟化方面,传统或者默认的方式是使用 QEMU 纯软件的方式来模拟 I/O 设备,包括键盘、...

2018-06-23 11:07:43 277

转载 2.cpu和内存虚拟化

1. 为什么需要 CPU 虚拟化X86 操作系统是设计在直接运行在裸硬件设备上的,因此它们自动认为它们完全占有计算机硬件。x86 架构提供四个特权级别给操作系统和应用程序来访问硬件。 Ring 是指 CPU 的运行级别,Ring 0是最高级别,Ring1次之,Ring2更次之…… 就 Linux+x86 来说, 操作系统(内核)需要直接访问硬件和内存,因此它的代码需要运行在最高运行级别  Ring...

2018-06-23 11:06:15 1434

转载 linux操作系统测试工具

http://blog.csdn.net/crisschan/article/details/49640419名称用途lmbench 3.0-a9测试包括文件读写、内存操作、进程创建销毁开销、网络等性能unixbench5.1.2Linux下的VPS性能测试软件

2018-03-18 23:33:15 4749

转载 find -print0与xargs -0

默认情况下, find 每输出一个文件名, 后面都会接着输出一个换行符 ('\n'), 因此我们看到的 find 的输出都是一行一行的:[bash-4.1.5] ; ls -ltotal 0-rw-r--r-- 1 root root 0 2010-08-02 18:09 file1.log-rw-r--r-- 1 root root 0 2010-08-02 18:09 file

2017-10-11 23:33:59 194

转载 Shell特殊变量:Shell $0, $#, $*, $@, $?, $$

Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数    特殊变量列表    变量  含义  $0      当前脚本的文件名  $n      传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。  $#      传递给脚本或函数的参数个数。  $*      传递给脚本或函数的

2017-10-10 00:07:07 241

转载 深入理解iostat

前言iostat算是比较重要的查看块设备运行状态的工具,相信大多数使用Linux的同学都用过这个工具,或者听说过这个工具。但是对于这个工具,引起的误解也是最多的,大多数人对这个工具处于朦朦胧胧的状态。现在我们由浅到深地介绍这个工具,它输出的含义什么,介绍它的能力边界,介绍关于这个工具的常见误解。基本用法和输出的基本含义iostat的用法比较简单,一般来说用法如下:i

2017-09-11 01:02:50 697

转载 history命令格式修改

history 是一条非常实用的 shell 命令,可以显示出之前在 shell 中运行的命令,但是如果需要查什么时候什么人执行了什么命令似乎还是非常吃力,因为你即使查到了一条你认为不应该执行的命令,你也不能准确的说出这条命令是谁来执行的,更不能精确的指出这条命令就是事故发生的时候执行的,怎么办? shterm? 这个对于一般中小型公司来说似乎还是非常昂贵的,怎么办?    设置很简单:

2017-09-11 00:28:59 682

转载 oracle架构原理

目录目录前言Oracle RDBMS架构图内存结构系统全局区SGA高速缓存缓冲区数据库缓冲区日志缓冲区共享池其他结构进程结构用户连接进程用户进程User ProcessServer Process服务进程程序全局区PGAOracle的connect连接和session会话与User Process紧密相关后台进程数据库写入进程DBWn

2017-09-06 23:42:55 1190

转载 sar详解

linux sar命令详解2012年08月21日 ⁄ CentOS, Linux ⁄ 共 4053字 ⁄ 字号 小 中 大 ⁄ 评论 1 条 ⁄ 阅读 33,459 次sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用

2017-09-04 23:27:23 2476

转载 理解 %IOWAIT (%WIO)

%iowait 是 “sar -u” 等工具检查CPU使用率时显示的一个指标,在Linux上显示为 %iowait,在有的Unix版本上显示为 %wio,含义都是一样的,这个指标常常被误读,很多人把它当作I/O问题的征兆,我自己每隔一段时间就会遇到对 %iowait 紧张兮兮的客户,不得不费尽唇舌反复解释,事实上这个指标所含的信息量非常少,不能单独用来判断系统有没有I/O问题,在此我们详细探讨一下

2017-09-04 22:54:38 305

转载 数字证书原理

想要对 ssl和数字证书 有一个全面了解的人仔细阅读这篇文章。文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用。接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makecert生成数字证书。如果发现文中有错误的地方,或者有什么地方说得不够清楚,欢迎指出! 1

2017-08-26 22:37:24 4423

转载 linux启动流程

作者: 阮一峰日期: 2013年8月17日半年前,我写了《计算机是如何启动的?》,探讨BIOS和主引导记录的作用。那篇文章不涉及操作系统,只与主板的板载程序有关。今天,我想接着往下写,探讨操作系统接管硬件以后发生的事情,也就是操作系统的启动流程。这个部分比较有意思。因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多;但是,一旦进

2017-08-26 21:09:46 166

转载 计算机启动过程

从打开电源到开始操作,计算机的启动是一个非常复杂的过程。我一直搞不清楚,这个过程到底是怎么回事,只看见屏幕快速滚动各种提示...... 这几天,我查了一些资料,试图搞懂它。下面就是我整理的笔记。零、boot的含义先问一个问题,"启动"用英语怎么说?回答是boot。可是,boot原来的意思是靴子,"启动"与靴子有什么关系呢? 原来,这里的boot是bootst

2017-08-26 20:40:43 194

转载 Linux内核态与用户态

如上图所示,从宏观上来看,Linux操作系统的体系架构分为用户态和内核态(或者用户空间和内核)。内核从本质上看是一种软件——控制计算机的硬件资源,并提供上层应用程序运行的环境。用户态即上层应用程序的活动空间,应用程序的执行必须依托于内核提供的资源,包括CPU资源、存储资源、I/O资源等。为了使上层应用能够访问到这些资源,内核必须为上层应用提供访问的接口:即系统调用。  系统调用是操作系统的

2017-08-20 23:37:57 419

转载 X86、X64和X86_64区别

x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,ntel官方文档里面称为“IA-32”x84_64是x86 CPU开始迈向64位的时候,有2选择:1、向下兼容x86。2、完全重新设计指令集,不兼容x86。AMD抢跑了,比Intel率先制造出了商用的兼容 x86的CPU,

2017-08-19 15:41:29 1176

转载 腾讯后台开发

linux和os:netstat :显示网络状态tcpdump:主要是截获通过本机网络接口的数据,用以分析。能够截获当前所有通过本机网卡的数据包。它拥有灵活的过滤机制,可以确保得到想要的数据。ipcs:检查系统上共享内存的分配ipcrm:手动解除系统上共享内存的分配(如果这四个命令没听说过或者不能熟练使用,基本上可以回家,通过的概率较小 ^_^ ,这四个命令

2016-06-23 00:32:00 690

空空如也

空空如也

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

TA关注的人

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