KVM你问我答 FAQ (二)

如果我的没有root权限,怎么使用KVM呢?

最简洁的做法就是创建一个组,比如kvm组,然后把将要使用kvm的用户添加到组里面。然后用chown命令把/dev/kvm的所有组改成kvm。如果你的系统里安装了udev,你还可以通过配置udev的方式使得linux自动把新创建的设备设成正确的组。比如在ubuntu的/etc/udev/rules.d/40-permissions.rules文件中增加一行:
KERNEL==”kvm”, GROUP=”kvm”

 



怎么做才能得到kvm的最佳性能呢?

See the Tuning KVM page.



KVM稳定吗?

KVM非常稳定而且已经用于工作生产环境之中。对于所有的开始工程,开发版的稳定性总是逊于稳定发行版。建议使用稳定发行版。KVM已经被使用比较长一段时间,模拟常用的操作系统和配置。一但有问题出现,开发者会在第一时间修复。参看Guest Support Status,列举了目前运行良好的操作系统。zausiu’s blog http://ykyi.net



KVM真的可以用于生产环境吗?

为了稳定性,强列建议你使用你使用的发行版提供的KVM模块。如前面所述,及早使用新特性总是令人开心的事情。但是,你常常要要承担一定的风险,一些未知的问题可能在使用时暴露出来。在生产环境中,最好使用你使用的发行版提供的稳定版,而开发版本,如果你愿意,可以使用在不是那么重要的环境下。



如果我用kill -9杀掉VM进程会发生什么事呢?

From the guest’s perspective, it is as if you yanked the power cord out. From the host’s perspective, the process is killed and all resources it uses are reclaimed.
从客户虚拟机的立场来看,这就如同被拨掉了电源。从Host机的立场看,仅仅是VM进程被杀死了,这个VM进程所申请的所有系统资源被回收给操作系统。如前文所说,对于linux内核,VM进程就是一个普通的进程。



请帮助我设置客户机的网络。

可以参考这里 Networking 设置网站,也可以找找QEMU的网络设置相关文档。



哪里有更多KVM的文档呢?

绝大多数问题都在QEMU的 documentation中被提到了,还有部分在扩展FAQ ( 已经废弃的老板 FAQ).

 


KVM你问我答FAQ (一)

使用KVM需要哪些准备?

你需要一台运行Linux的x86的机器。它的CPU是有VT技术支持的英特尔cpu或者有SVM(又常被称为AMD-V)支持的AMD的CPU.



KVM支持64位的处理器吗?

KVM支持64位的处理器!此时,你可以运行32位或者64位的客户机。



What is Intel VT / AMD-V / hvm?

英特尔VT,是什么?AMD-V又是什么?hvm是什么?

Intel VTAMD’s AMD-V 都指的是指令集扩展。它们在硬件层面帮助实现虚拟机管理技术。这种技术使得在虚拟机上运行的速度接近直接在真实机器上运行的速度。HVM是硬件虚拟机的缩写(Hardware Virtual Machine )则是一个生产商中立的词汇(vendor-neutral term),它常常用来指代x86指定集扩展。



从哪里得到KVM内核模块呢?

可以从这里获得 http://www.linux-kvm.org/page/Getting_the_kvm_kernel_modules



我如何知道我的CPU支持Intel VT技术或者AMD-V技术呢?

如果你的Linux操作系统比较新,尝试以下的指令:
. egrep ‘^flags.*(vmx|svm)’ /proc/cpuinfo

如果出现一些文字,那说说你的CPU支持虚拟化。你也可以在/proc/cpuinfo文件中找到处理器模块的名字,然后到供应商的网站上查询。
注意:
1. 如果安装了Xen hypervisor,为了防止被劫持,你在dom0和domU中都得不到这些输出。dom0和domU是Xen hypervisor的术语。如果你没有安装Xen,直接忽略。
2. 一些产商默认在BIOS定设中禁用了CPU的虚拟化支持。你需要先在BIOS中打开虚拟化支持。
3. 如果你用的是intel cpu,对于内核版本2.6.15以前的Linux,你得不到这样的输出。如果你用的是amd cpu,对于内核版 本2.6.16以前的linux,你得不到这样的输出。如果你不确定你的Linux内核版本,用#uname -r 命令查看。



出现 “KVM: disabled by BIOS” error 错误

Check if there is an option to enable it in the BIOS. If not, look for a more recent BIOS on the vendor’s web site.
在BIOS设定在找找看有没有启用cpu虚拟化的选项,如果没有,去到主板厂商的网站上面看看有没有新的BIOS发布并支持打开cpu虚拟化,那么你需要刷新BIOS.
注意:
1.对于部分硬件(如 HP nx 6320),你需要先关掉主机电源,再打开主机电源才能使BIOS中启用cpu虚拟化支持生效。
2.BIOS的部分设定有可能与启用CPU虚拟化冲突。比如在Thinkpad T500上,启用Intel AMT技术会出现冲突。这样kvm-intel在载入时会抱怨”disabled by bios”错误。
3. 在一些Dell的硬件中,你还需要禁用”Trusted Execution”,否则不能打开VT。

 



你该怎么使用AMD-V扩展呢?

在根用户权限下敲入:modprobe kvm-amd

 



KVM使用什么样的用户空间工具。(User space tools)

KVM使用稍稍修改过的QEMU作为用户空间工具来管理创建的虚拟机。执行QEMU以后,从linux内核的视角来看,每个虚拟机仅仅是一个普通的进程。你可以用经典的Unix命令,如top, kill, taskset等等来操作虚拟机。



KVM使用何种类型的虚拟磁盘。

QEMU支持的多种磁盘格式如raw images,qcow2(QEMU原生磁盘格式),VMWARE format,等等,KVM都支持(KVM inherits a wealth of disk formats support from QEMU)。


在嵌入式系统部署虚拟化的八大理由

在服务器和桌面上部署虚拟化已经越来越流行。但是大多数一定没有想过在嵌入式环境下部署虚拟化。

Hypervisor(又被称之为虚拟机管理程序virtual machine monitor)如今已经在这颗星球上所有的数据中心遍地开花。因为它给数据中心带来了节省硬件,节省能源的费用,还降低了管理的成本。事实上,从兆兆级的路由器到富媒体的机顶盒,再到手机等等嵌入式系统,它们同样能从虚拟化中受益。 zausiu’s blog http://ykyi.net

因为嵌入式系统的资源非常有限。它们还通常是定制的系统,软硬件紧密结合在一起。初看来,在嵌入式设备中部署虚拟化显得过于隆重。但下文告诉你在嵌入式设备中部署虚拟化的八大理由。

1. 更坚固

定制的硬件是非常昂贵的,如果把多种物理设备集成到一起就能降低成本。集成在一起当然比分布式的环境要简单得多。如果所有的虚拟机运行在相同的服务机上,划分网络的风险就不存在了,硬件故障也有了‘原子性’(hardware failures are atomic),而且在虚拟化环境下已经有非常成熟的解决方案处理硬件故障,这样的故障通常会让没有部署虚拟化的系统崩溃。

2. 更安全

试想,如果一个部署了java虚拟机的手机系统把java stack和通讯栈运行在两个虚拟机上。那么即使应用程序管理部分被攻破了,也不会危险到通迅栈。对于恶意代码,虚拟机环境是一个大沙箱。

3. 更可靠

通过虚拟化可以把特权代码和一般代码分开,能够阻止和减少整个设备的故障率。

4. 易于管理和开发

即使是运行实行操作系统,你不要因为那些非常有限的管理功能就心满意足了。一个运行windows的负责管理功能的虚拟机能够运行图形介面的程序,方便了用户也方便了开发者。

5. 硬件虚拟化

VMM相当适合硬件虚拟化。它连同虚拟控制器一起动态的切分或者合并物理资源。对于大型的,分布式的嵌入式设备如路由器则可以在部署了虚拟化的情况下自由的切分或合并。Zausiu’s blog http://ykyi.net

6. 效率

单核世界已经快速离我们远去,即将消失在历史长河中。而大多数嵌入式软件没有充分利用多核或多处理机的优势。那么,虚拟化帮助系统充分利用嵌入式系统的性能。

7. 新特性

一些振奋人心的超酷特性,如:快照,实时迁移(live migration),External Hibernation能够加强嵌入式设备的可用性,且方便可级。

8. 法律问题

从商用专有代码连接GPL代码会被迫遵守GPL协议。而把GPL代码运行在虚拟机上就可以规僻GPL协议的约束了。

这篇文章译自: http://www.linuxplanet.com/linuxplanet/reports/6490/1 这八大理由中的很多条目我觉得没有说服力!

 

Linux的虚拟化技术 KVM 和 QEMU

Linux 2.6.20发布以后。一个称之为KVM的非常优秀的虚拟化框架加入了linux代码主干。KVM是Kernel-based Virtual Machine的首字母简写。这篇文章将在理论层面和实践层面都会简单介绍KVM是如何工作的。http://ykyi.net

简单的理论背景:
目前有几种虚拟化的方式。
其中一种称之为准虚拟化(para-virtulization)。使用准虚拟化的时候,为了达到虚拟化的目的,客户机系统必须被修改。修改后的客户机知道它运行在虚拟的环境中,与虚拟机管理程序(Supervisor)协同工作。这样的好处理较之全虚拟化,性能上有一定的优势。
另一种称之为全虚拟化(full virtualization)。使用这种技术则不需要修改操作系统。但相对于准虚拟化技术,全虚拟代技术牺牲了一些性能。因为没有客户机OS的参于,是非常困难得到很高的虚拟化效率的。但自从CPU产商在硬件层面推出虚拟化支持的时候,情况就不一样了。如Intel的VT,AMD的AMD-V虚拟化技术。KVM就是利用了CPU的虚拟化支持技术实现了。并且KVM作为linux内核的一个模块加载,天然继承了linux内核的诸多优势。基于KVM的虚拟机,被当成一个标准的Linux进程被Linux内核调度。这个KVM虚拟机看到的都是虚拟的硬件。对于一个标准的Linux进程,有两种运行模式:内核态和用户态。KVM给虚拟机进程加入了第三个模式:客户模式(guest mode)。而客户模式又有它自己的内核态和用户态。

KVM包括两部分组件:
1. 一个设备驱动程序用来管理虚拟化硬件。这个驱动是一个字符驱动,用来管理虚拟化硬件(for managing the virtualization hardware)。
2. 一个用户空间运行的模拟器。通常选择QEMU稍作修改。QEMU是由一个叫Fabrice Bellard的法国黑客写的。

KVM与QEMU实战,在linux下安装windows xp:

前期准备,需要安装KVM和QEMU.另外还有保证你已经编译了内核。
真正的安装超级简单。
第一步:# qemu-img create hda.img -f qcow 6G
第二步: # kvm -no-acpi -m 256 -cdrom winxpsp2.iso -hda hda.img -boot d

下面简单的解释下。
第一步创建了一个虚拟磁盘(实际上就是文件系统上一个文件而已,不过话又说回来,unix的哲学就是所有的东东都是文件。)这条命令选择了QEMU的写时复制策略。这使得这个文件会按需增长。所以一开始这个文件不会太大,以后随着你的虚拟xp占用的空间增大而增大。不过这条命令把大小限制到第大6G.
第二步:指定了win xp的镜像文件就开始安装啦!喔,这条命令使用了 -no-acpi 开关。据说acpi在QEMU中支持的不够好。不过我觉得问题应该得到解决了吧,所以也可以不用 -no-acpi。ykyi.net

于是就装好啦!真的非常简单啊~~
于是你就可以用这个虚拟的xp做一些你不愿意在真实OS上作的测试啦!或者使用只有在win下的软件。

转贴请注明出处 http://ykyi.net/2012/06/linux%E7%9A%84%E8%99%9A%E6%8B%9F%E5%8C%96%E6%8A%80%E6%9C%AF-kvm-%E5%92%8C-qemu/

Linux用两种信号量 Linux has two kinds of semaphore

面试中经常会考什么是信号量,对于linux,实际上有两种semaphore.

第一种是指一种IPC(Inter-process communication进程通讯)的方法。这种IPC是从Unix SYstem V时代开始的,System V发布时加入了三种IPC,它们是semaphore信号量,message queues消息队列,shared memory共享内存。

Linux中另一种Semaphore是内核用来同步的机制。在kernel中,semaphore通常当成一个二值信号量使用。获得信号量时有可能会睡眠,这样进程就会被调度开,放弃处理机;如果某段内核代码得到了一个信号量,这段代码还可以睡眠。这点不像spinlock,尝试得到spinlock会不停地忙等,得到spinlock后不充许睡眠。当然这个“不充许”不是语法层面的,而是应该被程序员遵守。否则整个系统的的性能就会被这代不遵守约定的代码毁掉了。

copyright ykyi.net

 

内核线程是什么东东 What is Kernel threads

有一些Unix内核,比如Solaris和SVR4.2/MP,被组织成一些内核线程。一个内核线程是一个执行上下文且可以被调度;这样的内核线程可能与一个用户程序相关联,也有可以只执行一些内核函数。上下文切换的时候,切换内核线程上下文的开销远比切换用户进程上下文的开销要小。因为内核线程通常共用一个地址空间。而Linux的内核线程则有不同。Linux的内核线程仅仅周期性的执行一个内核函数。而且,Linux内核进线程并不表示一个基本的可执行上下文。 zausiu's blog. http://ykyi.net

Some Unix Kernels, such as Solaris and SVR4.2/MP, are organized as a set of kernel threads. A kernel thread is an execution context that can be independently scheduled; it may be aasociated with a user program, or it may run only some kernel functions. Context switches between kernel threads are usually much less expensive than context switches between ordinary processes, because the former usually operate on a common address space. Linux uses kernel threads in a very limited way to execute a few kernel functions periodically; however, they do not represent the basic execution context abstractions.

十个选择Oracle Linux而不是RedHat企业版Linux的原因

Linux在当今基于云的解决方案中被普通采用。而Oracle Linux目前最完整的集成解决方案。它提供了高性能和高可靠性,却只是选择Redhat Linux的花费的1/7

http://ykyi.net 译!

原因一: Oracle Linux成本低:

Oracle Linux可以自由下载和部署。

对Oracle Linux的支持订阅(Support Subscription)非常简单且价格便宜。

支持花费(Support costs)不到Redhat的七分之一。

你不能够下载Redhat Ent Linux,除非你购买了Support Subscription。

而Redhat Ent Linux的订阅以及插件的价格都很贵。

Redhat Ent Linux的授权许可证非常的复杂。

 

原因二: Oracle Linux已包含管理工具。

Oracle Linux支持用户使用免费的Oracle Linux服务器的生命期管理工具,这个工具相当于Redhat的卫星服务以及相关模块。

同样的Oracle企业管理者工具也能被授权管理从应用到磁盘的整个解决方案。

而红帽的卫星服务器用户则需要分别为每台服务器都申请许可证。可想而知,花费要高很多。

 

原因三:Oracle Linux的高有效性。

Oracle Linux includes OCFS2 and Oracle Linux Basic and Premier Support subscribers have free access to Oracle Clusterware

Red Hat charges separately for add-ons that include clustering software for HA

FAQ: Oracle Clusterware for Oracle Unbreakable Linux

Oracle Cluster File System 2 (OCFS2)

 

原因四:Oracle Linux可免费下载源代码,二进制文件和堪误表

Oracle Linux installation media (DVD) are free to download, use and distribute

All source code, binaries and errata for Oracle Linux including both the Unbreakable Enterprise Kernel and the Red Hat Compatible Kernel are freely, publicly available

Red Hat Enterprise Linux cannot be downloaded unless you buy a support subscription

Download Oracle Linux

 

原因五:对Premier Backporting的企业级质量支持

Same level of 24/7 enterprise-class support as Oracle Database

Backport bug fixes are available between update releases without forcing customers to upgrade to the entire update release

Zero downtime updates with Ksplice

Various levels of support include business hours only

Red Hat forces customers to upgrade to the latest update release in order to apply only a few bug fixes

Need to re-boot for software updates and patches

White paper: Oracle Linux Support (PDF)

Data sheet: Ksplice (PDF)

 

原因六:高性能!

Oracle's Unbreakable Enterprise Kernel closely tracks the mainline kernel and offers customers access to the latest Linux innovations

The Unbreakable Enterprise Kernel is fast, modern, and reliable and delivers the following advantages over a Red Hat Enterprise Linux 5-compatible kernel:

More than 75% performance gain in OLTP performance tests

200% speedup of Infiniband messaging

137% faster solid-state disk access

Red Hat Enterprise Linux 5 (RHEL5) is using a four-year-old kernel, so customers using RHEL5 did not benefit from Linux innovations

Webcast: Get the Facts: Oracle's Unbreakable Enterprise Kernel

Webcast: Boost Your Performance with Oracle Linux Infiniband and RDS Improvements

Sun Blades and Oracle Linux Deliver Top SPEC CPU2006 Benchmark Results

Webcast: Eliminating Silent Data Corruption in Linux

 

原因七:易于部署。

To enable faster time to market for customers, Oracle provides documented best practices with Oracle Validated Configurations for Linux, which include recommendations on deploying pretested stacks of server, storage, drivers, networking components, Oracle Linux, and Oracle software in a physical and virtual environment

Oracle VM Templates offer pre-installed and pre-configured images of enterprise software running on Linux, eliminating the need to install and configure from scratch

Red Hat does not offer such a program

Red Hat does not adequately test with Oracle software

Webcast: Accelerate Your Linux Deployments with Oracle Validated Configurations

Webcast: Linux Configuration and Diagnostic Tips and Tricks

FAQ: Oracle Validated Configurations Program

 

原因八:已经集成多种实用工具和功能。

Oracle's Sun x86 servers come preinstalled with Oracle VM and Oracle Linux; support for Oracle Linux is already included with the Oracle Premier Support for Systems

Red Hat needs to partner with other hardware and software companies to offer full stack

Data sheet: Oracle Linux and Oracle VM-Ready x86 Sun Servers (PDF)

Data sheet: Oracle Premier Support for Systems (PDF)

Executive brief: Reduce TCO with x86 Systems and Oracle Linux (PDF)

 

原因九:Oracle Linux为在数据中心部署已经做了完整的测试。

Oracle makes significant investment in testing Linux internally, both in the development farm and Global IT

More than 80,000 hours of QA is run on Oracle Linux servers each day in our development farm

More than 42,000 servers run Oracle Linux supporting Oracle's Global IT

Red Hat does not test with Oracle Database and Oracle Applications

Podcast: Next-generation Data Centers: An Interview with Oracle Chief Information Officer and Senior Vice President Mark Sunday

 

原因十:Oracle Linux提供了全套解决方案。

10. Complete Solution with a Single Point of Contact for Support

Only Oracle offers a complete and integrated, applications-to-disk Linux solution (servers, operating system, database, and applications), including a single point of supporteliminating finger pointing among various vendors

Need to deal with numerous vendors for the solution and for support

 

怎么订阅Linux内核邮件列表

官方页面:

http://vger.kernel.org/majordomo-info.html

As of now, subscription support is not handled at the web!

从现在开始,订阅操作不在通过web方式操作啦。

All VGER list control activities (joining and leaving, that is) are handled via email server at address:

所以的VGER列表的操作都通过邮件的方式搞定。

majordomo@vger.kernel.org

All email sent to there must be TEXT/PLAIN, there can be no multipart messages, no VCARDs, nothing “fancy''. In presense of such things, Majordomo will very likely do wrong thing.

所以的邮件都必须以纯文本发送。不需要multipart message,不需要VCARD,不需要花哨的东东。如果你违反了,Majordomo系统就会出错。

When you send there email, do make sure that all of the email headers, both visible and transport level, have same addresses in them. People experience problems when for example “From:'', “Sender:'' and possible “Reply-To:'' headers present different addresses. The most common manifestation is complete silence from VGER!

你必须确定你发送的邮件的FROM, SENDER, REPLY-TO部分都是同一个邮箱地址.如果这几个地址不一致的话,系统很可能不给你任务回复信息。

You can test email delivery between you, and VGER by sending an empty test letter to: <autoanswer@vger.kernel.org>

你可以发送一个空邮件给 autoanswer@vger.kernel.org来测试一下。

## zausiu 译 http://ykyi.net ##

If you don't know how to use Majordomo, start with word:

如果你不知道如何使用majordomo,试下help命令。

help

as the message body — as the entire content of the message.

整个邮件内容只有一个单词:help
Majordomo does not care of what you use as “Subject:''.

Majordomo并不关心你的邮件主题。

Basic introduction is given below.

基本介绍如下:

A listing of all lists, and their archives at VGER's Majordomo.  邮件列表被分成各个部分,所有部分的列表见这个URL.


Very short Majordomo intro

Majordomo 的简短介绍

Send request in email to address <majordomo@vger.kernel.org>

发送邮件到 majordomo@vger.kernel.org

To subscribe a list (“linux-kernel'' is given as an example), use following as the only content of your letter:

要订阅一个列表时,以订阅linux-kernel为例,使用如下邮件内容:

subscribe linux-kernel

Like via this URL: "subscribe linux-kernel".

To get off a list (“linux-kernel'' is given as an example), use following as the only content of your letter:

退订时也很简单

unsubscribe linux-kernel

Like via this URL: "unsubscribe linux-kernel".

Indeed these commands have optional second parameter: your email address, but Majordomo has a tendency to become upset, and refuse to serve, if you use it, and your "From:"/"Sender:"/"Reply-To:" headers don't match with your real address. Less confusion is better, of course.

其实,这个命令还可以用可选的参数。但是majordomo很可能会出错。如果你使用参数,但是你的邮件头中的FROM,REPLY-TO不一致,就会出错了。越少麻烦越好呢,不是吗?

A listing of all lists, and their archives at VGER's Majordomo.


## zausiu 译 http://ykyi.net ##

Taboo things to be done when discussing at VGER lists

使用VGER列表的禁忌。

The Majordomo is configured with a set of filter rules which when triggered will send the email to "/dev/null".
(List owner actually, but they are overworked elsewere, and use "d" button usually…)

Majordomo配置了筛选规则,如果你违返了,就如果发信给/dev/null,你得不到任何回复。

列表的维护者非常非常忙碌,他们很愿意删掉与他们的工作内容无关的邮件。

  • Usage of HTML in email — even as an alternate format — is considered to be signature characteristics of SPAM. 绝对不要使用HTML邮件,即使作为可选的方式。这样的邮件会被当成是垃圾邮件.
    Ignore this at your own peril! 忽略下面的禁忌,后果自负!
  • A collection of phrases/keywords which appear commonly at those bloody SPAMs — in case it is a TEXT/PLAIN spam, and not HTML-SPAM…系统收集了一个在该死的垃圾邮件中经常出现的词汇的短语,如果你的邮件内容中也有,那么即使你发送的是纯文件邮件,也会被过系统过滤掉。
  • Message size exceeding 100 000 characters causes blocking. 邮件大小不可以超过100 000个字符。

See the actual Majordomo taboo expressions.

At the Linux-Kernel List FAQ you can see several other things which may cause your subscription to disappear.
去到FAQ查看更多在订阅和取消订阅时可能碰到的问题。

我的梦想.(卓越领导力三千字结课作业)

             我的梦想

 

虽然我的梦想没有马丁路德那么伟大,在我人生的每个阶段,我也有我的梦想。

 

读幼儿园之前和幼儿园时代,我的梦想是参军打仗,因为我看到的电视画面中的士兵很英勇,战争很吸引我。我要杀光所有坏人,保卫祖国!没错,小时候我的梦想竟然是要做一个血淋淋地杀人机器。现在想来真是不靠谱啊,歌舞升平的和平年代,打打杀杀什么呀?难道我要加入基地组织吗?或者去非洲参加雇佣军?

 

后来顺利进入小学了。虽然当时也没预见到以后国内会无仗可打,出国打仗也会毫无希望,但我确实果断放弃了以后要参军打仗的梦想。因为我突然发觉我更愿意以后做一名数学家!擦,数学家啊!!!吓死人咩!!!仅仅因为我喜欢做数学题,做同龄人做不出来的数学题,考试数学考高分,参加数学竞赛,老师表扬,同学羡慕。因些而得来了无限荣光和急剧增长的成就感,我当想就想了。以后我要成为数学家,天天解题!那时哥要是知道微积分,极数啊,场论啊,复变函数啊什么的长什么模样,我怎么会想当数学家啊!

 

进入中学后,数学不再仅仅是玩一些算术的小把戏了,曾经在小学时代鄙视用方程解应用题的我一度变得迷惑了,数学竟然还可以这样玩的呀。要做数学家的梦想慢慢地就被磨灭了。中学时代时要么不是想着放学后打电脑游戏,要么就是要准备升学考试或者各种什么什么考试了。我也就对未来梦想这种宏大飘渺的主题变得没什么兴趣。在三日一小考,一月一大考的中学生活中,考出好成绩,不用被父母老师骂才是最朴实最生动的梦想呀!

 

上到大学后,我的私人时间瞬间变得充足起来,使我有时间和精力构思对未来的梦想。在这个从少年成长到青年的关键时期,随着社会经历的慢慢丰富,梦想变得切实可操作了。大学时的梦想相当的务实,即是毕业后能像表哥那样成为一位出色的软件工程师。更具体一点,是游戏了开发工程师。现在回想,我那时真不知道架构师,工程师和码农的区别。言归正传,为了实现我小小的梦想,我在整个大学阶段确实非常用功地学习,很多同学晚上都在宿舍玩游戏,我仍然坚持去晚自习。毕业前已经写出了好几个在同龄学生中极具竞争力的PC游戏。所以,凭借我写的几个游戏作品,在大四时我毫不废力的找到了游戏开发的工作。我还记得刚到游戏开发公司上班时的兴奋心情。我想,这能算得上是实现了一个小小梦想吧。

 

但我的游戏开发的梦想很轻易地破灭了,而且经受的打击颇大。从那时我体会到一句话:当兴趣变成工作的以后,就大不一样了。现在回想当时对公司的失望以至对整个游戏开发行业的失望主要缘于自己的见识不够,不知道一家大型的游戏公司和小作坊型的游戏公司有相当大的差别。另外,在从学生到职业人的角色转变过程中相当地不适应。事实上,那时是有相当多的机会的呀!还有一个因素即是因为大学阶段因为在不恰当的时间帮助同学提高成绩,我的学位证被学校取消了。在毕业后的时间里,心里经常有一种失落时不时的跳出来,那就是有一天要回学校读完硕士,了结大学时没有学位证的心愿。在毕业后来到社会之中摸爬滚打的几年里,我渐渐形成了要创办自己的实业的想法。经过长年不间断的学习,我在IT技术上积累的技术已经相当全面。另外也从来没有间断过学习英语,英语水平一直在持续提高,生活阅历也更加丰富了。我的梦想,就是要有自己的实业,很可能是IT科技公司,再有其它投资组合,最终能让我实现财务自由。我把财务自由定义为,即使我每天睡大觉,我以前的劳动创造的各种盈利方式都能够帮我创造财富,带来现金流。实现财务自由后就可以做N多自己想做的事情啦!起码具备了周游世界的最基本的经济基础。在这个指导思想的指引下,我创办了一个小网站。半年后这个小网站开始盈利了,虽然很少,不过这正是我想要的Earning Machine的模型啊!即使我后来基本不去管网站,它也一直在给我创造经济收益。第一次拿到谷歌寄来的美金支票,非常开心!我做的是一个简单的粤语歌词网站,给歌词附上了粤语注音,用户点击后可以听到单个字的粤语读音。这样一个简单的网站每个月可以给我带来一百元左右的收入。我想,如果我能把流量括大一百倍,那每个月就轻松有一万元收账嘿嘿。仅仅就这个非常简陋的小网站来讲,我觉得把流量括大一百倍并没太大问题。因为我还没有围饶社交网络做推广,也没有给网站做用户体验,还有很多功能也没有做。而我观察的一个类假的相关网站的网络流量竟然是我的几百倍。我觉得如果投入时间就能超越它。但我没有继续做下去!不是我没有执行力,我不太想做WEB方面,我做做ARM嵌入式方面,我觉得在这方面一定会有更多更好的机会。

 

去年下半年又返学校读书了,明年六月能顺利毕业。届时就能完成本科时的小小心愿,某种程度上也算是圆一个小小的梦想。在中大读软工硕士的时间里,仍然疯狂地学技术和英语,并跟进日新月异的IT业界的新闻。脑子里基本上有一些想法,我还需要认识更多的高手,除了互联网领域肯定还有其它方面的创业方向。昨天晚上,与一位以前在毒霸时相识的老同事聊天。它是位出色的逆向高手,离开珠海后,他在广州与朋友创办了一家做网页游戏的游戏公司,撑了近一年经营不下去。于是他去了深圳腾讯做回逆向工程老本行,但他只在腾讯做了七个月又离职了,和朋友去上海二次创业,仍然做网页游戏。他说他离职的原因就是放不下他心中的梦想。其实我也一样。在人生的每个阶段,不间断地为实现心中的梦想而努力这应该是人生的部分意义吧。如今,我思考我与我的梦想的距离。我具备了很广泛的计算机知识,从硬到软,从网络到桌面到WEB到嵌入式,具备了相对不错的英文水平。但我还欠缺广泛的优质的人脉关系,这方面还需要不断的积累。今年下半年,我会找我感兴趣的方向的兼职,希望能认识一些优秀的朋友。我们之间分享信息和体会,互相为实现各自的梦想提供支持。

 

我非常希望能在四十岁前能实现财务自由梦想。虽然这样的想法听起来太多务实,还带着一点铜臭味。但我却也无需过多解释,每个人都能够理解。我是普通人,我只希望能给家人带来健康和幸福,希望有能力帮助保护我身边重要的人,所以我务实,而不是关注世界和平,关注拯救地球,关注消灭战争和贫困。

 

如果财务自由的梦想不能实现呢?于是我一直在工薪层卖不断出卖劳动力生活,终未能实现目标呢?虽然为了实现梦想,我们当然要付出百倍的努力,但成功往往不仅仅受制于主动的努力程度,也受制于客观的各种不可抗条件。所以,对于每一个心怀梦想的年轻人,我觉得都应该有良好的心态面对可能的失败。我会努力追逐我的梦想,但如果做不到,我觉得不能丢掉两样东西,一件是乐观的心态,另一件是健康的身体。这两件东西是能完成任何一个目标的最低配置。

 

如果我能及时实现财务自由我梦想。那我一定要开始我的周游列国之旅,还要认真学一门乐器,这才是真正的生命哈哈!在充分的实现的实现了自我价值的同时,我一定会把更多精力投入到回报社会中来。想想比尔盖茨的故事。比尔盖茨在今年年初《高端访问》节目上如此表示,我的新梦想是希望能够平等地对待生命,人们消除了偏见,让这个世界变得更加公平。希望20年后,我所提到艾滋病、疟疾、结核病等重大疾病都彻底的消失,让贫困国家的人民摆脱贫困,获得公平对待的机会。”很多富有的西方商界人士在功成身退后都会把很多精力用于经营慈善基金。这大概是因为基督教主张账富源于社会,又要回报社会。我不信仰基督教,我也不会有比尔盖茨那样成功,但我非常认同这样的普世价值观,我也会力所能及的回报社会。或许我可以做义工,也可以资助贫困地区的教育。

 

希望我能有幸实现我的一个又一个梦想!

 

()

 

想钱想疯了.

昨晚梦见自己开了一辆敞篷跑车~~

好奇怪呀。我从来都对小车不感兴趣呢。
三年前。珠海。与我同一天生日的一个好同事也离职了,准备去上海。
他说:“我要买辆兰博基尼”。
我居然不知道兰博基尼是什么。~~
好久之前就想:我要创造出好几个Earning Machine。于是不管你到处游玩,做各种自己想做的事情,Earning Machine都会自动给你带来收益。啊哈哈哈~~自由啊!!!在这一指导思想下,确实实现了一个小小的试验性质的小案例,称之为Earning Machine Version I,但实在实在太少收益了。多次考虑过增强这个版本,但要投入太多时间,更有说服力的原因是在这个过程中积累的技术经验是我不感兴趣的方面。我还是面向技术的思维方式啊!
学校的生活令我相当地满足呢,除了经常想到持续减少的银行账户余额,感到严重没有安全感。
这种不安是我疯狂看书的动力之一。我迫切希望快点完成读书的计划,在下半年再回到社会,找个工作,认识一班新朋友,或许能够有更多的思路实现Earning Machine Version II。
之前还想,如果读博士学位,成为某个方面的资深专家,能不能把读博时的成果转化成巨大的经济收益呢?我问Dr. Woo,你能把你的学术成果转化成真金白银吗?Dr. Woo说现在很难。
两三天前,广州好热好热。我以为夏天到了,于是把被子收了起来,铺上凉席。结果当天晚上就下雨又天冷了。靠~~连续三天五早晨时被冻醒,于是穿多件衣服睡,其实也满舒服的!!!应该再过几天又会很热了~~
哎。时间资源实在太有限了。我下载了The Secret的英文原版打印出来了,才看了不到15页。买了笛子入门基础书,看了不到5页,有些东西看不懂。
还有一个月就要考BEC高级了,希望自己能通过。应该能够通过吧~~我想!!!所以,暂时英语优先级最高分到最多时间资源,专业技术优先级其次,其它事情就放放吧~~~
虽然阴沉沉地下着雨,去图书馆的路上却心情非常不错,因为觉得很满足,我在做我想做的事情!