自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(58)
  • 资源 (10)
  • 收藏
  • 关注

原创 Tips: Mac OS X下安装python-lxml

问题: 使用easy_install或者pip在mac下安装l

2014-06-25 02:11:42 925

转载 spice console in openstack

Documentation for many openstack features exists only in the form of source code. This is a result of everything still being under heavy development. My most recent experience in divining configuratio

2013-12-09 02:52:25 918

转载 Openstack Nova调度器及其算法

AbstractAmong the current core projects of OpenStack, Nova project is the core of the cores. Just as described in OpenStack website, Nova is a cloud computing fabric controller, the main par

2013-12-09 02:02:11 1138

转载 Deploying Keystone via Puppet on F19

For Puppet on Fedora, we have Packstack and The Foreman. But if you are doing development, you need to know what is going on at the nuts and bolts level. I need to do some work on the Puppet modules f

2013-11-11 22:59:41 414

原创 Phonegap在ios7上系统状态栏的问题解决

用Phonegap+jqm开发的应用,在ios6下没问题,但是在ios7下会出现如下系统状态栏和header重合的问题:搜索了一下,发现这其实是phonegap当前版本的一个已知问题,通过修改./platforms/ios/whhe/Classes/MainViewController.m,就可以解决:- (void)viewWillAppear:(BOOL

2013-10-11 01:17:46 2783 3

原创 Mac OS下phonegap开发环境的建立

$ sudo npm install -g phonegap1. 安装brew包管理器sudo sucurl -L http://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C /usr/local这样你的系统中就有brew命令了,可以用下面的命令来安装比如wget:$

2013-10-10 23:48:19 2393

原创 JQM+Phonegap跨域问题的解决

1. 在本地调试阶段,chrome浏览器的默认安全规则不允许跨域访问,要让jqm在chrome中跨域访问:a) In JQM:$(document).bind("mobileinit", function() { .... $.mobile.allowCrossDomainPages = true;}b) Mac OS下允许Chrome跨域, 使用下面

2013-10-10 23:18:31 975

转载 jQuery Mobile: Prefetching and Caching Pages

This is my third post of jQuery Mobile Series and In first two Post, I had explained about Writing your first jQuery Mobile app - Part 1 and Create Multiple jQuery Mobile Pages and Link them - P

2013-09-21 14:58:19 625

转载 Tips for speeding up jQuery Mobile

Several people ask about how they can speed up jQuery Mobile, so I figured there should be a thread on tips for speeding up your jQuery Mobile projects.ELIMINATE WASTE:Decouple jQuery Mobi

2013-09-21 03:41:49 463

原创 【RedHat OVirt 】Node Troubleshooting

如何解决文件系统只读问题Ovirt Node的根文件系统默认是只读的,如果需要对其进行修改,需要重新挂载为读写模式:# mount -o rw,remount /如何使用root密码登陆系统1. 找一台linux主机,执行: # openssl passwd ovirtnqsaxeG1J8l1U 2  启动景象,在boot menu的时候按键3. 将rootpw=

2013-06-15 14:10:16 812

原创 【KVM小技巧】- 虚拟磁盘瘦身 (Disk Shrink)

背景虚拟磁盘瘦分配(Thin Provisioning)可以大大节省存储空间,实现存储空间按需分配。但是因为客户机(Guest OS)删除文件的时候,仅仅只是把相应文件的inode做一个删除标识,而不会将其物理空间清零(Zero Filling)释放。所以从主机测看来,经常会看到,客户机中报告磁盘使用空间是1G,但是对应的虚拟镜像文件(vmdk, qcow2, vhd...)实际大小甚至会

2013-05-04 22:00:01 1647

原创 QEMU主要特性开发分支 (持续更新)

QEMU很多特性因为考虑到稳定性,兼容性等诸多因素,并没有合入主干版本,下面这些是当前更新比较频繁的git分支:主干分支:git://git.qemu.org/qemu.gitcpu热拔插:https://github.com/imammedo/qemu.git虚拟机热迁移优化:git://github.com/plieven/qemu.gitusb staging:git://git

2013-04-06 07:27:24 1118

原创 【KVM新概念】 - 虚拟机CPU热拔插

背景CPU和内存热拔插其实很早被目前主流的操作系统支持了,微软从Windows Server 2008开始支持,Linux从3.2.0的内核开始支持。状态Qemu也是很早就规划了CPU热拔插特性,但是一直没有合入主干版本,因为实现中相关的bug和限制很多。最新的cpu热拔插分支是:https://github.com/imammedo/qemu/tree/cpu_add.v2,

2013-04-06 02:45:01 1995

原创 【KVM新概念】 - Paravirtualized End-of-Interrupt Indication (PV-EOI)

背景X86 PC体系架构中的中断控制器,早先是8259A,现在更普遍使用的是APIC,他们处理中断的流程遵循如下流程:外部设备产生一个中断,如果该中断没有被屏蔽掉,中断控制器将IRR寄存器中相应的位置1,表示收到中断,但是还未提交给CPU处理;中断控制器将该中断提交给CPU,CPU收到中断请求后,会应答中断控制器;中断控制器收到CPU的中断应答后,将IRR寄存器中相应的位清0,并将

2013-04-01 00:27:03 2056

原创 【KVM新概念】 - Exit-less Interrupt (ELI)

背景基于X86的虚拟化技术(intel vt-x),虚拟机可以通过主机或者直通的方式访问外部设备。两种方式都会造成一定的性能损耗,主要原因是外部设备中断的处理离不开主机的干预:当外部设备中断到达时,hypervisor中断客户机,并注入相应的虚拟中断;当客户机完成中断服务程序后,也需要退出到hypervisor, 向外部设备发送EOI (end of interrupt), 整个过程和bare

2013-03-18 14:17:41 1531 3

原创 【QEMU-KVM代码分析之三】IO thread源码浅析之main loop

IO thread初始化Qemu IO thread初始化函数位于main-loop.c:int qemu_init_main_loop(void){ int ret; GSource *src; init_clocks(); if (init_timer_alarm() < 0) { fprintf(stderr, "co

2013-03-17 02:34:16 4295 1

转载 Virsto Architecture Explained

With any new emerging technology category, initially there is a lot of confusion in the marketplace on how to define the new approach. The storage hypervisor is experiencing this as the category is es

2013-03-10 00:06:22 704

原创 KVM性能分析工具

跟踪KVM事件# echo 1 >/sys/kernel/debug/tracing/events/kvm/enable# cat /sys/kernel/debug/tracing/trace_pipe[...] kvm-5664 [000] 11906.220178: kvm_entry: vcpu 0 kvm-5664 [0

2013-02-23 01:25:46 1966

原创 Openstack之Cinder服务初探

Cinder背景Openstack从Folsom开始使用Cinder替换原来的Nova-Volume服务,为Openstack云平台提供块存储服务。Cinder架构 /- ( LDAP ) [ Auth Manager ]

2013-02-20 01:23:47 9856 2

转载 KVM Fault Tolerance: Kemari for KVM

It has been a while coming, but we have finally started work onKemari's port to KVM. For those not familiar with it, Kemari providesthe basic building block to create a virtualization-based faultto

2013-02-19 12:45:25 1338 1

转载 OpenSSL建立网络证书颁发机构及服务器证书

使用Openssl来在Linux系统下生成证书1、SSL所使用的证书可以是自己建的,也可以通过一个商业性CA如Verisign 或 Thawte签署的。2、证书的概念:首先要有一个根证书,然后用根证书来签发服务器证书和客户证书,一般理解:服务器证书和客户证书是平级关系。因此证书有:即根证书,服务器证书,客户端证书在生成证书之前,一般会有一个私钥,同时用私钥生成证书请求,再利用证书服

2013-02-18 00:06:15 545

转载 OpenSSL命令行工具验证数字签名

一、发送方A:生成私钥:OpenSSL> genrsa -passout pass:123456 -out apri.pem 1024生成公钥:OpenSSL> rsa -passin pass:123456 -pubout -in apri.pem -out apub.pem用B的公钥加密数据:OpenSSL> rsautl -encrypt -pubin -inkey

2013-02-17 11:07:47 457

转载 REST API的身份验证

George Reese在文中概括了他认为REST API Authentication所应该遵循的3条原则:1. All REST API calls must take place over HTTPS with a certificate signed by a trusted CA. All clients must validate the certificate before in

2013-02-17 10:46:31 456

转载 Handling Asynchronous REST Operations

In his new post - Slow REST Tim Bray tries to answer the question:In a RESTful context, how do you handle state-changing operations (POST, PUT, DELETE) which have substantial and unpredictable lat

2013-02-15 15:30:56 301

转载 11个有用的移动网页开发App和HTML5框架

在过去的两年里,触屏设备飞速增长。iOS和Android设备让开发者和设计师开始重新思考他们的网页应用,以提供更好的触屏体验。移动Web应用相对于本地的App有很多优势,虽然也有很多设计和开发上的挑战。这里列出了一系列有用的框架来帮助基于HTML的webapp开发。他们支持大部分流行的智能手机和平板。1.Lungo.js:HTML5移动开发框架Lungo.js是第一个应用H

2013-02-14 05:37:47 487

转载 Tiggr, a Web-Based IDE for Building Mobile Apps

Tiggr is a Web-based IDE for building mobile Web and native apps. Today I’d like to givel you 14 reasons why this new-of-a-kind IDE deserves your attention.1. Mobile Apps IDE in the Cloud – Access Y

2013-02-14 05:36:29 618

原创 My Git Pearls

Set up gitUser name: git config --global user.name "my name"Email: git config --global user.email "email addr"Init a repo: git init BranchingList branches: git branch -aWork on

2013-02-06 06:03:23 489

转载 GMainLoop的实现原理和代码模型

转载时请注明出处和作者联系方式文章出处:http://blog.csdn.net/jack0106 作者联系方式:冯牮 [email protected]做linux程序开发有一段时间了,也使用过好几个UI库,包括gtk,qt,还有clutter。其中感觉最神秘的,就是所谓的“主事件循环",在qt中,就是QApplication,gtk中是gtk_main(),

2013-01-25 01:30:42 1594

原创 【QEMU-KVM代码分析之二】 Threading model & IO thread

目前Qemu 1.3.0的线程模型是这个样子的:每个vcpu是一个单独的thread; vcpu thread在VM_ENTER以后执行客户机代码, 在VM_EXIT以后根据退出原因执行PIO或者MMIO。一个独立的io线程,主要用来处理:轮询IO,包括定时信号 (alarm signalfd),  AIO (eventfd), 并执行事件对应的回调函数(poll, read, w

2013-01-22 23:37:14 2768 1

原创 【QEMU-KVM代码分析之一】 背景

把虚拟化平台尝试从从Xen切换到KVM已经有好几个月了,二者从架构,特性,性能等维度的优劣对比网上相关的文章很多,也不再重复了。KVM虽然好,但是我们对它还是不尽满意,原因有这么几个:1)代码结构:不管是还是QEMU还是KVM, 都被IBM严重绑架,这么说可能有点夸大其实,但是我至今也想不通有什么技术和架构原因QEMU需要将ppc和s390静态包含进来; 还有官方git的commit, p

2013-01-21 01:54:36 2225 3

转载 Linux 定时器

时间间隔定时器interval timer(时间间隔定时器)系统调用自从被POSIX标准化后,首次出现于4.2BSD,能够提供比alarm()还多的控制:#include int getitimer(int which, struct itimerval *value);int setitimer(int which, const struct itimerval *value

2013-01-20 04:34:43 408

转载 kvm qemu内幕介绍

====================================目录1 硬件虚拟化技术背景2 KVM的内部实现概述 2.1 KVM的抽象对象 2.2 KVM的vcpu 2.3 KVM的IO虚拟化 2.3.1 IO的虚拟化 2.3.2 VirtIO3 KVM-IO可能优化地方 3.1 Virt-IO的硬盘优化

2013-01-10 02:33:02 1207

转载 qemu-kvm-0.12.3主要函数路径

Entry point:main(vl.c)      |kvm_init(qemu-kvm.c) -> machine->init(pc_init_pci in ./hw/pc.c)-> main_loop(vl.c)      |                                                                    |

2013-01-10 02:30:54 766

转载 Qemu-KVM TSC研究总结

响应延时的实时测试需要读TSC,但是这两天做实验发现一个很奇怪的问题,用VxWorks作为guest时,对于类似“tsc1=rdtsc;nanosleep(100);tsc2=rdtsc;” 的程序,tsc2却总是比tsc1要小了。而用Linux作为guest时,对于类似的程序,是没有问题的。那么,是否是kvm中对于TSC的处理有问题呢?带着这个问题,我把kvm-kmod-2.6.33.1中的TS

2013-01-07 00:31:59 1060

转载 Qemu-KVM Guest OS Time Tick Source (3)

在(1)中详细阐述了KVM是如何模拟内核PIT以及如何将timer中断注入到guest中去的。但是,那时对这一整套的机制理解还不够深,现在通过研究代码,理解又上升了一层,所以加深的总结一下。核心想搞清楚的问题是如下几个:1. 假如guest中设定PIT的频率为1000Hz,那么KVM如何为模拟PIT产生这个1000Hz的时钟源2. 当时钟周期到时,会产生物理中断,KVM是如何将这个物理

2013-01-07 00:31:07 700

转载 Qemu-KVM Guest OS Time Tick Source(2)

上一篇文章已经讨论过了在有内核模拟时钟情况下,kvm是如何给guest OS提供时钟源的。后面,我对Linux时间子系统做了一定的研究,体现在博文[Timer学习]系列,为了进一步加深理解,我就想,能不能把没有内核模拟时钟时,即原来Qemu用户空间模拟时钟的机制搞清楚。通过研究qemu-kvm-0.12.3代码,有了一定的认识,下面总结一下。 还是先来看一下Qemu用户态模

2013-01-07 00:28:42 707

转载 Qemu-KVM Guest OS Time Tick Source (1)

一个操作系统要跑起来,必须有time tick,它就像是身体的脉搏。普通情况下,OS time tick由PIT(i8254)或APIC Timer设备提供—PIT定期(1ms in Linux)产生一个timer interrupt,作为global tick,APIC Timer产生一个local tick。在虚拟化情况下,必须为guest OS模拟一个PIT和APIC Timer。模拟的

2013-01-07 00:26:02 1043

转载 Inter-VM shared memory PCI device

Support an inter-vm shared memory device that maps a shared-memory objectas a PCI device in the guest.  This patch also supports interrupts betweenguest by communicating over a unix domain socket.

2013-01-06 23:37:57 540

转载 The Definitive KVM (Kernel-based Virtual Machine) API Documentation

The Definitive KVM (Kernel-based Virtual Machine) API Documentation===================================================================1. General description----------------------The kvm AP

2013-01-06 23:36:13 1216

转载 qemu memory API

The memory API==============The memory API models the memory and I/O buses and controllers of a QEMUmachine. It attempts to allow modelling of: - ordinary RAM - memory-mapped I/O (MMIO)

2013-01-05 23:11:21 662

Toward Exitless and Efficient Paravirtual I/O

Toward Exitless and Efficient Paravirtual I/O

2013-03-18

ELI Bare-Metal Performance for IO Virtualization

ELI Bare-Metal Performance for IO Virtualization

2013-03-18

ELI: Bare-Metal Performance for I/O Virtualization

ELI: Bare-Metal Performance for I/O Virtualization

2013-03-18

Interrupt in Sandy Bridge and x86 platform

Interrupt in Sandy Bridge and x86 platform

2013-03-18

postcopy live migration

KVM postcopy live migration

2013-01-05

Optimizing Qemu Storage Stack

Optimizing Qemu Storage Stack

2013-01-05

performance analysis in virtualization/Xen

performance analysis in virtualization/Xen

2013-01-02

修改客户操作系统优化KVM的IO性能

修改客户操作系统优化KVM的IO性能, 这篇文章写得不错。

2013-01-02

qemu device

qemu device abstaction

2013-01-01

空空如也

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

TA关注的人

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