按月归档:2012年九月


java程序的运行机制详细分析

JVM(Java虚拟机)一种用于计算设备的规范,可用不同的方式(软件或硬件)加以实现。编译虚拟机的指令集与编译微处理器的指令集非常类似。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。        Java虚拟机(JVM)是可运行Java代码的假想计算机。只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行。 1.为什么要使用Java虚拟机        Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。 Java运行机制 Java程序的运行必须经过编写、编译、运行三个步骤。 编写是指在Java开发环境中进行程序代码的输入,最终形成后缀名为.java的Java源文件。 编译是指使用Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件,这不像C语言那样最终生成可执行文件。 运行是指使用Java解释器将字节码文件翻译成机器代码,执行并显示结果。这一过程如图1.1所示。

Linux System Monitorng 笔记

概念 : 性能优化就是找到系统处理中的瓶颈以及去除这些的过程 ———————————————————————————————————-如何查找出系统性能问题:                                                           ___I/0应用型(Dbserver)1.确定应用类型: |___                   CPU(运算)应用型(例如:webserver,mailserver) 2.确定基准线统计 :建立一个用来比较的准线标准 ———————————————————————————————————-系统高负载的问题:大量的页调入请求导致内存队列的拥塞 网卡的大吞吐量可能导致更多的 CPU开销 大量的CPU开销又会尝试更多的内存使用请求 大量来自内存的磁盘写请求可能导致更多的 CPU 以及 IO问题 ……………………………………………….CPU…………………………………………. 概念:CPU 利用率  : 就是定义CPU 使用的百分比 User Time   : 在user space中被执行进程在CPU 开销时间百分比 System Time : 内核线程以及中断时间 Wait IO     : I/O 请求等待时间 Idle        : 空闲 ———————————————————————————————————- 性能指标: 每次内核的上下文切换,资源被用于关闭在CPU寄存器中的线程和放置在队列中.系统中越多的上下文切换,在处理器的调度管理下,内核将得到更多的工作. 一个标准的Linux 内核可以运行50 至 50,000 的处理线程 当运行队列越来越巨大,进程线程将花费更多的时间获取被执行 系统 load 就是指在CPU 队列中有多少数目的线程,以及其中当前有多少进程线程数目被执行的组合.如果一个双核系统执行了2个线程,还有4个在运行队列中,则 [...]

perl时间函数与日志分析脚本

#!/usr/bin/perl #————————————–# # Script Name: AccessLog.pl # # Writer by : Tat # # Create time: 2012-03-27 # # Last update: 2012-03-30 # # Ver: 0.1 beta # #————————————–# use strict; use warnings; #———-数据统计变量—————- my $sum = 0; #总日志数量 my $code5 = 0; #Http 500错误页 my $code2 = 0; #Http 200页 my $tophome=0; #进入主页数据 #———-条件匹配变量————— [...]

高仿快乐麻花源代码

程序采用DEDE5.7内核。  整站打包,带安装教程。 在淘宝上买的,现在用不上,共享出来。   下载地址