- 汇编 Call 指令运行原理详解:从跳转机制到堆栈操作
杰_happy
汇编汇编单片机stm32
函数参数传递参数传递一般有三种方式:通过内存(一般是堆栈)传递整形参数可以通过寄存器传递浮点数参数可以通过浮点寄存器传递堆栈传递所谓通过堆栈传递参数,就是调用函数的一方,将参数逐个压入堆栈中,然后由函数从堆栈中取出使用。使用堆栈的好处是不用污染寄存器,而且可以传递的参数个数基本不限。但缺点是需要读写内存。众所周知,读写内存比读写寄存器要慢的多,这就使人想到用寄存器进行传递参数会大大提高效率。在wi
- gcc 源码分析:从IR-RTL 到汇编输出
在完成了IR-RTL的优化与寄存器分配后就来到汇编代码的输出:实现如下:classpass_final:publicrtl_opt_pass{public:pass_final(gcc::context*ctxt):rtl_opt_pass(pass_data_final,ctxt){}/*opt_passmethods:*/unsignedintexecute(function*)finalov
- 使用内联汇编实现CAS操作(含详细讲解)
(Charon)
汇编
在多线程环境下,如何安全地更新共享变量,一直是一个重要的话题。今天,我们通过一段使用内联汇编实现的CAS(CompareAndSwap)代码,深入学习它的原理和用法。完整示例代码如下:#include//标准输入输出头文件#include//pthread多线程编程相关头文件#include//usleep函数需要的头文件#defineTHREAD_COUNT10//定义线程数量为10volati
- Golang defer 的编译器实现细节
Golang编程笔记
golang开发语言后端ai
Golangdefer的编译器实现细节:从语法糖到运行时的全链路解析关键词:Go语言、defer、编译器优化、运行时、延迟执行摘要:本文将深入解析Go语言中defer关键字的底层实现细节。我们将从defer的基础用法出发,逐步拆解编译器如何将defer语法转换为机器可执行的代码,并结合Go编译器的优化历史(如开放编码优化)、运行时关键结构体(_defer)以及实际汇编代码,揭示defer从“语法糖
- c语言变长数组与数组越界保护
嵌入式er.
Linux应用开发c语言
文章目录1.定长数组的使用2.定长数组的栈空间3.变长数组的使用4.变长数组的栈空间5数组越界保护在c99协议标准中,增加了变长数组(VLA)这一特性,本文旨在从汇编的角度来理解其原理,并且简单阐述下数组越界保护的内容。在此顺带说一下自己对c语言学习的理解,关于常规的表达式、语法等不做阐述,主要对一些复杂的关键字或者特性的学习方式作以自己的感悟。如:c语言中对const、static、变长数组等的
- C语言笔记
学习笔记仅供参考基础介绍程序就是一组计算机能识别的指令,计算机的一切操作都是由程序控制的。人和计算机都能识别的语言就是就是计算机语言,计算机工作是基于二进制的。计算机能直接识别的二进制代码就是机器指令,机器指令的集合就是机器语言。机器语言与人们习惯使用的语言差别太大,所以人们创造出了符号语言,计算机不能直接识别符号语言的指令,需要汇编程序软件将符号语言指令转成机器指令(二进制代码)。机器语言与汇编
- brpc中的bthread_jump_fcontext汇编函数到底发生了什么?
我们之前讲了brpc中的bthread创建,分配和切换。那么在切换过程中,brpc中的bthread_jump_fcontext汇编函数到底发生了什么?我们来非常具体地讲一讲。函数签名intptr_tbthread_jump_fcontext(bthread_fcontext_t*ofc,//%rdi:输出参数,保存源上下文指针bthread_fcontext_tnfc,//%rsi:输入参数,目
- 汇编语言:基于x86处理器第一章习题解答
「已注销」
Linux内核资深专家arm
汇编语言习题解答习题解答1.1.3本节回顾习题解答1.1.3本节回顾1、汇编器和链接器是如何一起工作的?汇编程序要转化为可执行程序,需要先译码后组合。这是因为一个完整的汇编程序常常是由多个文件构成,先用汇编器将每一个文件中的汇编代码转化为机器语言后,链接器再把这些文件组合成一个可执行程序。2、学习汇编语言如何能提高你对操作系统的理解?可用汇编语言验证操作系统的理论知识,从而更深刻的掌握操作系统3、
- 汇编语言:基于x86处理器(原书第7版)所有课后习题答案
Up to the mountain
汇编masm
包含3-13章所有习题答案,覆盖率95%以上,除了意义不大和重复的,高难度题目我全做了包含vs2015工程,使用时将对应的习题拖到vs工程的源码底下,一次编译一个,如果莫名报错,请将文件名改成简单英文或数字名,如a31.asm---引用请注明出处---下载地址:汇编语言:基于x86处理器(原书第7版)所有课后习题答案_汇编语言基于x86处理器第七版课后答案-其它文档类资源-CSDN下载
- Android逆向工具简单介绍
@ZhangJun
Android进阶Android逆向反编译反汇编Hook
目录一、Android逆向概述1、什么是Android逆向2、逆向过程3、逆向用途1)APP自动化执行程序脚本2)修改APP的功能3)APP安全二、常用逆向工具介绍1、APP抓包工具1)Fiddler2)Wireshark2、jadx反编译工具3、APKDB4、Frida之Hook工具5、IDA反汇编工具1)为何反汇编2)如何反汇编3)IDAPro的基本功能:4)IDA目录结构5)常用快捷键6)常
- Solidity——什么是低级调用(low-level calls)和操作码的内联汇编
这是Solidity高级开发中很重要的两个概念,通常用于:精细控制合约行为(比如合约间通信、控制gas、避免fallback限制)编写高性能或底层逻辑的合约(例如代理合约、MEV、Gas优化等)我们逐一讲清楚:✅一、什么是低级调用(Low-levelcalls)Solidity提供了几种**“低级”函数调用方式**,用于替代标准的函数调用。这些函数更原始、更灵活,但使用不当容易出bug(比如失败不
- 高级汇编语言编程技巧与优化
代码世界探索者
汇编语言详解汇编linux
一、宏和宏指令1.宏的基本概念•定义:宏是一种文本替换机制。它允许程序员定义一个宏名,并将一组指令或代码片段与该宏名关联起来。在代码中使用宏名时,汇编器会将其替换为对应的指令或代码片段。2.宏的定义和使用(1)定义宏在汇编语言中,宏的定义通常使用MACRO指令开始,以ENDM指令结束。宏的定义包括宏名和一组指令或代码片段。语法:宏名MACRO参数1,参数2,...指令1指令2...ENDM示例:;
- jvm执行i++代码的步骤,内存中数据的流转
过期小朋友、
jdk
大家好,今天看了一个java面试讲解课程,里面说i++,在jvm执行时,会被分成四步:1.主存中i的数值放到线程工作内存2.加一3.加一的值放回线程工作内存中4.线程工作内存中的值放回主存中使用idea编写了一个例子,获取jvm的汇编指令,使用指令说明,翻译过来在内存中数值流转。发现2,3是一个命令iadd。具体如下:例子:packagecom.wmr.jvmtest;publicclassIPl
- 408考研逐题详解:2010年第18题——CPU寄存器
2010年第18题下列寄存器中,汇编语言程序员可见的是()A.存储器地址寄存器(MAR)\qquadB.程序计数器(PC)\qquadC.存储器数据寄存器(MDR)\qquadD.指令寄存器(IR)解析本题考查的是计算机组成原理中关于CPU寄存器的分类及其可见性,特别是汇编语言程序员的视角。存储器地址寄存器(MAR,MemoryAddressRegister):用于存储CPU即将访问的内存地址(如
- 利用反汇编技术将游戏《英雄无敌3》修改为硬盘版
安联酋长
汇编游戏汇编
最近好不容易找到我最喜欢的游戏《英雄无敌3之埃拉西亚的光复》,可惜是光盘版的,要用虚拟光驱来运行,感觉不爽,网上也找不到免CD补丁,于是决定自己动手。首先感谢这篇文章的作者http://bbs.pediy.com/showthread.php?t=101023是他引领我进入反汇编的大门。这篇文章的第一步,就是找到GetDriveType的调用(GetDriveType就是判断某盘符是光驱、硬盘或网
- C++语言标准
Shy_tom
C++c++
title:C++语言标准description:C++标准C++语言的起源 与C语言一样,C++也是在贝尔实验室诞生的,BjarneStroustrup于20世纪80年代在这里开发出了这种语言。用他自己的话来说,“C++主要是为了我的朋友和我不必再使用汇编语言、C语言或者其他现代高级语言来编程而设计的。它的主要功能是可以更方便地编写出好程序,让每个程序员更加快乐”。C++语言标准 美国国家标准委
- CppCon 2018 学习:TEACHING OLD COMPILERS NEW TRICKS TEACHING OLD COMPILERS NEW TRICKS Transpiling C++17
虾球xz
CppCon学习c++开发语言
理解问题与解决方案:C++17和编译器兼容性这个问题描述了由于编译器版本差异(特别是GCC4.9与GCC4.8),在不同编译器版本下生成的汇编代码可能会有所不同,尤其是C++17中的某些新特性和语法在老版本的编译器中可能无法正确处理。这种情况通常会导致程序行为不一致,特别是在对性能或低级代码有要求时。具体问题:问题描述:C++17特性与GCC4.9:例如,0b1000'0000是C++17中引入的
- 【嵌入式ARM汇编基础】-ELF文件格式内部结构详解(四)
视觉与物联智能
嵌入式Linux与边缘智能arm开发汇编嵌入式硬件物联网RK3588
ELF文件格式内部结构详解(四)文章目录ELF文件格式内部结构详解(四)15、ELF程序初始化和终止部分15.1初始化和终止顺序16、线程局部存储16.1本地执行TLS访问模型16.2Initial-ExecTLS访问模型16.3通用动态TLS访问模型16.4本地动态TLS访问模型15、ELF程序初始化和终止部分一旦程序加载到内存中,其依赖关系得到满足,并且已正确重定位并链接到其共享库依赖项,加载
- 计算机导论与计算机组成原理关系,计算机组成原理
一、课程简介课程中文名称:《计算机组成原理与汇编语言》课程英文名称:Computerprincipleandassemblylanguage课程编号:ZYB08003课程性质:专业必修课学时数:54学时(其中授课学时,课堂实验学时,讨论学时,自学学时)学分:3学分适用专业:计算机科学与技术课程的主要任务本课程的作用是通过课堂理论学习和实际操作训练,使学生掌握计算机硬件组成的基本原理、汇编语言程序设
- 【Linux】环境基础开发工具使用——gcc/g++使用
风铃子加油
Linuxlinux算法运维开发语言xshell
Linux编译器-gcc/g++使用1.背景知识1.预处理(进行宏替换)2.编译(生成汇编)3.汇编(生成机器可识别代码)4.连接(生成可执行文件或库文件)2.gcc如何完成格式gcc[选项]要编译的文件[选项][目标文件]预处理(进行宏替换)预处理功能主要包括宏定义,文件包含,条件编译,去注释等。预处理指令是以#号开头的代码行。实例:gcc–Ehello.c–ohello.i选项“-E”,该选项
- 计算机编译原理ppt,编译原理课件.ppt
知知与终生
计算机编译原理ppt
文档介绍:高级语言汇编语言SOURCEPROGRAMAssemblePROGRAM?翻译程序?TRANSLATER为什么要学****编译原理程序设计语言是计算机软件专业的重要核心学****编程的历程:C语言--汇编语言--数据结构Monday,July03,2017编译原理为什么要学****编译原理必修主干课程,操作系统和编译系统构成程序设计者与计算机之间的基本界面。通过学****该课程,掌握编译
- C语言控制结构深度解析:从底层原理到高效实战技巧
Bryan Ding
c语言开发语言
一、程序逻辑的核心密码程序设计的本质是对现实问题的抽象和逻辑表达。C语言作为结构化编程语言的典范,其控制结构构成了程序逻辑的骨架。三大基本结构构成所有程序的逻辑基础:顺序结构:代码的自然执行顺序选择结构:if/else语句实现分支判断循环结构:for/while实现重复操作二、选择结构的底层实现1.if语句的机器级实现if (condition){ //代码块}编译后的汇编代码示例: cmp
- 【Linux内核及内核编程】Linux 内核的发展与演变:从 UNIX 到开源帝国的崛起
byte轻骑兵
#嵌入式Linux驱动开发实战linuxunix运维
1969年,贝尔实验室的肯·汤普森和丹尼斯·里奇在报废的DECPDP-7小型机上开发了一个“太空旅行”游戏。为简化开发,他们用汇编语言编写了一个轻量级操作系统——UNICS(UniplexedInformationandComputingService),后缩写为UNIX。这个“游戏外挂”意外开启了操作系统的新纪元目录一、UNIX:现代操作系统的基石1.1起源与早期发展1.2分支与商业化二、Min
- 从汇编指令看函数调用堆栈的详细过程
melonbo
编译汇编开发语言
1、C++代码这个C++源码实现了一个简单的加法函数,并在主函数中调用该函数来计算两个整数的和。intsum(inta,intb){inttemp=0;temp=a+b;returntemp;}intmain(){inta=10;intb=20;intret=sum(a,b);return0;}2、汇编代码在ARMCortex-A9平台上,编译后的C++源代码的汇编代码如下:.cpucortex-
- I.MX6ULL ARM裸机开发---C语言LED实验
一盆电子
ARM裸机开发armc语言驱动开发
一、引言 考虑到工作效率,嵌入式驱动开发很少用汇编,大部分是用C语言进行开发。 嵌入式驱动开发开始部分就可以用C语言吗? 当然不是!在开始部分用汇编来初始化一下C语言环境,比如初始化DDR、设置堆栈指针SP等等,当这些工作都做完以后就可以进入C语言环境,也就是运行C语言代码,一般都是进入main函数。有两部分文件需要完成: 1、汇编文件 汇编文件用来完成C语言环境搭建。 2、C语言文件
- C++入门笔记
张峻铖
C++c++
写在开头初衷:对于一个程序员/算法工程师来说,只会Python未免过于单薄了。出于未来找工作的需要,开始学习C++,并使用C++刷LeetCode。背景:本科有C语言课程,甚至学过汇编,研究生阶段主要使用Python。提醒:该系列文章以尽可能快地应用C++(刷题)为目的,暂以B站黑马程序员C++教程为教材,主要记录重点内容和对个人来讲不易理解或陌生的内容,具有较浓的个人笔记特点,因此,在全面性和权
- 解锁 Hello World 的 N 种炫酷玩法
目录一、引言二、编程语言之美2.1C语言艺术字输出2.2用汇编语言实现经典三、硬件交互的奇妙世界3.1Arduino与LED的舞蹈3.2STM32点亮小灯四、AI模型应用的创新之旅4.1OpenAIAPI初体验4.2LangChain框架的魅力五、总结与展望一、引言在编程的世界里,“HelloWorld”就像是一把神奇的钥匙,开启了无数人探索编程奥秘的大门。它作为编程学习的经典入门示例,有着不可替
- C51填坑记:中断处理导致主程序函数参数改变
albert_812
C51C51DataOverlay中断参数异常改变
1.现象平台:keilc51,中颖SH79F7019A现象:在增加了一个中断处理逻辑后,发现主程序异常,断点调试发现某个函数的参数被改变了,程序使用了错误的数据导致逻辑出错。2.排查初步分析,可能原因如下:1.参数寄存器(R0-R7)的值,被中断函数改变。2.堆栈溢出。2.1参数寄存器首先排查参数寄存器(中断里面调用了函数,有参数传递)。通过仿真器观察中断函数汇编代码,发现在进入中断之前是对R0-
- ARMv8架构参考手册下载
唐方展
ARMv8架构参考手册下载【下载地址】ARMv8架构参考手册下载分享ARMv8架构参考手册下载项目地址:https://gitcode.com/Open-source-documentation-tutorial/1df35资源介绍本仓库提供ARM官方的ARM架构参考手册,最新版本为ARMv8-A。该手册是系统学习ARM指令的最佳参考书,涵盖了ARMv8架构的详细信息和汇编指令手册。资源文件文件名
- linux的常用命令
Flying Fish(HHH)
linux服务器运维
一、进程相关:查看进程:ps-aux|grep进程id查看僵尸进程:ps-ef|grepdefunct(进程名称)如何查看线程使用哪个so库?lsof-ppid|grepbasecat/proc/376421/maps|grep'\.so'查看对应的.so文件是否已经成功转成汇编yuminstallbinutils-2.37-14.oe2203sp1.x86_64objdump-Sllibbase
- 怎么样才能成为专业的程序员?
cocos2d-x小菜
编程PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
- java web开发 高并发处理
BreakingBad
javaWeb并发开发处理高
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的优化措施是M-S(
- mysql批量更新
ekian
mysql
mysql更新优化:
一版的更新的话都是采用update set的方式,但是如果需要批量更新的话,只能for循环的执行更新。或者采用executeBatch的方式,执行更新。无论哪种方式,性能都不见得多好。
三千多条的更新,需要3分多钟。
查询了批量更新的优化,有说replace into的方式,即:
replace into tableName(id,status) values
- 微软BI(3)
18289753290
微软BI SSIS
1)
Q:该列违反了完整性约束错误;已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“不能将值 NULL 插入列 'FZCHID',表 'JRB_EnterpriseCredit.dbo.QYFZCH';列不允许有 Null 值。INSERT 失败。”。
A:一般这类问题的存在是
- Java中的List
g21121
java
List是一个有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复
- 读书笔记
永夜-极光
读书笔记
1. K是一家加工厂,需要采购原材料,有A,B,C,D 4家供应商,其中A给出的价格最低,性价比最高,那么假如你是这家企业的采购经理,你会如何决策?
传统决策: A:100%订单 B,C,D:0%
&nbs
- centos 安装 Codeblocks
随便小屋
codeblocks
1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可yum install gccyum install gcc-c++
2.安装gtk2-devel,因为默认已经安装了正式产品需要的支持库,但是没有安装开发所需要的文档.yum install gtk2*
3. 安装wxGTK
yum search w
- 23种设计模式的形象比喻
aijuans
设计模式
1、ABSTRACT FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:
- 开发管理 CheckLists
aoyouzi
开发管理 CheckLists
开发管理 CheckLists(23) -使项目组度过完整的生命周期
开发管理 CheckLists(22) -组织项目资源
开发管理 CheckLists(21) -控制项目的范围开发管理 CheckLists(20) -项目利益相关者责任开发管理 CheckLists(19) -选择合适的团队成员开发管理 CheckLists(18) -敏捷开发 Scrum Master 工作开发管理 C
- js实现切换
百合不是茶
JavaScript栏目切换
js主要功能之一就是实现页面的特效,窗体的切换可以减少页面的大小,被门户网站大量应用思路:
1,先将要显示的设置为display:bisible 否则设为none
2,设置栏目的id ,js获取栏目的id,如果id为Null就设置为显示
3,判断js获取的id名字;再设置是否显示
代码实现:
html代码:
<di
- 周鸿祎在360新员工入职培训上的讲话
bijian1013
感悟项目管理人生职场
这篇文章也是最近偶尔看到的,考虑到原博客发布者可能将其删除等原因,也更方便个人查找,特将原文拷贝再发布的。“学东西是为自己的,不要整天以混的姿态来跟公司博弈,就算是混,我觉得你要是能在混的时间里,收获一些别的有利于人生发展的东西,也是不错的,看你怎么把握了”,看了之后,对这句话记忆犹新。 &
- 前端Web开发的页面效果
Bill_chen
htmlWebMicrosoft
1.IE6下png图片的透明显示:
<img src="图片地址" border="0" style="Filter.Alpha(Opacity)=数值(100),style=数值(3)"/>
或在<head></head>间加一段JS代码让透明png图片正常显示。
2.<li>标
- 【JVM五】老年代垃圾回收:并发标记清理GC(CMS GC)
bit1129
垃圾回收
CMS概述
并发标记清理垃圾回收(Concurrent Mark and Sweep GC)算法的主要目标是在GC过程中,减少暂停用户线程的次数以及在不得不暂停用户线程的请夸功能,尽可能短的暂停用户线程的时间。这对于交互式应用,比如web应用来说,是非常重要的。
CMS垃圾回收针对新生代和老年代采用不同的策略。相比同吞吐量垃圾回收,它要复杂的多。吞吐量垃圾回收在执
- Struts2技术总结
白糖_
struts2
必备jar文件
早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar Apache旗下commons项目的log日志包
freemarker-*.jar  
- Jquery easyui layout应用注意事项
bozch
jquery浏览器easyuilayout
在jquery easyui中提供了easyui-layout布局,他的布局比较局限,类似java中GUI的border布局。下面对其使用注意事项作简要介绍:
如果在现有的工程中前台界面均应用了jquery easyui,那么在布局的时候最好应用jquery eaysui的layout布局,否则在表单页面(编辑、查看、添加等等)在不同的浏览器会出
- java-拷贝特殊链表:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
bylijinnan
java
public class CopySpecialLinkedList {
/**
* 题目:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。
假设原来链表为A1 -> A2 ->... -> An,新拷贝
- color
Chen.H
JavaScripthtmlcss
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD>&nbs
- [信息与战争]移动通讯与网络
comsci
网络
两个坚持:手机的电池必须可以取下来
光纤不能够入户,只能够到楼宇
建议大家找这本书看看:<&
- oracle flashback query(闪回查询)
daizj
oracleflashback queryflashback table
在Oracle 10g中,Flash back家族分为以下成员:
Flashback Database
Flashback Drop
Flashback Table
Flashback Query(分Flashback Query,Flashback Version Query,Flashback Transaction Query)
下面介绍一下Flashback Drop 和Flas
- zeus持久层DAO单元测试
deng520159
单元测试
zeus代码测试正紧张进行中,但由于工作比较忙,但速度比较慢.现在已经完成读写分离单元测试了,现在把几种情况单元测试的例子发出来,希望有人能进出意见,让它走下去.
本文是zeus的dao单元测试:
1.单元测试直接上代码
package com.dengliang.zeus.webdemo.test;
import org.junit.Test;
import o
- C语言学习三printf函数和scanf函数学习
dcj3sjt126com
cprintfscanflanguage
printf函数
/*
2013年3月10日20:42:32
地点:北京潘家园
功能:
目的:
测试%x %X %#x %#X的用法
*/
# include <stdio.h>
int main(void)
{
printf("哈哈!\n"); // \n表示换行
int i = 10;
printf
- 那你为什么小时候不好好读书?
dcj3sjt126com
life
dady, 我今天捡到了十块钱, 不过我还给那个人了
good girl! 那个人有没有和你讲thank you啊
没有啦....他拉我的耳朵我才把钱还给他的, 他哪里会和我讲thank you
爸爸, 如果地上有一张5块一张10块你拿哪一张呢....
当然是拿十块的咯...
爸爸你很笨的, 你不会两张都拿
爸爸为什么上个月那个人来跟你讨钱, 你告诉他没
- iptables开放端口
Fanyucai
linuxiptables端口
1,找到配置文件
vi /etc/sysconfig/iptables
2,添加端口开放,增加一行,开放18081端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 18081 -j ACCEPT
3,保存
ESC
:wq!
4,重启服务
service iptables
- Ehcache(05)——缓存的查询
234390216
排序ehcache统计query
缓存的查询
目录
1. 使Cache可查询
1.1 基于Xml配置
1.2 基于代码的配置
2 指定可搜索的属性
2.1 可查询属性类型
2.2 &
- 通过hashset找到数组中重复的元素
jackyrong
hashset
如何在hashset中快速找到重复的元素呢?方法很多,下面是其中一个办法:
int[] array = {1,1,2,3,4,5,6,7,8,8};
Set<Integer> set = new HashSet<Integer>();
for(int i = 0
- 使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
lanrikey
history
后退时关闭当前页面
<script type="text/javascript">
jQuery(document).ready(function ($) {
if (window.history && window.history.pushState) {
- 应用程序的通信成本
netkiller.github.com
虚拟机应用服务器陈景峰netkillerneo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
Socket
硬件(串口,USB) 等等
全局变量
全局变量是成本最低通信方法,通过设置
- 一维数组与二维数组的声明与定义
恋洁e生
二维数组一维数组定义声明初始化
/** * */ package test20111005; /** * @author FlyingFire * @date:2011-11-18 上午04:33:36 * @author :代码整理 * @introduce :一维数组与二维数组的初始化 *summary: */ public c
- Spring Mybatis独立事务配置
toknowme
mybatis
在项目中有很多地方会使用到独立事务,下面以获取主键为例
(1)修改配置文件spring-mybatis.xml <!-- 开启事务支持 --> <tx:annotation-driven transaction-manager="transactionManager" /> &n
- 更新Anadroid SDK Tooks之后,Eclipse提示No update were found
xp9802
eclipse
使用Android SDK Manager 更新了Anadroid SDK Tooks 之后,
打开eclipse提示 This Android SDK requires Android Developer Toolkit version 23.0.0 or above, 点击Check for Updates
检测一会后提示 No update were found