王小东大将军的博客

读书学习笔记+温故知新

热情贡献!!!史上最全openstack资料大全!!!你值得拥有!!!

就问你怕不怕???大兄弟,稳住!!!   使用openstack,经常使用一些命令 技术|10个重要的Linux ps命令实战 ps命令能够给出当前系统中进程的快照。它能捕获系统在某一事件的进程状态。如果你想不断更新查看的这个状态,可以使用top命令。   搭建openstack参考:...

2018-12-29 11:43:52

阅读数 182

评论数 0

详解测试驱动开发 Test Driven Development(TDD)

  {TDD的目标} Clean Code That Works 这句话的含义是,事实上只做两件事情:让代码奏效(Work)和让代码洁净(Clean),前者是把事情做对,后者是把事情做好。   想试用TDD的人们,请遵循下面的步骤: 编写TestCase --&am...

2018-07-20 18:34:15

阅读数 351

评论数 0

深入浅出SRIOV

虚拟化中的SR-IOV https://blog.51cto.com/maomaostyle/1439651 SRIOV,即单根虚拟化。Intel在早期为了支持虚拟化环境,在CPU和PCI总线上提供了三层虚拟化技术,它们分别是: 基于处理器的虚拟化技术VT-x 基于PCI总线实现的IO...

2019-05-23 11:08:59

阅读数 7

评论数 0

SR-IOV简单理解

为提高服务器里虚拟机收发报文的性能和伸缩性,解决I/O虚拟化的最后一公里的问题,提出了 基于硬件的SR-IOV虚拟化解决方案。 SR-IOV标准允许在虚拟机之间高效共享PCIe(快速外设组件互连)设备,并且它是在硬件中实现的,可以获得能够与本机性能接近的I/O性能。 sr-iov中两种功能...

2019-05-08 13:44:22

阅读数 60

评论数 0

面试题9: const、static、volatile关键字使用说明

关于const关键字的用法,潜意识下就会想到 修饰变量,一直没有深入挖掘。最近在面试的时候常常会被问到const、static、votaile等关键字的使用与区别。借此机会,重新复习总结关于此关键字的使用。   1、首先看一下,const与宏定义之间的比较: 宏作用: 在开发中会把一些常用...

2018-08-16 15:01:31

阅读数 448

评论数 0

面试题8: 你思考过为什么快排比堆排序快吗?

堆排的过程:比如最大堆 1. 建立最大堆(堆顶的元素大于其两个儿子,两个儿子又分别大于它们各自下属的两个儿子… 以此类推) 2. 将堆顶的元素和最后一个元素对调(相当于将堆顶元素(最大值)拿走,然后将堆底的那个元素补上它的空缺),然后让那最后一个元素从顶上往下滑到恰当的位置(重新使堆最大化)。...

2018-08-02 20:18:17

阅读数 448

评论数 0

面试题7:构造函数不能虚,析构函数建议虚

1,从存储空间角度     虚函数对应一个vtable,这大家都知道,可是这个vtable其实是存储在对象的内存空间的。问题出来了,如果构造函数是虚的,就需要通过 vtable来调用,可是对象还没有实例化,也就是内存空间还没有,无法找到vtable,所以构造函数不能是虚函数。 2,从使用角度 ...

2018-08-02 20:01:35

阅读数 134

评论数 0

面试题6:由浅入深的进程上下文

内核空间和用户空间是操作系统理论的基础之一,即内核功能模块运行在内核空间,而应用程序运行在用户空间。CPU都具有不同的操作模式,代表不同的级别,不同的级别具有不同的功能,在较低的级别中将禁止某些操作。Linux系统设计时利用了这种硬件特性,使用了两个级别,最高级别和最低级别,内核运行在最高级别(内...

2018-08-01 10:15:32

阅读数 155

评论数 0

面试题5:头文件中的ifndef/define/endif有什么作用?

  在一个大的软件工程里面,可能会有多个文件同时包含一个头文件,当这些文件编译链接成一个可执行文件时,就会出现大量重定义的错误。在头文件中实用#ifndef #define #endif能避免头文件的重定义。 方法:例如要编写头文件test.h 在头文件开头写上两行: #ifndef _TEST...

2018-08-01 09:41:25

阅读数 1857

评论数 0

面试题4:数组、指针、引用的联系区别

数组和指针??? 从两个方面来看,一是作为一个语言,数组是必须要支持的一种数组类型,原因很简单,数组是线性表的直接体现。而从编译器设计者的角度来看,如果为数组专门设计一套实现标准会非常繁杂(事实上,后来C++完成了这一任务,它就是标准库中的vector容器)。这一对矛盾最后以双方的相互妥协得以解...

2018-08-01 09:10:53

阅读数 322

评论数 1

面试题3:Linux中的锁锁锁!!!

一、读写锁 读写锁,也叫作共享式互斥锁。有3种状态:读模式的加锁状态、写模式的加锁状态、不加锁状态。 写模式加锁状态:在这个锁被解锁之前,所有试图对这个锁加锁的线程都会被阻塞。 读模式加锁状态:所有试图以读模式进行加锁的线程都可以得到访问权,但是任何希望以写模式对此加锁的线程都会阻塞,直到所...

2018-07-31 22:17:09

阅读数 112

评论数 0

面试题2:进程间常用的通信方式有哪些?

进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。 IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。 一、管...

2018-07-31 22:03:19

阅读数 1079

评论数 0

面试题1:OS或者编译器怎么识别是全局变量还是局部变量

OS或者编译器怎么识别是全局变量还是局部变量.   操作系统内根本不关心你是什么变量,它只管代理运行程序,也就是进程,负责这些进程之间的调度,不过如果要说操作系统本身也是进程,那倒可以理解; 编译器最终会把程序编译成可执行文件,就是对应的一条一条汇编指令,在程序运行过程中按照定义,就可以有不同...

2018-07-31 21:24:21

阅读数 126

评论数 0

java语言(10): 是集合不是集结!

先熟悉如下框图常用的接口     数组: 存储同一种数据类型的集合容器. 数组的特点: 1). 只能存储同一种数据类型的数据。 2). 一旦初始化,长度固定。  3). 数组中的元素与元素之间的内存地址是连续的。注意: Object类型的数组可以存储任意类型的数据。集合:集合是存储对象数...

2018-07-20 11:06:28

阅读数 85

评论数 0

工程项目常见的知识点(1)

  (一)、关于override的用法,是对 父类中的 虚方法的重写覆盖。     override(重写,覆盖)  (1)方法名、参数、返回值相同。  (2)子类方法不能缩小父类方法的访问权限。  (3)子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常) (4)存在...

2018-07-19 18:42:00

阅读数 83

评论数 0

java语言(9): 暗藏玄机的引用

  一、背景: Java中是JVM负责内存的分配和回收,这是它的优点(使用方便,程序不用再像使用c那样操心内存),但同时也是它的缺点(不够灵活)。为了解决内存操作不灵活这个问题,可以采用软引用等方法。  在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也...

2018-07-19 11:28:17

阅读数 60

评论数 0

java语言(8): String String String 类慢慢来

一、快速使用java.lang.String类 1、得到字符串对象的有关信息 (1)通过调用length()方法得到String的长度.例: String str="This is a String"; int len =str.length(); (...

2018-07-19 10:09:33

阅读数 76

评论数 0

C# using的三种用法

https://www.cnblogs.com/ma-yuanhao/p/9139262.html   C# using的三种用法 1.在文件顶部引用命名空间,如:using System; 2.为命名空间或类型定义别名;    这种做法有个好处就是当同一个cs文件引用了两个不同的命名空...

2018-07-17 17:57:27

阅读数 260

评论数 0

java语言(7): 深入浅出的 类和对象

类和对象 一、面向对象简述 面向过程的操作是以程序的基本功能实现为主,实现之后就完成了,也不考虑修改的可能性,面向对象,更多的是要进行子模块化的设计,每一个模块都需要单独存在,并且可以被重复利用,所以,面向对象的开发更像是一个具备标准的开发模式。 在面向对象定义之中,也规定了一些基本的特征:...

2018-07-16 18:58:24

阅读数 176

评论数 1

java语言(6): 一起来聊聊序列化

    序列化定义:就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化(将对象转换成二进制)。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。    序列化目的:为了解决在对 对象流进行读写操作时所引发的问题。    把对象转换为字节序列的过程称为对象的序列化,把...

2018-07-16 16:14:53

阅读数 66

评论数 0

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