- C语言函数调用底层实现原理
Real返璞归真
C语言CTFc语言网络安全
前言C语言程序执行实质上的函数的连续调用。运行程序时,系统通过程序入口调用main函数,在main函数中又不断调用其它函数。程序的每个进程都包括一个调用栈结构(CallStack)。调用栈的作用:传递函数参数保存返回地址临时保存寄存器原有值(保存现场)寄存器分配寄存器指CPU中可以进行高速运算的缓冲区。用于存放程序执行中用到的数据和指令。Intel32位结构寄存器(IA32)包含8个通用寄存器,每
- IA-32汇编语言笔记(10)—— 子程序设计
云端FFF
#汇编语言IA32汇编
记录汇编语言课笔记,可能有不正确的地方,欢迎指出教材《新概念汇编语言》——杨季文这篇文章对应书第二章IA32处理器基本功能3.5部分文章目录一、子程序设计要点二、子程序设计举例三、子程序调用方法(1)调用指令1.分类2.段内直接3.段内间接4、函数指针(2)返回指令1、分类2、段内返回不带立即数3、段内返回带立即数四、示例一、子程序设计要点两种传参方法寄存器堆栈调用约定决定了到底怎么传参,在C语言
- cpu处理器ARM架构和amd架构
2301_79479951
ARM和amdarm开发架构
cpu处理器ARM架构和amd架构arm架构:arm64架构/aarch64架构/AArch32架构(苹果M1,M2)amd架构:x86架构/x86_64架构/amd64架构/x32/x64架构/i386架构/IA32架构(Intel系列电脑处理器,苹果旧版电脑系统)windowd电脑查看:`我的电脑`->`属性`->`处理器`Linux(mac)电脑查看:uname-a当你下载软件的时候就可用到
- Intel IA32 PC 体系简要指南
iihero
个人随笔asm汇编
由于摸索一些底层的东西需要,直接forward内容如下。以备不时查阅。KaiLi,PrincetonUniversityFirstdraft,1999Revised20031IntelIA32Processors1.1Modes1.2RegisterSet1.3Addressing1.4ProcessorReset2AssemblyProgramming2.1InstructionSyntax2.
- x86-64和IA32的主要区别
Faldict
学习笔记
1、指针和长整数是64位长。整数算术运算支持8、16、32和64位数据类型。2、通用目的寄存器组从8个拓展到16个3、许多程序状态都保存在寄存器中,而不是栈上。4、如果可能,条件操作用条件传送指令实现,会得到比传统分支代码更好的性能5、浮点操作用面向寄存器的指令集来实现,而不用IA32支持的基于栈的方法来实现
- CSAPP第4章:RISC和CISC指令集
暮色_年华
体系结构
RISC和CISC指令集IA32被称为复杂指令集计算机(CISC),与精简指令集计算机(RISC)相对。从历史上看,先出现了CISC机器,计算机不断发展使指令集非常大。RISC设计理念在80年代早期发展,使用更简单的指令集产生高效的代码。许多加到指令集中的高级指令很难被编译器产生,并且这些指令很少被用到,一个简单的指令集可以很少的硬件实现,能以高效的流水线组织起来。CISC和RISC比较:(1)C
- x86-64汇编:基础语言
莱尼布鲁斯
反汇编指针
文章目录访问信息操作数指示符数据传送指令压入和弹出栈数据加载有效地址(loadeffectiveaddress)指令算术和逻辑操作乘除运算总结自《深入理解计算机系统》第三版访问信息x86-64的CPU包含一组16个存储64位值的通用目的寄存器,用于存放整数和指针。注意:生成1字节和2字节数字的指令会保持剩下的字节不变生成4字节数字会把高位4个字节置位0,作为从IA32的扩展部分操作数指示符操作数类
- 二 机器指令 (course 5-9)
西部小笼包
https://www.cs.cmu.edu/~213/lectures/05-machine-basics.pdf从8086到Corei71978年,Intel发布了第一款x86指令集的微处理器——Intel8086[1],以此拉开了Intelx86系列发展的序幕。8086是16位微处理器,主要为IBMPC和DOS设计,有1MB的地址空间。八年后的1985,第一个32位Intel处理器(IA32
- IA32 多任务调度与 RTOS 微内核设计开发
东南第一美男子
一、基础编程实验1:IA32多任务运行管理程序设计1.开发环境配置与源程序架构简单分析1)硬件环境2)软件环境3)源程序架构分析2.IA32多任务运行调度和任务间通信的基本原理1)IA32多任务运行调度2)任务间通信3.任务指示器和指示结果4.内核分时优先级调度修改方案二、基础编程实验2:多任务微内核OS构建编程开发1.Vmlinux微内核程序开发工作原理2.微内核程序的理解,工程/项目模块结构分
- 汇编速查-IA32指令系统
xcy6666
汇编速查汇编
1数据传送指令格式:MOVXsource,destinationX:L32位值W16位值B8字节MOVL%EAX,%EBXMOVW%AX,%BXMOVB%AL,%BL使用规则,mov只有以下13种情况情况举例立即数==>通用寄存器movl$0,%eax立即数==>内存位置movl$100,value通用寄存器==>通用寄存器movb$al,%cl通用寄存器==>段寄存器movl%edx,%cs通用
- C++ 反汇编简要
落樱弥城
c++基础知识c++开发语言
摘要:本文主要描述x86_64机器中C++代码在汇编中的具体代码。 关键字:cpp,IA32,asm 注意:本书假定你拥有基本的C++软件开发能力,能够理解基本的C++代码。并且熟悉汇编代码,了解基本的取址模式并且熟悉IA32指令集(文中会对IA32的部分指令集进行描述,但是不会过于详细的深入)。1前言 C/C++都需要经过编译器变成对应的机器码,通常编译器对程序员是个黑盒子。有些时候我
- 第3章“程序的机器级表示”:使用 GDB 调试器
明朗晨光
#深入理解计算机系统GDB
如下表格中给出了一些GDB命令的例子,在使用机器级IA32程序时,会有所帮助。先运行OBJDUMP来获得程序的反汇编版本,是大有益处的。示例都是基于对文件prog运行GDB的。使用如下的命令行来启动GDB:unix>gdbprog通常的方法是在程序中感兴趣的地方附近设置断点。断点可以设置在函数入口后面,或是设置在一个程序的地址处。在程序执行过程中,遇到一个断点时,程序会停下来,并将控制返回给用户。
- 概念整理ia32/x86/amd64/ia64/arm64
jrglinux
基础概念
x86早期,1980s年代,x86一般指当时的处理器8088和80286,不过这两个处理器都是16位的。如今,x86通常指32位指令集架构的处理器,比如80386。80386处理器是intel在1985年实现的第一款32位指令集架构的处理器,又叫i386,IntelArchitecture,32-bit,缩写为IA-32,现在,IA-32一般又能引喻成所有的支持32位计算的x86架构。按照发展历史
- Java并发编程概述
gregoriusxu
计算机缓存体系字:一个word的意思,IA32中指的是16位,块:是一个固定大小的信息包,在高速缓存和主存之间来回传送。块包含32~64个字节。所以内存中只是信息,成为块行:高速缓存中存储块已经其他信息的容器。所以,行总是一个块的大小,通常“行”和“块”可以互换使用。结合上图高速缓存既有块和其他信息,称之为“行”组:是一个或者多个行 由于CPU和主存的处理速度上存在一定差别,为了匹配这种差距,提
- arm 交叉编译找不到so_交叉编译v8时,提示找不到libstdc++.so.6里面GLIBCXX_3.4.20版本的某个符号...
DR阿福
arm交叉编译找不到so
host:ubuntu12.04,gcc4.6,glibc2.15target:x86,ia32,gcc4.9,glibc2.20编译v8的时候,先编译host程序,然后用host程序产生一些文件,最后再编译target程序。这里提示运行host程序mksnapshot时,找不到libstdc++.so.6里面GLIBCXX_3.4.20版本的某个符号:CXX(target)/disk7/shuy
- 虚拟化学习笔记四——硬件辅助CPU虚拟化技术VT-x
jianghuliu
虚拟化
系统虚拟化的核心任务是CPU虚拟化,本篇博客主要介绍kvm中采用的cpu虚拟化技术。硬件辅助CPU虚拟化技术——VT-xIntelVT中的VT-x(IntelVirtualizationtechnologyforx86)技术扩展了传统的IA32处理器架构,为IA32架构的处理器虚拟化提供了硬件支持。VMX操作模式VT-x引入了两种操作模式,统称为VMX操作模式。1.根操作模式:VMM运行所处的模式
- 操作系统之GDT和IDT(三)
ffiirree
操作系统操作系统架构
一、CPU的工作模式(寻址方式)说GDT需要从CPU的工作模式开始说,在IA32架构(或称i386、X86-32或X86架构)下,CPU有多种工作模式:实模式和保护模式。CPU复位(reset)或加电(poweron)的时候以实模式启动,处理器以实模式工作。在实模式下,内存寻址方式和8086相同,由16位段寄存器的内容乘以16(左移4位)当做段基地址,加上16位偏移地址形成20位的物理地址,最大寻
- 自己动手写操作系统学习笔记1
会说话的小鱼
操作系统操作系统sharpui界面duigdi
序言首先,在自己动手写操作系统这本书中,很多图和章节都可以在IA的架构说明书中找到相应的原型,而且几乎是一模一样,有兴趣的可以去看看IA32架构的说明书手册,共有三册。不过,在这里,这本书作者把操作系统的相关东西组织得不错,说这些,只是让读这本书的人有一种平和的心态去学习操作系统。因为他没有我们想象的那么可怕,因为书中的大部分内容在网上都已查阅得到。当然要系统掌握好这些东西这要有良好的计算机系统知
- 如何搭建自己的开发环境
博文视点
unixwindows正则表达式debian工具linux
如何搭建自己的开发环境好了,到这里相信读者已经知道如何搭建自己的开发环境了,说白了它跟开发一个普通的软件区别基本就在一个虚拟机上。它既是我们的“硬件”,又是我们的调试器,有了它我们安心多了。那是不是马上就可以开始我们的操作系统开发之旅了呢?很遗憾,还不能那么着急,因为你知道,操作系统是跟硬件紧密相连的,如果想实现一个运行在使用IA32架构的IBMPC上的操作系统,免不了要具备相关的知识。其中的重头
- 计算机系统汇编语言和机器语言深入理解
目录引言1、机器语言2、汇编语言3、高级语言总结引言《深入理解计算机系统》第三章——程序的机器级表示。作者首先讲解了汇编代码和机器代码的关系,阐述了汇编承上启下的作用;接着从机器语言IA32着手,分别讲述了如何存储数据、如何访问数据、如何完成运算以及如何进行跳转。通过这些步骤,又告诉了我们分支语句、循环语句是怎么完成的,函数调用、栈帧结构以及递归过程。最后能通过编译器产生的汇编代码表示,我们要了解
- 第4篇:戏说程序栈-栈帧
铁甲万能狗
本篇详细讲解有关IA32约定中的程序栈帧,我栈顶到栈底的方向逐一回顾一下。sss5.png当前栈帧从栈顶到栈底如下构成创建的参数表为要调用的函数建立的参数局部变量:即在函数内部声明的变量(如果有)保存的寄存器的上下文(如果有),当被调用函数返回之前,为调用者函数恢复原来的寄存器中的数据,如果当前架构有足够的空闲物理寄存器可供使用,一些寄存器信息可能不需要压入栈。旧的帧指针,即前一栈帧的ebp指针*
- 深入浅出MIPS 四 MIPS的异常与中断
坚定而果敢的五岳散人
嵌入式
MIPS的异常和中断,同其他体系结构,例如Intel的IA32架构下的中断/调用门/陷阱机制类似,其目的主要有三:一,提供一个合法地从用户态到内核态的切换通道,使得程序能够访问如CP0、KSeg等平时被保护的资源;二,处理一些非法的操作,如TLBMiss/AddressError等;三,处理外部和内部的中断。与IA32架构区别的是,所有的中断均来自0号Exception。《SeeMIPSRun》中
- MIPS存储管理
弦苦
嵌入式开发
一.虚拟地址空间地址空间的最大长度与实际可用的物理内存数量无关,因此被称为虚拟地址空间(VirtualAddressSpace)。这个虚拟地址空间的大小是由计算机的硬件平台决定的,具体来说是由CPU的位数决定的。硬件决定了地址空间的最大理论上限,即硬件的寻址空间大小,比如主流的32位处理器(IA32,MIPS,ARM)等能寻址2^32B,即4GB的大小的地址空间(0~0xFFFFFFFF)。Lin
- nodejs内置模块os-操作系统模块
意外金喜
nodejsnodejs开发node.js开发
此模块版本为4.Xos.EOL定义操作系统一行结束的标识的常量os.arch()返回操作系统CPU架构,可能的值有"x64"、"arm"和"ia32"。os.cpus()返回一个数组对象,包括CPU的型号,速度,时间等os.endianness()返回CPU的字节序,可能的是"BE"或"LE"。Littleendian:将低序字节存储在起始地址Bigendian:将高序字节存储在起始地址os.fr
- 山东省人力资源和社会保障厅容灾及备份项目要求
weixin_33912246
A4包技术指标要求编号货物名称招标要求的技术指标数量1操作系统国产品牌。1、支持POSIX,LSB3.1标准;2、符合CGL3.2标准;3、符合GB18030-2000国家汉字标准,并提供GB18030标准的符合性检测证书;4、产品进入信息产业部“政府正版软件推荐产品目录”;5、操作系统要求具有良好的中文环境;6、支持IA32、IA64、X86-64、IBMpSeries架构的服务器硬件平台,具有
- 在 64 位系统下安装 32 位 electron
xdhc304
前端
直接npm安装
[email protected]配置.npmrcarch=ia32registry=https://registry.npm.taobao.org配置package.json{"config":{"arch":"ia32","registry":"https://registry.npm.taobao.org"},"devDependencie
- i386平台和x86-64平台机器代码的区别
weixin_30492047
i386平台和x86_64平台机器代码的区别ByQianghaohao说明:在此i386(IA32)指的是Intel32位处理器上硬件和GCC代码的组合.x86_64指代在AMD和Intel的较新的64位处理器上运行的硬件和GCC代码的组合.x86-64代码与i386机器生成的代码有极大的不同.主要内容如下:1.指针和长整型数是64位长.整数算术运算支持8,16,32,和64位数据类型.2.通用寄
- 【Linux学习笔记】栈与函数调用惯例—下篇
slvher
Linux
栈与函数调用惯例(又称调用约定)—正篇在前篇笔记的基础上,本文继续介绍栈与函数调用约定的相关内容。1.函数调用的栈帧结构IA32程序用栈来实现函数调用。机器用栈来传递函数参数、保存返回地址、保存寄存器(即函数调用的上下文)及存储本地局部变量等。为单个函数调用分配的那部分栈称为栈帧(stackframe),栈帧的边界由2个指针界定:寄存器%ebp为帧指针(严谨的说法是,帧指针存放在%ebp中),指向
- 寄存器的使用惯例和调用过程的栈
古幽风琴
c
一、寄存器的使用惯例IA32为例子,%eax,%edx,%ecx-----调用者保存的寄存器值(覆盖)%ebx,%esi,%edi------被调用者保存的寄存器值(先保存,压栈,返回前恢复)例子:intp(intx){inty=x*x;intz=Q(y);returny+z;}p:调用者Q:被调用者那么在这里我就想讨论一下,这里的y在哪里存储:方式一:存在p自己的栈中,当Q返回时,直接就可以找到
- CSAPP 关于数据对齐
caipengxiang
CSAPP
强制对齐的对于大多数IA32指令来说,保持数据对齐能够提高效率,但是它不会影响程序的行为。另一方面,如果数据未对齐,有些实现多媒体操作的SSE指令就无法正确地工作。这些指令对16字节数据块进行操作,在SSE单元和存储器之间传送数据的指令要求存储器地址必须是16的倍数。任何试图以不满足对齐要求的地址来访问存储器都会导致异常(exception),默认的行为是终止程序。因此IA32的一个惯例是,确保每
- Java常用排序算法/程序员必须掌握的8大排序算法
cugfy
java
分类:
1)插入排序(直接插入排序、希尔排序)
2)交换排序(冒泡排序、快速排序)
3)选择排序(直接选择排序、堆排序)
4)归并排序
5)分配排序(基数排序)
所需辅助空间最多:归并排序
所需辅助空间最少:堆排序
平均速度最快:快速排序
不稳定:快速排序,希尔排序,堆排序。
先来看看8种排序之间的关系:
1.直接插入排序
(1
- 【Spark102】Spark存储模块BlockManager剖析
bit1129
manager
Spark围绕着BlockManager构建了存储模块,包括RDD,Shuffle,Broadcast的存储都使用了BlockManager。而BlockManager在实现上是一个针对每个应用的Master/Executor结构,即Driver上BlockManager充当了Master角色,而各个Slave上(具体到应用范围,就是Executor)的BlockManager充当了Slave角色
- linux 查看端口被占用情况详解
daizj
linux端口占用netstatlsof
经常在启动一个程序会碰到端口被占用,这里讲一下怎么查看端口是否被占用,及哪个程序占用,怎么Kill掉已占用端口的程序
1、lsof -i:port
port为端口号
[root@slave /data/spark-1.4.0-bin-cdh4]# lsof -i:8080
COMMAND PID USER FD TY
- Hosts文件使用
周凡杨
hostslocahost
一切都要从localhost说起,经常在tomcat容器起动后,访问页面时输入http://localhost:8088/index.jsp,大家都知道localhost代表本机地址,如果本机IP是10.10.134.21,那就相当于http://10.10.134.21:8088/index.jsp,有时候也会看到http: 127.0.0.1:
- java excel工具
g21121
Java excel
直接上代码,一看就懂,利用的是jxl:
import java.io.File;
import java.io.IOException;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import
- web报表工具finereport常用函数的用法总结(数组函数)
老A不折腾
finereportweb报表函数总结
ADD2ARRAY
ADDARRAY(array,insertArray, start):在数组第start个位置插入insertArray中的所有元素,再返回该数组。
示例:
ADDARRAY([3,4, 1, 5, 7], [23, 43, 22], 3)返回[3, 4, 23, 43, 22, 1, 5, 7].
ADDARRAY([3,4, 1, 5, 7], "测试&q
- 游戏服务器网络带宽负载计算
墙头上一根草
服务器
家庭所安装的4M,8M宽带。其中M是指,Mbits/S
其中要提前说明的是:
8bits = 1Byte
即8位等于1字节。我们硬盘大小50G。意思是50*1024M字节,约为 50000多字节。但是网宽是以“位”为单位的,所以,8Mbits就是1M字节。是容积体积的单位。
8Mbits/s后面的S是秒。8Mbits/s意思是 每秒8M位,即每秒1M字节。
我是在计算我们网络流量时想到的
- 我的spring学习笔记2-IoC(反向控制 依赖注入)
aijuans
Spring 3 系列
IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。
IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明:
如:程序中有 Mysql.calss 、Oracle.class 、SqlSe
- 高性能mysql 之 选择存储引擎(一)
annan211
mysqlInnoDBMySQL引擎存储引擎
1 没有特殊情况,应尽可能使用InnoDB存储引擎。 原因:InnoDB 和 MYIsAM 是mysql 最常用、使用最普遍的存储引擎。其中InnoDB是最重要、最广泛的存储引擎。她 被设计用来处理大量的短期事务。短期事务大部分情况下是正常提交的,很少有回滚的情况。InnoDB的性能和自动崩溃 恢复特性使得她在非事务型存储的需求中也非常流行,除非有非常
- UDP网络编程
百合不是茶
UDP编程局域网组播
UDP是基于无连接的,不可靠的传输 与TCP/IP相反
UDP实现私聊,发送方式客户端,接受方式服务器
package netUDP_sc;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.Ine
- JQuery对象的val()方法执行结果分析
bijian1013
JavaScriptjsjquery
JavaScript中,如果id对应的标签不存在(同理JAVA中,如果对象不存在),则调用它的方法会报错或抛异常。在实际开发中,发现JQuery在id对应的标签不存在时,调其val()方法不会报错,结果是undefined。
- http请求测试实例(采用json-lib解析)
bijian1013
jsonhttp
由于fastjson只支持JDK1.5版本,因些对于JDK1.4的项目,可以采用json-lib来解析JSON数据。如下是http请求的另外一种写法,仅供参考。
package com;
import java.util.HashMap;
import java.util.Map;
import
- 【RPC框架Hessian四】Hessian与Spring集成
bit1129
hessian
在【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中介绍了基于Hessian的RPC服务的实现步骤,在那里使用Hessian提供的API完成基于Hessian的RPC服务开发和客户端调用,本文使用Spring对Hessian的集成来实现Hessian的RPC调用。
定义模型、接口和服务器端代码
|---Model
&nb
- 【Mahout三】基于Mahout CBayes算法的20newsgroup流程分析
bit1129
Mahout
1.Mahout环境搭建
1.下载Mahout
http://mirror.bit.edu.cn/apache/mahout/0.10.0/mahout-distribution-0.10.0.tar.gz
2.解压Mahout
3. 配置环境变量
vim /etc/profile
export HADOOP_HOME=/home
- nginx负载tomcat遇非80时的转发问题
ronin47
nginx负载后端容器是tomcat(其它容器如WAS,JBOSS暂没发现这个问题)非80端口,遇到跳转异常问题。解决的思路是:$host:port
详细如下:
该问题是最先发现的,由于之前对nginx不是特别的熟悉所以该问题是个入门级别的:
? 1 2 3 4 5
- java-17-在一个字符串中找到第一个只出现一次的字符
bylijinnan
java
public class FirstShowOnlyOnceElement {
/**Q17.在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b
* 1.int[] count:count[i]表示i对应字符出现的次数
* 2.将26个英文字母映射:a-z <--> 0-25
* 3.假设全部字母都是小写
*/
pu
- mongoDB 复制集
开窍的石头
mongodb
mongo的复制集就像mysql的主从数据库,当你往其中的主复制集(primary)写数据的时候,副复制集(secondary)会自动同步主复制集(Primary)的数据,当主复制集挂掉以后其中的一个副复制集会自动成为主复制集。提供服务器的可用性。和防止当机问题
mo
- [宇宙与天文]宇宙时代的经济学
comsci
经济
宇宙尺度的交通工具一般都体型巨大,造价高昂。。。。。
在宇宙中进行航行,近程采用反作用力类型的发动机,需要消耗少量矿石燃料,中远程航行要采用量子或者聚变反应堆发动机,进行超空间跳跃,要消耗大量高纯度水晶体能源
以目前地球上国家的经济发展水平来讲,
- Git忽略文件
Cwind
git
有很多文件不必使用git管理。例如Eclipse或其他IDE生成的项目文件,编译生成的各种目标或临时文件等。使用git status时,会在Untracked files里面看到这些文件列表,在一次需要添加的文件比较多时(使用git add . / git add -u),会把这些所有的未跟踪文件添加进索引。
==== ==== ==== 一些牢骚
- MySQL连接数据库的必须配置
dashuaifu
mysql连接数据库配置
MySQL连接数据库的必须配置
1.driverClass:com.mysql.jdbc.Driver
2.jdbcUrl:jdbc:mysql://localhost:3306/dbname
3.user:username
4.password:password
其中1是驱动名;2是url,这里的‘dbna
- 一生要养成的60个习惯
dcj3sjt126com
习惯
一生要养成的60个习惯
第1篇 让你更受大家欢迎的习惯
1 守时,不准时赴约,让别人等,会失去很多机会。
如何做到:
①该起床时就起床,
②养成任何事情都提前15分钟的习惯。
③带本可以随时阅读的书,如果早了就拿出来读读。
④有条理,生活没条理最容易耽误时间。
⑤提前计划:将重要和不重要的事情岔开。
⑥今天就准备好明天要穿的衣服。
⑦按时睡觉,这会让按时起床更容易。
2 注重
- [介绍]Yii 是什么
dcj3sjt126com
PHPyii2
Yii 是一个高性能,基于组件的 PHP 框架,用于快速开发现代 Web 应用程序。名字 Yii (读作 易)在中文里有“极致简单与不断演变”两重含义,也可看作 Yes It Is! 的缩写。
Yii 最适合做什么?
Yii 是一个通用的 Web 编程框架,即可以用于开发各种用 PHP 构建的 Web 应用。因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应
- Linux SSH常用总结
eksliang
linux sshSSHD
转载请出自出处:http://eksliang.iteye.com/blog/2186931 一、连接到远程主机
格式:
ssh name@remoteserver
例如:
ssh
[email protected]
二、连接到远程主机指定的端口
格式:
ssh name@remoteserver -p 22
例如:
ssh i
- 快速上传头像到服务端工具类FaceUtil
gundumw100
android
快速迭代用
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOExceptio
- jQuery入门之怎么使用
ini
JavaScripthtmljqueryWebcss
jQuery的强大我何问起(个人主页:hovertree.com)就不用多说了,那么怎么使用jQuery呢?
首先,下载jquery。下载地址:http://hovertree.com/hvtart/bjae/b8627323101a4994.htm,一个是压缩版本,一个是未压缩版本,如果在开发测试阶段,可以使用未压缩版本,实际应用一般使用压缩版本(min)。然后就在页面上引用。
- 带filter的hbase查询优化
kane_xie
查询优化hbaseRandomRowFilter
问题描述
hbase scan数据缓慢,server端出现LeaseException。hbase写入缓慢。
问题原因
直接原因是: hbase client端每次和regionserver交互的时候,都会在服务器端生成一个Lease,Lease的有效期由参数hbase.regionserver.lease.period确定。如果hbase scan需
- java设计模式-单例模式
men4661273
java单例枚举反射IOC
单例模式1,饿汉模式
//饿汉式单例类.在类初始化时,已经自行实例化
public class Singleton1 {
//私有的默认构造函数
private Singleton1() {}
//已经自行实例化
private static final Singleton1 singl
- mongodb 查询某一天所有信息的3种方法,根据日期查询
qiaolevip
每天进步一点点学习永无止境mongodb纵观千象
// mongodb的查询真让人难以琢磨,就查询单天信息,都需要花费一番功夫才行。
// 第一种方式:
coll.aggregate([
{$project:{sendDate: {$substr: ['$sendTime', 0, 10]}, sendTime: 1, content:1}},
{$match:{sendDate: '2015-
- 二维数组转换成JSON
tangqi609567707
java二维数组json
原文出处:http://blog.csdn.net/springsen/article/details/7833596
public class Demo {
public static void main(String[] args) { String[][] blogL
- erlang supervisor
wudixiaotie
erlang
定义supervisor时,如果是监控celuesimple_one_for_one则删除children的时候就用supervisor:terminate_child (SupModuleName, ChildPid),如果shutdown策略选择的是brutal_kill,那么supervisor会调用exit(ChildPid, kill),这样的话如果Child的behavior是gen_