- 【ARMv7-A】——栈帧
tyustli
ARM体系结构与编程arm栈帧满减栈fulldescendingFD
ARM栈帧本系列均以imx6ul的cortex-A7(armv7-a)为例在ARM中,通常为满减栈(FullDescendingFD),也就是说,堆栈指针指向堆栈内存中最后一个填充的位置,并且随着每个新数据项被压入堆栈而递减。栈的本质要理解栈的本质,首先得明白,程序执行是怎么执行的?程序执行其实就是对应一个又一个状态机,在A状态有对应的内核寄存器,在B状态也有对应的内核寄存器值。A状态切换到B状态
- IMX6ULL SD卡启动uboot+kernel+rootfs
xingpeng_89
IMX6ULLlinux服务器
目录1.背景说明2.SD卡启动2.1准备条件2.2对SD卡分区格式化2.3制作sd卡镜像3.效果测试1.背景说明网络上绝大数教程,教大家把uboot烧录到SD卡,然后uboot启动后,通过TFTP下载kernel和设备树,然后通过nfs挂载文件系统。很少有SD卡完整启动ubootkernel和rootfs,这里整理了一下,分享给大家。2.SD卡启动2.1准备条件①u-boot-dtb.imx②zI
- IMX6ULL开发板通过网线直连PC机进行TFTP、NFS进行网络调试
Terry.Z_1009
Linuxlinuxubuntu
硬件平台:正点原子imx6ull阿尔法开发板应用背景:1、首先我的笔记本是连得无线网,即处于联网状态。2、办公桌周围没有网口,路由器又比较远,所以不好使用网线连接路由器,再连接开发板进行网络下载。所以,使用PC与开发板通过网线直连,在PC机上创建网桥进行桥接。一、PC端win7系统设置:如下图:此时会出现网桥然后基于正点原子的驱动教程,进行NFS下载,或者TFTP下载2022/04/11以上方法,
- RTMP_ReadPacket, failed to read RTMP packet header rtmp://127.0.0.1/live/lyc: Unknown error occurred
程序山顶洞人
ffmpeg
关于imx6ull视频推拉流出现的:RTMP_ReadPacket,failedtoreadRTMPpacketheaderrtmp://127.0.0.1/live/lyc:Unknownerroroccurred解决方法:根据报错猜测是RTMP服务出现问题,就再去重新配置支持RTMP、HTTPFLV协议的第三方模块:nginx-http-flv-module最后在使用Buildroot编译的时
- 实现platform tree下的单总线协议驱动(Linux)
mftang
linux驱动开发linux驱动开发
目录1开发环境1.1硬件系统参数1.2编译环境:Ubuntu2单总线协议驱动的实现2.1在内核的.dts文件2.2编写驱动代码2.3编写测试App3测试1开发环境1.1硬件系统参数Linux内核:linux-imx-4.1.15-2.1.0-g3dc0a4b-v2.7.tar.bz2硬件:ATK-DL6Y2C开发板(芯片型号:IMX6LL)内核启动位置:eMMC1.2编译环境:Ubuntu版本信息
- IMX6ULL编译led驱动程序出现fatal error: generated/autoconf.h以及 ERROR: Kernel configuration is invalid.的解决方法
Arron475
ubuntuLinux驱动开发驱动开发linux运维ubuntu
问题背景:最近在学习IMX6ULL的驱动程序,在用make命令执行编译led驱动程序时,出现以下报错:make-C/home/book/100ask_imx6ull-sdk/Linux-4.9.88M=pwdmodulesmake[1]:进入目录“/home/book/100ask_imx6ull-sdk/Linux-4.9.88”ERROR:Kernelconfigurationisinvali
- linux+rv1126/imx6ull:opencv静态库交叉编译
孙八瓶
Linux软件linuxopencv运维
目录1.下载2.准备工作2.1安装依赖环境2.2安装Cmake2.3解压opencv3.Cmake设置3.1文件夹选择1)进入源码根目录2)运行cmake3)选择目录4)进入配置界面5)查找编译器6)配置编译器3.2编译选项1)search2)点击Configure3)点击generate4)修改文件4.编译1.下载1)官网自行下载2)国内镜像网站2.准备工作2.1安装依赖环境1)[编译器]>su
- IMX6LL|打造自己的驱动总线
左手的月光
单片机
xbus:打造自属的驱动总线驱动总线软件与硬件代码分离,提高程序的复用性device–关联硬件代码driver_devices–关联软件代码bus_type–统一管理、设置match匹配规则设备驱动模型体现分离思想bus-xbus-devices-drivers总线管理buses_init()函数内核启动执行/sys/busint__initbuses_init(void){bus_kset=ks
- imx6ull学习记录(一)
桃成蹊2.0
IMX6ULL记录linux设备使用记录学习
这一块主要是了解linux系统驱动部分,编译镜像相关的知识,这里记录一下。使用板子如下:教程用的这一个版本:1、基本环境搭建这个比较简单,只是注意一下就是正点原子的教程用了一个NFS文件系统,简单来讲就是linux移植不是有三大块吗,uboot,linux内核和文件系统,正点原子教程里面大部分这个文件系统是放在虚拟机里面的,然后通过nfs的方式来访问的。所以这里要关注一下学习过程中我建了一个文件夹
- 记录 arm 开发板上 nginx 配置 http 服务注意事项
背 锅 侠
nginxhttp运维
1.自定义项目,需要在conf.d目录中增加一个.conf配置文件:server{listen9200;#端口号server_namelocalhost;#服务名称location/{root/home/imx6q/media;#项目根目录(需要修改nginx.conf的用户)indexindex.htmlindex.htm;#autoindexon;#没有找到index配置时,自动列出文件列表}
- IMX6ULL - 移植uboot-imx_v2020.04_5.4.70_2.3.0
树 哥
嵌入式Linuxlinuxarm开发uboot
作者:zzssdd2E-mail:
[email protected]一、说明主机系统:Ubuntu20.04.3LTS开发板:TOPEET-IMX6ULLUboot版本:imx_v2020.04_5.4.70_2.3.0交叉编译器:gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf二、环境搭建2.1、uboot源码获取NXP维护的uboot
- pinctrl子系统和GPIO子系统的匹配——of_match_device
ZigeSu
linux内核arm
个人声明:转发请注明出处,个人原创,实属不易。本人水平有限,文章若有不妥之处,还请留言批评指正,不胜感激。pinctrl子系统和GPIO子系统匹配的开始时刻是在执行imx6ul_pinctrl_probe内的of_match_device函数,of_match_device在device.c文件下。staticintimx6ul_pinctrl_probe(structplatform_devic
- IMX6ULL|input子系统(按键实验)
左手的月光
linux嵌入式
一.input子系统input子系统是Linux对输入设备提供的统一驱动框架。如按键、键盘、触摸屏和鼠标等输入设备的驱动方式是类似的,当出现按键、触摸等操作时,硬件产生中断,然后CPU直接读取引脚电平,或通过SPI、I2C等通讯方式从设备的寄存器读取具体的按键值或触摸坐标,然后把这些信息提交给内核。使用input子系统驱动的输入设备可以通过统一的数据结构提交给内核,该数据结构包括输入的时间、类型、
- IMX6ULL|libgpiod控制IO
左手的月光
Linux单片机
一.为何使用libgpiod控制IO在Linux中,最常见的读写GPIO方式就是用GPIOsysfsinterface,是通过操作/sys/class/gpio目录下的export、unexport、gpio{N}/direction,gpio{N}/value(用实际引脚号替代{N})等文件实现的,经常出现shell脚本里面。在kernel4.8开始,加入了libgpiod的支持;而原有基于sy
- TTS文字转语音服务 Linux/Ubuntu ekho实现 及 Linux指定声卡
myqpy
linux
目录背景介绍下载地址:ekho库在linux环境中安装使用(imx6ull平台)ekho库在ubuntu环境中安装使用指定声卡ekho实际使用中遇到的pulseaudio不支持root用户使用问题修改/etc/systemd/system/pulseaudio.service文件并保存使能pulseaudio服务编辑/etc/pulse/client.conf文件并保存问题分析问题1:NoPuls
- IMX6ULL|GPIO子系统
左手的月光
单片机嵌入式硬件
一.GPIO子系统GPIO是GeneralPurposeI/O的缩写,即通用输入输出端口,简单来说就是MCU/CPU可控制的引脚,这些引脚通常有多种功能,最基本的是高低电平输入检测和输出,部分引脚还会与主控器的片上外设绑定,如作为串口、I2C、网络、电压检测的通讯引脚。与LED子系统类似,Linux提供了GPIO子系统驱动框架,使用该驱动框架可以把CPU的GPIO引脚导出到用户空间,用户通过访问/
- [imx6][Linux4.9]IMX6平台 pinctrl子系统
内核笔记
嵌入式硬件驱动开发
文章目录1、Pinctrl子系统1.1、Pinctrl子系统的作用1.2、设备树中PIN的配置信息1.2、设备树中PIN的配置信息中的复用信息解析1.3、PINCTRL子系统驱动主控芯片硬件开发板内核版本imx6100ask_imx6ullLinux-4.9.881、Pinctrl子系统1.1、Pinctrl子系统的作用获取设备树中的pin信息;根据获取到的pin信息来设置pin的复用功能;根据获
- 正点原子imx6ull拷贝:通过SCP命令,实现Ubuntu和开发板拷贝
桃里桑
Linux软件linux运维服务器
1.网络设置https://blog.csdn.net/qq_39200110/article/details/1356495472.SCP指令拷贝文件的指令格式:scp文件用户名@ip地址:路径拷贝文件夹的指令格式:scp-r文件夹用户名@ip地址:路径例子:
[email protected]:/home/root1)test:要传输的文件2)root:为用户名,开发板默认的就是
- IMX6LL|内核模块
左手的月光
嵌入式硬件linux
内核模块基本概念作用解决linux内核可扩展性和可维护性相对较差的缺陷现代内核派系宏内核:关键功能和服务功能均在内核空间提供运行效率高扩展性较差微内核:内核空间只提供关键功能,服务功能在用户空间提供运行效率较低安全性、扩展性较高内核模块加载/卸载使用insmod命令加载使用rmmod命令卸载内核模块入口/出口module_init():加载模块式该函数自动执行,进行初始化操作module_exit
- IMX6LL|时钟控制
左手的月光
fpga开发单片机嵌入式硬件
一.时钟控制模块4个层次配置芯片时钟晶振时钟PLL与PFD时钟PLL选择时钟根时钟/外设时钟1.1晶振时钟系统时钟来源RTC时钟源:32.768KHz,连接RTC模块,进行时间计算。系统时钟:24MHz,芯片主晶振1.2PLL和PFD倍频时钟7路锁相环电路ARM_PLL:驱动ARM内核528_PLL:倍频参数固定为22,系统总线时钟USB1_PLL:驱动第一个USB物理层AUDIO_PLL:驱动音
- IMX6LL|串口通信
左手的月光
单片机嵌入式硬件
相关寄存器UART1时钟源CCM_CSCDR1初始化UART1UART1_UCR1:使能uart1、自动波特率UART1_UCR2:设置串口的发送帧格式奇偶校验位、软件复位数据长度发送完成标志、数据接受标志发送使能、接收使能UART1_UCR3:bit2置1,官方要求设置UART1_UFCR:时钟分频、发送与接收的fifo大小UART1_UBIR、UART1_UBMR:波特率收发数据UART1_U
- 正点原子imx6ull网络环境配置:开发板和电脑通过网线直连、电脑WiFi上网
桃里桑
Linux软件网络
1.硬件连接开发板通过网线连接电脑。电脑连接wifi2.VMware设置2.1添加桥接模式和NAT模式1)打开vm设置2)设置网络适配器为桥接模式,不要勾选“赋值物理网络连接状态”3)添加一个网络适配器并设置成NAT模式,供虚拟机上网。默认添加的网络适配器是NAT模式的,如果不是NAT模式则要手动设置成NAT模式。4)打开虚拟网络编辑器(1)打开菜单栏的编辑->虚拟网络编辑器(2)点击虚拟网络编辑
- IMX6LL|中断详解
左手的月光
嵌入式
一.通用中断控制器(GIC)1.概念通用中断控制器(GeneralInterruptController,GIC)是一种硬件设备,通常用于处理多核处理器或多处理器系统中的中断。GIC负责接收来自各个设备和处理器内核的中断信号,并根据优先级和配置规则将这些中断分派给适当的处理器核心进行处理。GIC的工作原理如下:中断请求:外设或处理器核心会向GIC发送中断请求信号,表示产生了一个中断。中断分发:GI
- Linux-ARM裸机(八)-中断(下半)
xiaoliu_henniu
linuxarm开发运维
通用中断驱动编写做Linux开发时候要把Ubuntu的ip地址设置为静态,防止发生变化。移植SDK包中断相关文件将SDK包中的文件core_ca7.h拷贝到工程中的“imx6ul”文件夹中。裁剪修改的内容参考试验“9_int”中core_ca7.h进行修改(直接使用正点提供的修改好的即可,copy过来直接用)。主要留下和GIC相关的内容,重点需要core_ca7.h中的10个API函数,这10个函
- 用Buildroot构建文件系统、u-boot和kernel镜像并介绍如何使用Buildroot构建一个适合100ask_imx6ull系列开发板的嵌入式Linux系统
鄧二寶official
Bootloaderu-bootkernel文件系统
一、准备工作:①确保你的Ubuntu下载安装了软件,比如ssh和nfs服务,确保Ubuntu能够ping通外网②将含有u-boot、kernel和rootfs和工具链的压缩文件拷贝Ubuntu(最好在线使用git下载,不然可能不是最新的)二、解压编译BootloaderBootloader介绍:Bootloader是在操作系统运行之前运行的一段代码,用于引导操作系统。通常每个操作系统都有一组专属的
- IMX6ULL|libgpiod控制IO
左手的月光
嵌入式
一.为何使用libgpiod控制IO在Linux中,最常见的读写GPIO方式就是用GPIOsysfsinterface,是通过操作/sys/class/gpio目录下的export、unexport、gpio{N}/direction,gpio{N}/value(用实际引脚号替代{N})等文件实现的,经常出现shell脚本里面。在kernel4.8开始,加入了libgpiod的支持;而原有基于sy
- 【Linux驱动】Linux的中断系统 | 中断的重要数据结构
一只大喵咪1201
Linux驱动linuxc语言arm开发驱动开发
作者:一只大喵咪1201专栏:《Linux驱动》格言:你只管努力,剩下的交给时间!目录Linux系统的中断⚽中断分类软中断和硬中断中断的上半部和下半部⚽tasklet⚽工作队列⚽threaded_irqLinux中断系统中的重要数据结构⚽irq_desc数组⚽irqaction结构体⚽irq_data结构体总结Linux系统的中断如上图所示,本喵使用的IMX6ULL也是ARM架构,中断也是异常的一
- imx6ull基于yocto工程的l汇编点亮ed
和平精英总指挥
arm开发
通过汇编点亮led在裸机状态下通过汇编点亮led,即没有操作系统,(ubootkernelrootfs都不需要实现)。led点亮原理1.GPIO复用根据原理图,找到led对应的引脚(pin),复用为GPIO(只有GPIO才能控制输入输出)芯片手册查询寄存器的方法,以CSI_HSYNC为例,在IOMUXC章节搜索CSI_HSYNC找到关键字是MUX意为复用,20E_01E0为该寄存器的地址,根据手册
- IMX6ULL采用YOCTO构建嵌入式Linux系统
望有恒
嵌入式软件开发linux运维服务器
1、创建工程项目文件夹:/home/jason/Linux/Yocto/fsl-release-yocto2、获取repo切换至工程项目文件夹,如:/home/user/Linux/Yocto/fsl-release-yocto,在该文件夹下使用如下命令:curlhttp://commondatastorage.googleapis.com/git-repo-downloads/repo>./re
- 基于ARM Cortex-A7和STM32F2的IMX6ULL多核处理器设计与实现
嵌入式杂谈
arm开发stm32嵌入式硬件
基于ARMCortex-A7和STM32F2的IMX6ULL多核处理器设计和实现是一个复杂且具有挑战性的嵌入式系统项目。在本文中,我们将介绍如何利用IMX6ULL多核处理器的ARMCortex-A7和STM32F2微控制器实现多核处理器系统,并提供相关的代码示例。1.系统概述IMX6ULL多核处理器是一款基于ARMCortex-A7内核的高性能处理器,同时还集成了图像处理单元、视频编解码器、LCD
- JAVA基础
灵静志远
位运算加载Date字符串池覆盖
一、类的初始化顺序
1 (静态变量,静态代码块)-->(变量,初始化块)--> 构造器
同一括号里的,根据它们在程序中的顺序来决定。上面所述是同一类中。如果是继承的情况,那就在父类到子类交替初始化。
二、String
1 String a = "abc";
JAVA虚拟机首先在字符串池中查找是否已经存在了值为"abc"的对象,根
- keepalived实现redis主从高可用
bylijinnan
redis
方案说明
两台机器(称为A和B),以统一的VIP对外提供服务
1.正常情况下,A和B都启动,B会把A的数据同步过来(B is slave of A)
2.当A挂了后,VIP漂移到B;B的keepalived 通知redis 执行:slaveof no one,由B提供服务
3.当A起来后,VIP不切换,仍在B上面;而A的keepalived 通知redis 执行slaveof B,开始
- java文件操作大全
0624chenhong
java
最近在博客园看到一篇比较全面的文件操作文章,转过来留着。
http://www.cnblogs.com/zhuocheng/archive/2011/12/12/2285290.html
转自http://blog.sina.com.cn/s/blog_4a9f789a0100ik3p.html
一.获得控制台用户输入的信息
&nbs
- android学习任务
不懂事的小屁孩
工作
任务
完成情况 搞清楚带箭头的pupupwindows和不带的使用 已完成 熟练使用pupupwindows和alertdialog,并搞清楚两者的区别 已完成 熟练使用android的线程handler,并敲示例代码 进行中 了解游戏2048的流程,并完成其代码工作 进行中-差几个actionbar 研究一下android的动画效果,写一个实例 已完成 复习fragem
- zoom.js
换个号韩国红果果
oom
它的基于bootstrap 的
https://raw.github.com/twbs/bootstrap/master/js/transition.js transition.js模块引用顺序
<link rel="stylesheet" href="style/zoom.css">
<script src=&q
- 详解Oracle云操作系统Solaris 11.2
蓝儿唯美
Solaris
当Oracle发布Solaris 11时,它将自己的操作系统称为第一个面向云的操作系统。Oracle在发布Solaris 11.2时继续它以云为中心的基调。但是,这些说法没有告诉我们为什么Solaris是配得上云的。幸好,我们不需要等太久。Solaris11.2有4个重要的技术可以在一个有效的云实现中发挥重要作用:OpenStack、内核域、统一存档(UA)和弹性虚拟交换(EVS)。
- spring学习——springmvc(一)
a-john
springMVC
Spring MVC基于模型-视图-控制器(Model-View-Controller,MVC)实现,能够帮助我们构建像Spring框架那样灵活和松耦合的Web应用程序。
1,跟踪Spring MVC的请求
请求的第一站是Spring的DispatcherServlet。与大多数基于Java的Web框架一样,Spring MVC所有的请求都会通过一个前端控制器Servlet。前
- hdu4342 History repeat itself-------多校联合五
aijuans
数论
水题就不多说什么了。
#include<iostream>#include<cstdlib>#include<stdio.h>#define ll __int64using namespace std;int main(){ int t; ll n; scanf("%d",&t); while(t--)
- EJB和javabean的区别
asia007
beanejb
EJB不是一般的JavaBean,EJB是企业级JavaBean,EJB一共分为3种,实体Bean,消息Bean,会话Bean,书写EJB是需要遵循一定的规范的,具体规范你可以参考相关的资料.另外,要运行EJB,你需要相应的EJB容器,比如Weblogic,Jboss等,而JavaBean不需要,只需要安装Tomcat就可以了
1.EJB用于服务端应用开发, 而JavaBeans
- Struts的action和Result总结
百合不是茶
strutsAction配置Result配置
一:Action的配置详解:
下面是一个Struts中一个空的Struts.xml的配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
&quo
- 如何带好自已的团队
bijian1013
项目管理团队管理团队
在网上看到博客"
怎么才能让团队成员好好干活"的评论,觉得写的比较好。 原文如下: 我做团队管理有几年了吧,我和你分享一下我认为带好团队的几点:
1.诚信
对团队内成员,无论是技术研究、交流、问题探讨,要尽可能的保持一种诚信的态度,用心去做好,你的团队会感觉得到。 2.努力提
- Java代码混淆工具
sunjing
ProGuard
Open Source Obfuscators
ProGuard
http://java-source.net/open-source/obfuscators/proguardProGuard is a free Java class file shrinker and obfuscator. It can detect and remove unused classes, fields, m
- 【Redis三】基于Redis sentinel的自动failover主从复制
bit1129
redis
在第二篇中使用2.8.17搭建了主从复制,但是它存在Master单点问题,为了解决这个问题,Redis从2.6开始引入sentinel,用于监控和管理Redis的主从复制环境,进行自动failover,即Master挂了后,sentinel自动从从服务器选出一个Master使主从复制集群仍然可以工作,如果Master醒来再次加入集群,只能以从服务器的形式工作。
什么是Sentine
- 使用代理实现Hibernate Dao层自动事务
白糖_
DAOspringAOP框架Hibernate
都说spring利用AOP实现自动事务处理机制非常好,但在只有hibernate这个框架情况下,我们开启session、管理事务就往往很麻烦。
public void save(Object obj){
Session session = this.getSession();
Transaction tran = session.beginTransaction();
try
- maven3实战读书笔记
braveCS
maven3
Maven简介
是什么?
Is a software project management and comprehension tool.项目管理工具
是基于POM概念(工程对象模型)
[设计重复、编码重复、文档重复、构建重复,maven最大化消除了构建的重复]
[与XP:简单、交流与反馈;测试驱动开发、十分钟构建、持续集成、富有信息的工作区]
功能:
- 编程之美-子数组的最大乘积
bylijinnan
编程之美
public class MaxProduct {
/**
* 编程之美 子数组的最大乘积
* 题目: 给定一个长度为N的整数数组,只允许使用乘法,不能用除法,计算任意N-1个数的组合中乘积中最大的一组,并写出算法的时间复杂度。
* 以下程序对应书上两种方法,求得“乘积中最大的一组”的乘积——都是有溢出的可能的。
* 但按题目的意思,是要求得这个子数组,而不
- 读书笔记-2
chengxuyuancsdn
读书笔记
1、反射
2、oracle年-月-日 时-分-秒
3、oracle创建有参、无参函数
4、oracle行转列
5、Struts2拦截器
6、Filter过滤器(web.xml)
1、反射
(1)检查类的结构
在java.lang.reflect包里有3个类Field,Method,Constructor分别用于描述类的域、方法和构造器。
2、oracle年月日时分秒
s
- [求学与房地产]慎重选择IT培训学校
comsci
it
关于培训学校的教学和教师的问题,我们就不讨论了,我主要关心的是这个问题
培训学校的教学楼和宿舍的环境和稳定性问题
我们大家都知道,房子是一个比较昂贵的东西,特别是那种能够当教室的房子...
&nb
- RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系
daizj
oraclermanfilespersetPARALLELISM
RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系 转
PARALLELISM ---
我们还可以通过parallelism参数来指定同时"自动"创建多少个通道:
RMAN > configure device type disk parallelism 3 ;
表示启动三个通道,可以加快备份恢复的速度。
- 简单排序:冒泡排序
dieslrae
冒泡排序
public void bubbleSort(int[] array){
for(int i=1;i<array.length;i++){
for(int k=0;k<array.length-i;k++){
if(array[k] > array[k+1]){
- 初二上学期难记单词三
dcj3sjt126com
sciet
concert 音乐会
tonight 今晚
famous 有名的;著名的
song 歌曲
thousand 千
accident 事故;灾难
careless 粗心的,大意的
break 折断;断裂;破碎
heart 心(脏)
happen 偶尔发生,碰巧
tourist 旅游者;观光者
science (自然)科学
marry 结婚
subject 题目;
- I.安装Memcahce 1. 安装依赖包libevent Memcache需要安装libevent,所以安装前可能需要执行 Shell代码 收藏代码
dcj3sjt126com
redis
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
前面3步应该没有问题,主要的问题是执行make的时候,出现了异常。
异常一:
make[2]: cc: Command not found
异常原因:没有安装g
- 并发容器
shuizhaosi888
并发容器
通过并发容器来改善同步容器的性能,同步容器将所有对容器状态的访问都串行化,来实现线程安全,这种方式严重降低并发性,当多个线程访问时,吞吐量严重降低。
并发容器ConcurrentHashMap
替代同步基于散列的Map,通过Lock控制。
&nb
- Spring Security(12)——Remember-Me功能
234390216
Spring SecurityRemember Me记住我
Remember-Me功能
目录
1.1 概述
1.2 基于简单加密token的方法
1.3 基于持久化token的方法
1.4 Remember-Me相关接口和实现
- 位运算
焦志广
位运算
一、位运算符C语言提供了六种位运算符:
& 按位与
| 按位或
^ 按位异或
~ 取反
<< 左移
>> 右移
1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。
例如:9&am
- nodejs 数据库连接 mongodb mysql
liguangsong
mongodbmysqlnode数据库连接
1.mysql 连接
package.json中dependencies加入
"mysql":"~2.7.0"
执行 npm install
在config 下创建文件 database.js
- java动态编译
olive6615
javaHotSpotjvm动态编译
在HotSpot虚拟机中,有两个技术是至关重要的,即动态编译(Dynamic compilation)和Profiling。
HotSpot是如何动态编译Javad的bytecode呢?Java bytecode是以解释方式被load到虚拟机的。HotSpot里有一个运行监视器,即Profile Monitor,专门监视
- Storm0.9.5的集群部署配置优化
roadrunners
优化storm.yaml
nimbus结点配置(storm.yaml)信息:
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional inf
- 101个MySQL 的调节和优化的提示
tomcat_oracle
mysql
1. 拥有足够的物理内存来把整个InnoDB文件加载到内存中——在内存中访问文件时的速度要比在硬盘中访问时快的多。 2. 不惜一切代价避免使用Swap交换分区 – 交换时是从硬盘读取的,它的速度很慢。 3. 使用电池供电的RAM(注:RAM即随机存储器)。 4. 使用高级的RAID(注:Redundant Arrays of Inexpensive Disks,即磁盘阵列
- zoj 3829 Known Notation(贪心)
阿尔萨斯
ZOJ
题目链接:zoj 3829 Known Notation
题目大意:给定一个不完整的后缀表达式,要求有2种不同操作,用尽量少的操作使得表达式完整。
解题思路:贪心,数字的个数要要保证比∗的个数多1,不够的话优先补在开头是最优的。然后遍历一遍字符串,碰到数字+1,碰到∗-1,保证数字的个数大于等1,如果不够减的话,可以和最后面的一个数字交换位置(用栈维护十分方便),因为添加和交换代价都是1