`
文章列表
       随着微软宣布发布了asp.net vNext,新版本可以在windows、linux、mac三大平台上运行。mono的命运也越来越受到关注,mono是用c语言写成的一个dotnet的一个跨平台实现,已经存在了约14年之久,mono的命运究竟会如何呢?是会跟微软在非微软平台平分秋色,还是默默的淡去,还是会跟微软联姻,做大做强呢?        微软是靠PC业务起家的,其主要营收来源是windows和office。随着web和移动的迅速的发展,微软的地位一度受到挑战,新的CEO上任后,微软确立了“云为先、移动为先”的发展战略,不再单独的靠只能在windows上运行C#,来“绑架“ ...
今天将博客搬家到了csdn,新地址 http://blog.csdn.net/campolake
       Jetty在启动时,先启动Server,调用jettyserver的父类 HandlerWrapper的dostart方法,启动handler,handler是一个HandlerWrapper,总共包含8个Handler,循环调用Handler的start方法,启动各个Handler。         其中XX,负责解析webapp的基本信息,解析web.xml,并将信息保存到实体中。然后调用WebAppContext 的doStart 启动,  记载和调用在web.xml中解析并已经加载的所有Listener的contextInitialized 方法,启动listener ...
今天碰到了一个问题,asp.net应用中双机的一台间歇性的出现cpu占用率100%的情况,而另外一台基本稳定在50%以下较为稳定,初步的跟其他工程师沟通,程序中没有复杂的算法和很深的循环等。 下面记录下简单的分析过程: 1、应用做了基于F5负载均衡,另外一台cpu占用比较低而且稳定证明并发并不是很高。 2、在并发不高,没有复杂算法的前提下,初步断定不是gc时产生的压力,而且cpu占用率较高时应用访问并没有较为明显的停顿。 3、同时监控web的cpu,db的cpu和网络访问性能,发现cpu较高时DB的压力并不大,基本稳定在50%左右,但是较高的给CPU峰值过后,会出现网络的流量的峰值, ...
     写道 Linux内核源代码位于/usr/src/linux目录下,其结构分布如图1.3所示,每一个目录或子目录可以看作一个模块,其目录之间的连线表示“子目录或子模块”的关系。下面是对每一个目录的简单描述。include/子目录包含了建立内核代码时所需的大部分包含文件,这个模块利用其它模块重建内核。init/ 子目录包含了内核的初始化代码,这是内核开始工作的起点。arch/子目录包含了所有硬件结构特定的内核代码,如图1.3,arch/ 子目录下有i386和alpha模块等等。drivers/ 目录包含了内核中所有的设备驱动程序,如块设备,scsi 设备驱动程序等等。fs/ 目录包 ...
 类加载:    实现机制: Java instanceof 关键字是如何实现的?  请教一个share/vm/oops下的代码做fast subtype check的问题   GC:  并发垃圾收集器(CMS)为什么没有采用标记-整理算法来实现?   内存分配:   并发:   调优: http://www.joelonsoftware.com/articles/LeakyAbstractions.html  逃逸分析 http://www.zhihu.com/question/27963717/answer/38871719 jls: http://do ...
转自; http://zhidao.baidu.com/link?url=g-JOZq5QK1MYHJU69l-n7dplQtu0h9bJU4J8dqdvTH-y-ymTqBPzga_uMJ5Dm900cwUIJ_mxEToMgskpPQoj53S8oJut-w0rMNwwt_VfvNa   以一个生活中的例子来解释.假设你在大学中读书,要等待一个朋友来访,而这个朋友只知道你在A号楼,但是不知道你具体住在哪里,于是你们约好了在A号楼门口见面.如果你使用的阻塞IO模型来处理这个问题,那么你就只能一直守候在A号楼门口等待朋友的到来,在这段时间里你不能做别的事情,不难知道,这种方式的效率是低下 ...
1:首先需要安装tclsh 从http://tcl.tk/software/tcltk/download.html下载合适的版本安装 2:安装neteans 3:从已有代码新建c项目,调试即可。 为了很好的了解sqlite的功能,我们最好就是从源码入手: sqlite 整体结构: 1: open_db() -sqlite3_initialize() --sqlite3_open() ---openDatabase() ----初始化sqlite sqlite3Malloc()        

mono系列1 MSIL解析

    博客分类:
  • mono
       .net中间代码为MSIL,C#的静态编译就是把C#代码编译为MSIL的过程,要想了解编译过程,那么必然要先理解MSIL,以及DLL和exe的格式。
首先复习一下go的基本语法1:变量定义val 变量 变量类型 val v1 int val v2 string val v3 [10]int //定义一个int10的数组 val v4 map[string] string //定义一个字典 key为string value也为string val v5 func(a int) int //v5指向一个函数  可以更简单一些,根据数据推断类型,如下: v6 := 90 v7 := "hello china"  匿名变量  _,_,name := GetName()    如果调用一个方法返回多个变量 ...
今天在rhel 6.5上用源码安装R语言,遇到了一些问题,记录一下备忘: Linux RHCE6.5 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux   1:需要安装的包 gcc  gfortran readline libpng  由于rhel没有注册,所以不能用redhat官方的yum源头,我就用rpm包的方式安装 wget ftp://rpmfind.net/linux/centos/6.5/os/x86_64/Packages/gcc-gf ...
在centos6.5上编译openjdk7 第一步:查看当前os版本: uname -a Linux centos65 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux  第二步:环境准备: 1.首先去 这里 http://download.java.net/openjdk/jdk7/ 下载OpenJDK7的源码zip包 2.安装需要的包 sudo yum install cups-dev unzip zip freetype cmake gcc 3 ...
  1:大对象可以直接进入old区,多大的对象?大于eden区的剩余空间的对象直接进入old区域。 -Xms20M -Xmx20M -Xmn10M -XX:SurvivorRatio=8   eden区8M,from和to各1M,old区10M,总共20M的空间 用参数-XX:PretenureSizeThreshold=3145728
        lua的虚拟机是基于寄存器的,我们所了解的虚拟机中大部分是基于堆栈的(包括c#、python、jvm等),android的davik虚拟机是基于寄存器的,那么基于寄存器和基于堆栈的虚拟机有什么区别和优缺点呢?     
        打算建一个独立到博客玩玩,这2天考察了github和WordPress。github感觉不太像一个博客,感觉是静态网站,感觉管理和使用不太方便,虽然有版本管理到功能,感觉还是太麻烦了,评论功能使用起来也不爽。WordPress有现成的模板,对与我这种没什么页面设计能力到人太方便了。评论功能也不算差。       第一步开始找托管的空间,在 一峰 大哥到blog当中了解到了redhat的OpenShift 。以前一直对redhat有好感,上学的时候接触到第一个linux操作系统就是redhat9,在那个朦胧的年代,对这个公司充满了崇拜。这是一个支持云的平台大概了解了下,他支持 ...
Global site tag (gtag.js) - Google Analytics