- ARM 架构--通用寄存器状态寄存器控制寄存器特殊用途寄存器
m0_74824661
面试学习路线阿里巴巴arm开发架构
目录一?ARM架构中的寄存器ARM架构中的寄存器通用寄存器状态寄存器控制寄存器特殊用途寄存器总结二通用寄存器ARM架构中的通用寄存器ARMv7架构ARMv8架构实例ARMv7架构ARMv8架构三状态寄存器ARM架构中的状态寄存器状态寄存器详细说明实例ARMv7架构ARMv8枩构四特殊用途寄存器ARM架构下的特殊用途寄存器堆栈指针(SP)链接寄存器(LR)程序计数器(PC)系统寄存器(SYSREG)
- 嵌入式基础篇--了解和搭建开发环境
雯宝
microsoft
文章目录1.开发环境搭建2.LinuxC编程入门3.ARMV7和ARMV8架构4.ARM汇编5.BSP工程管理1.开发环境搭建1.虚拟机Vmware的安装:在PC主机下安装Linux系统,方便切换windows和Linux系统2.在虚拟机Vmware中安装Ubuntu操作系统:便于基于Linux系统的开发3.Ubuntu交叉编译工具链安装4.SourceInsight安装:用于在Windows下代
- ARM Cortex-M4 CPU指令大全:作用、原理与实例
TheJustice_
ARM微机原理arm开发
引言在计算机系统中,CPU(中央处理器)是执行各种指令的核心部件。ARMCortex-M4是广泛应用于嵌入式系统中的一款处理器,其指令集架构(ISA)基于ARMv7-M。本文将介绍ARMCortex-M4处理器中的常见指令,包括它们的作用、工作原理,并通过具体例子帮助理解。1.数据传输指令1.1MOV作用:将数据从一个位置传输到另一个位置。原理:MOV指令复制数据,不改变数据源,只是在目标位置存储
- 探秘ARMv7-M架构:打造高效嵌入式系统指南
嵇影钰
探秘ARMv7-M架构:打造高效嵌入式系统指南【下载地址】ARMv7-M架构参考手册及应用指南分享本资源包包含:-**ARMv7-MArchitectureReferenceManual**:这是ARM官方发布的权威文档,全面深入地介绍了ARMv7-M架构的核心概念、指令集、内存模型和编程模型等,是开发高性能、低功耗嵌入式系统的理论基础。-**ARMv7-MApplicationLevelRefe
- ARM架构参考手册(ARMv7-A和ARMv7-R版)
童伶影Bertha
ARM架构参考手册(ARMv7-A和ARMv7-R版)【下载地址】ARM架构参考手册ARMv7-A和ARMv7-R版分享ARMv7-A和ARMv7-R架构是ARM处理器家族中的关键成员,广泛应用于智能手机、嵌入式系统、汽车电子和实时操作系统等领域的高性能计算设备中。A系列面向应用程序处理器,支持丰富的操作系统如Android和Linux;而R系列则专为实时系统设计,保证了高可靠性和响应速度项目地址
- ARMv7-M架构参考手册及应用指南
董鉴勃
ARMv7-M架构参考手册及应用指南【下载地址】ARMv7-M架构参考手册及应用指南分享本资源包包含:-**ARMv7-MArchitectureReferenceManual**:这是ARM官方发布的权威文档,全面深入地介绍了ARMv7-M架构的核心概念、指令集、内存模型和编程模型等,是开发高性能、低功耗嵌入式系统的理论基础。-**ARMv7-MApplicationLevelReference
- 【GIC400】——GIC 简介
tyustyu
ARM体系结构与编程GICPPISGISPICPUinterface
文章目录GIC简介控制器总览GIC中断分类SPIPPISGI中断IDGIC逻辑分块分发器端(distributor)CPU接口端(CPUinterface)寄存器定义参考系列文章【ARMv7-A】——异常与中断【ARMv7-A】——异常中断处理概述【ARMv7-A】——进入和退出异常中断的过程【GIC400】——PLIC,NVIC和GIC中断对比【GIC400】——GIC简介【GIC400】——G
- 最全复习嵌入式STM32知识点总结
One Kb
STM32入门基础stm32嵌入式硬件单片机
STM32F103系列STM32:芯片系列F:芯片类型103:芯片子系列R:引脚数目B:FLASH容量T:封装信息6:工作温度范围STM32:系统内核小、专用性强、系统精简Lx系列:低功耗F0/1/3系列:均衡型F2/4/7系列:高性能ARMCortex-M3处理器系列基于ARMv7架构的产品STM32F103ZET6有7个端口(A、B、C、D、E、F、G),每个端口16个引脚(0~15)采用哈佛
- ARMv8 Debug
__pop_
ARMv8ARM64架构linux运维
内容来自DEN0024A_v8_architecture_PG.pdf本质ARMv8Debug是什么历史在ARMv4开始被引入,并已发展成一系列广泛的调试(debug1)和跟踪(trace)功能ARMv6和ARMv7-a新增了自托管调试(debug2)和性能评测(trace-enhance)ARMv8处理器提供硬件功能侵入式:调试工具能够对核心活动提供显著级别的控制非侵入式:以非侵入性方式收集有关
- ARM 架构--通用寄存器/状态寄存器/控制寄存器/特殊用途寄存器
小蘑菇二号
arm开发架构
目录一ARM架构中的寄存器ARM架构中的寄存器通用寄存器状态寄存器控制寄存器特殊用途寄存器总结二通用寄存器ARM架构中的通用寄存器ARMv7架构ARMv8架构实例ARMv7架构ARMv8架构三状态寄存器ARM架构中的状态寄存器状态寄存器详细说明实例ARMv7架构ARMv8枩构四特殊用途寄存器ARM架构下的特殊用途寄存器堆栈指针(SP)链接寄存器(LR)程序计数器(PC)系统寄存器(SYSREG)一
- Android平台RTSP|RTMP直播播放器技术接入说明
音视频牛哥
大牛直播SDK音视频RTSP播放器RTMP播放器RTSPPlayerRTMPPlayerAndroidRTSP大牛直播SDK
技术背景大牛直播SDK自2015年发布RTSP、RTMP直播播放模块,迭代从未停止,SmartPlayer功能强大、性能强劲、高稳定、超低延迟、超低资源占用。无需赘述,全自研内核,行业内一致认可的跨平台RTSP、RTMP直播播放器。本文以Android平台为例,介绍下如何集成RTSP、RTMP播放模块。技术对接系统要求SDK支持Android5.1及以上版本;支持的CPU架构:armv7,arm6
- termux安装python图形库_Termux安装Jupyter、Pandas、Matplotlib(2021,Python 3.9)
weixin_39719732
#剧透:#手机是armv7(32位)的中低端机,未root#python3.9#成功安装了numpy+scipy+matplotlib+pandas+jupyter+scikit-learn#===============================================#2020.11.27#毕竟年初和年底的Termux已经很不一样了#现在已经年底了,就写成2021#play商店里
- 【ARMv7-A】——栈帧
tyustli
ARM体系结构与编程arm栈帧满减栈fulldescendingFD
ARM栈帧本系列均以imx6ul的cortex-A7(armv7-a)为例在ARM中,通常为满减栈(FullDescendingFD),也就是说,堆栈指针指向堆栈内存中最后一个填充的位置,并且随着每个新数据项被压入堆栈而递减。栈的本质要理解栈的本质,首先得明白,程序执行是怎么执行的?程序执行其实就是对应一个又一个状态机,在A状态有对应的内核寄存器,在B状态也有对应的内核寄存器值。A状态切换到B状态
- 【ARMv7-A】——IRQ 和 FIQ 异常中断处理程序的返回
tyustli
ARM体系结构与编程armirqfiq
文章目录处理流程示例代码实现不支持中断嵌套支持中断嵌套C语言执行中断服务函数附录源码处理流程通常处理器执行完当前指令后,查询IRQ中断引脚及FIQ中断引脚,并且查看系统是否允许IRQ中断及FIQ中断。如果有中断引脚有效,并且系统允许该中断产生,处理器将产生IRQ异常中断或FIQ异常中断。当IRQ和FIQ异常中断产生时,程序计数器PC的值已经更新,它指向当前指令后面第3条指令(对于ARM系统来说它指
- 《ARM Cortex-R 学习指南》-【第二章】-ARM 架构与处理器
代码改变世界ctw
ARM-TEE-Android架构arm开发armv8armv9实时系统soc芯片
第二章ARM架构与处理器ARM会定期发布新版本的架构,这些版本会增加新功能或对现有行为进行更改。这些更改几乎总是向后兼容的,这意味着在旧版本架构上运行的用户代码在新版本上仍然可以正确运行。当然,利用新功能编写的代码将无法在缺乏这些功能的旧处理器上运行。在所有版本的架构中,某些系统特性和行为是实现定义的。例如,架构并不定义缓存大小或单个指令的周期时间,这些由具体的处理器和SoC决定。ARMv7架构还
- LuaJit分析(一)LuaJit交叉编译
CCTV果冻爽
LuaJit分析系列lua
Android使用ndk版本r16b在luajit2.1.0-beta3目录下创建一个脚本文件,armv7编译代码如下:makecleanNDK=E:/android-ndk-r16b#ndk路径NDKABI=21NDKTRIPLE=arm-linux-androideabiNDKVER=$NDK/toolchains/$NDKTRIPLE-4.9NDKP=$NDKVER/prebuilt/win
- 干货 | 关于Armv7m异常进入的经验分享
WPG大大通
NXP产线大大通经验分享笔记armarm开发
一、概述这里主要介绍异常的进入行为(不包括复位异常)。(这里主要参考armv7m)。二、异常进入在发生抢占的时候(异常发生且开始执行),硬件将上下文状态保存到一个SP寄存器指向的栈中,使用的堆栈取决于异常发送时处理器的模式。在armv7m中使用全降序栈,也就是压栈的时候SP地址递减,出现的时候SP指针递增压栈的时候,硬件将保存8个32bit数据,包括xPSR、ReturnAddress、LR、R1
- 干货 | 关于armv7m异常复位的经验分享
WPG大大通
NXP产线大大通arm开发arm复位经验分享笔记
一、概述复位异常是一种特殊的异常,这里简单介绍复位情况。(这里主要参考armv7m)。二、过程对于复位,这里仅指Armv7m里面会出现的操作。复位是一个特殊的异常,其进入过程与其他的异常有非常大的区别。例如进入、退出的时候都不会压栈、入栈等等。一旦断言,那么就会放弃当前的执行状态且不保存。首先,复位会将当前模式改为Thread模式,这个与其他异常进入是要变为Handler模式不一样。然后,开始将大
- ARM架构学习(二)——流水线
浪矢杂谈
ARM体系结构学习arm架构arm开发
本期主题:ARM流水线往期地址:ARMv7架构学习ARM流水线1.流水线概念2.指令的分解步骤1.流水线概念硬件资源总是有限的,有一个明显的方法能改善硬件资源的利用率,这就是pipeline(流水线)技术,其实就是在当前指令结束之前就开始执行下一条指令。ARM中的流水线是这么做的:当一条指令刚执行完步骤1,准备转向步骤2时,下一条条指令开始执行步骤1。2.指令的分解步骤一条指令在被处理器运行时,实
- iTop-4412 裸机程序(十九)- 按键中断
Kilento
Exynos4412exynos
目录0.源码1.异常向量表1.1原理1.2异常种类1.3ARMv7规定的异常向量表2.中断2.1iTop-4412中使用的中断相关寄存器上篇博文介绍了按键的轮询处理方式,本篇介绍按键的中断方式。0.源码GitHub:https://github.com/Kilento/4412NoOS1.异常向量表1.1原理ARM的异常向量表是一个存储在特定内存地址的表格,用于存储不同类型异常的处理程序的入口地址
- ios 静态包问题
alexluan
ios.a文件的相关操作1.一个.a文件里面包含多个.o的实现文件。2.解压xxx.a文件ar-xxxx.aar:xxx.aisafatfile(uselibtool(1)orlipo(1)andar(1)onit)ar:xxx.a:Inappropriatefiletypeorformat如果有这个报错,说明这个.a文件是一个fat文件,则需要先thinlipoxxx.a-thinarmv7-o
- Xcode 架构问题
男神nick
问题升级到Xcode12后,运行Release模式后,会提示以下信息:Thelinkedlibrary'xxxx.a/Framework'ismissingoneormorearchitecturesrequiredbythistarget:armv7.又或者xxx/Pods/TargetSupportFiles/Pods-xxx/Pods-xxx-frameworks.sh:line128:AR
- lipo命令的用法
内心强大的Jim
参考这篇文章lipo是管理FatFile的工具,可以查看cpu架构,提取特定架构,整合和拆分库文件。-lipo-infoxxxx.framework/xxxx或/xxxx.a查看信息,支持的cpu架构列表lipo-infolibname.a-lipo-createxxxxxxxx-outputxxxx整合成Fat文件lipo-createlibname-armv7.alibname-armv7s.
- 环信集成动态库上传AppStore出现问题
路小白同学
项目中用到了环信的实时音视频库,环信的库已经更新到3.4.1,而且优化了一对一视频通话,需要换库,做个记录。image由于iOS编译的特殊性,为了方便开发者使用,环信将i386x86_64armv7arm64几个平台都合并到了一起,所以使用动态库上传appstore时需要将i386x86_64两个平台删除后,才能正常提交审核在SDK当前路径下执行以下命令删除i386x86_64两个平台实时音视频版
- 系统移植—1.1 Cortex-A7架构
竹影行风
GNULinux
一、Cortex-A7MPCore Cortex-A7基于ARMv7-A架构,于2011年发布,它支持1-4核,通常和Cortex-A15搭配使用。在28nm工艺下,Cortex-A7运行在1.2-1.6GHz,功耗小于100mW。 多核配置如下图所示:二、运行模型 Cortex-A7共有9种处理模式:User、FIQ、IRQ、Supervisor(SVC)、Abort、Undef、Syst
- Linux——命令行查看操作系统架构
Irving.Gao
Linux
命令行查看操作系统架构uname-a对于arm架构,一般32位为armv7,64位armv8。
- 【学习笔记】ARM Cortex-A(armv7)编程手册
踏流星
学习arm开发
第一章介绍了ARMCortex-A系列处理器的基本功能,介绍ARM体系结构的基础知识,涵盖各种寄存器;第二章和第三章提供了有关各个处理器的模式和一些背景知识;第四章和第五章简要介绍了ARM汇编语言编程,以及汇编语言说明;第六章和第七章中的介绍浮点和ARM高级SIMD扩展,相关主题的介绍;第八章、第九章和第十章介绍内存系统,缓存,内存管理,内存排序;第十一章和第十二章介绍了处理异常和中断;第十三章概
- 2015.10uboot移植笔记 (三、低级初始化lowlevel_init)
酱油师兄
ubootlowlevel_inits5pv210时钟树uboot移植uboot2015移植
上一篇,把start.S分析了一遍,这一篇只要分析lowlevel_init这个函数这个函数有点长,采取分开分析,一点一点的看,不着急,哈哈哈还没说要分析哪一个的lowlevel_init的,这是有一个小技巧,可以分享一些,一般的lowlevel_init会在两个地方有,一个是CPU哪里的,一个是board那边的下面的图片是armv7里面有一个lowlevel_init.S文件,有没有发现这个汇编
- Python3 交叉编译 numpy pandas scipy scikit-learn
咸鱼丶的自我修养
pythonnumpypandasscipypythonscikit-learn机器学习数据分析
1.概述由于需要将Python3.7和一些软件包交叉编译到armv7平台硬件,如果是arm64位的系统,很多包都有预编译好的版本,可直接下载。本文主要在基于crossenv(https://github.com/benfogle/crossenv)环境下交叉编译。2.编译环境搭建创建编译环境路径/home/ym/python-build,创建/home/ym/python-build/instal
- 【lighttpd-1.4.59】移植lighttpd-1.4.59到armv7平台
wellnw
mdm9607qsdklighttpd
源码下载链接Indexof/repo/pkgs/lighttpd(fedoraproject.org)https://src.fedoraproject.org/repo/pkgs/lighttpd/下载lighttpd-1.4.59.tar.gz解压源码tar-xvflighttpd-1.4.59.tar.gz将lighttpd-1.4.59目录下新增src目录,将所有文件放到src目录下cdl
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓