- 博客(11)
- 资源 (4)
- 收藏
- 关注
Erlang虚拟机源码阅读笔录(四)虚拟机的进程创建
4. Erlang虚拟机的进程创建在第三节中我们分析了Erlang虚拟机的进程调度和指令集(threaded-code)的执行过程,这一节我们分析Erlang虚拟机的进程创建过程。首先,创建一个需要调用内建函数(BIF)erlang:spawn或者spawn_opt,spawn_link等,这里我们分析spawn函数的调用过程。所有spawn函数最后都会调用spawn/3这个BIF,这...
2013-04-10 11:46:03
234
Erlang虚拟机源码阅读笔录(三)虚拟机的进程调度
3. Erlang虚拟机的调度在这一部分中我们来重点分析Erlang虚拟机的调度策略。由第一分部的介绍可以得知,在ERTS_SMP模式中,erl_start()函数在创建好第一个进程后最后调用的两个函数分别为erts_start_schedulers()和erts_sys_main_thread()。在单核模式下,erl_start()函数在调用set_main_stack_size(...
2013-04-10 11:43:47
416
原创 Erlang虚拟机源码阅读笔录(二)虚拟机的指令集
2. Erlang虚拟机的指令集在具体分析erlang进程的调度和执行过程前,我们需要简单的了解下erlang虚拟机的指令集的几种形式。2.1. Erlang程序的内存结构 Erlang程序beam文件是需要虚拟机解释执行的字节码文件,因此Erlang的进程结构不同于普通的操作系统进程,Erlang的所有进程数据包括代码,堆栈结构都是存放在数据区里,Erlang进程并没有普通...
2013-04-10 11:37:16
228
原创 Erlang虚拟机源码阅读笔录(一)虚拟机的启动
去年在北京一个互联网公司实习,当时项目组需要使用和erlang相关的东西,然后给我一个任务,和另外两个同事一起阅读erlang虚拟机的源码,然后给老大写一份报告,我主要阅读的是启动,指令,进程创建以及调度这块的代码。阅读笔记是早就写好了,却一直没有同步到博客上,本来自己资质尚浅,笔记里面也有诸多错误;再则这份阅读笔录也不是完全原创,也借鉴了诸多大牛和官网上的东西。到现在突然想将其开放到博客上,...
2013-04-10 08:31:59
476
原创 守住繁华,需耐得住寂寞
博客好久没更新了,一直说自己要坚持写博客的,却老是觉得自己很忙,鲜有更新这上面的东西。确实挺忙的,从大方面来说,事情都重叠到一堆了,烦心事天天有,总觉得时间不够用,想放个长假,什么事都不去想,也不去管,就尽情的玩。但话说回来,却又总有很多时候,一些零零碎碎的时间里,总是什么都不想做,一遍一遍的刷着QQ空间,刷着人人,刷着微博,闲出空虚,闲出寂寞愁来了,但博客还是没坚持写下去。所以说到底...
2013-04-04 12:18:42
310
原创 (转)怎样理解操作系统中“栈”的概念
从CPU角度来说的栈指的是CPU有个积存器SS,这个寄存器的低16 bit连同ESP一同指向下一次堆栈操作(push和pop)所要使用的堆栈地址。这个寄存器也可以被装入任意数值,你可以通过入栈和出栈操作来给他赋值,不过由于堆栈对于很多操作有很重要的意义,因此,不正确的修改有可能造成对堆栈的破坏。////////////////////////////////////////////////...
2012-05-14 20:13:06
186
原创 C++中的一个小问题
先看下面一段代码: 1/******************************************* 2 * Author: Leslie Wei 3 * Created Time: 2012年04月22日 星期日 21时35分58秒 4 * File Name: nullObj.cpp 5 * Description: 6 * @Copyright ...
2012-04-22 22:23:49
121
原创 Memcached和Mysql数据存储测试对比
昨晚写了个关于Memcached和Mysql的数据存储与读取的数据对比,然后让服务器跑了一晚上,一直担心把电脑跑崩溃,还好没有,测试结果和预测的差不多。 测试的平台是Memcached-1.4.13和MySql-14.14; 访问数据库工具是iBatIS+JDBC; 操作系统CentOS6; CPU:Pentium(R) Du...
2012-04-11 21:28:37
151
转载 怎么样编写高性能的C++程序
良好的代码风格是编写高性能程序的技术,下面是本人在做程序性能提高工作中总结的几点小知识,希望与大家一起分享:在文件或函数的头部定义变量,虽然C++可以随意定义变量,但头部定义变量有两点好处:首先便于阅读,第二就是可以根据变量的类型来调整顺序,从而方便CPU的处理考虑字节对齐,实际上面的第二点也就是这个问题。有个地方需要注意字节对齐:一是定义结构或类成员的时候,二是在传递参数的时候,三就是临
2012-03-10 22:04:12
301
转载 (转)影响网络应用程序性能的因素
随着网络的发展,越来越多的应用程序需要依赖于网络,所以网络的性能直接影响到我们应用程序的性能。那么都有那些因素影响到网络程序的性能来?我们以Windows平台上的应用程序来分析,首先将影响因素分为两个部分:基础网络部分,应用程序的网络驱动部分。基础网络部分指物理的网络结构和链路,主要有下面几个方面的因素:网络的速率和带宽。这是一个根本的问题,如果网络的基础设施不够快的话,那么其他都
2012-03-10 22:02:39
349
C++面向对象网络编程实例
2012-09-04
MyEclipse9.0 M1安装jadClipse反编译插件
2012-02-29
RHEL6下安装gstreamer-plugins-ugly的依赖包
2012-02-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人