- 【Xlinx】【ZynqMP】petalinux2020.1版本QSPI FLASH启动linux教程
founderhan
xilinx嵌入式linux
一,背景使用petalinux2020.1版本,编译打包后得到的系统文件,希望烧录到qspiflash,通过qspiflash启动系统。过程中遇到了很多问题,包括官网的资料都不很全面,因此这里总结问题的解决办法,如果你遇到了下面的几种问题,那么这篇文章应该对你有所帮助。1,qspi启动时,报“Offsetexceedsdevicelimit”或者“Sizeexceedspartitionordev
- 14025.ZynqMP System Monitors 监控模块
xhome516
14000-xilinxxilinx
文章目录1背景2ZynqMpSystemMonitors2.1Introduction2.2Features2.3PLSYSMONModule2.4PSSYSMONModule2.5编程示例1背景本文背景需要获取ZynqMp的PS温度、PL温度,以及在PLsysmon部分,VP_VN外接有pmic采集的电压。参考xilinx手册ug1085,ug1087,ug580.2ZynqMpSystemMo
- zynqmp Linux + 裸机 (A53-0 Linux,A53-1 2 3 裸机大数据量实时处理,R5-0 协议处理,R5-1 屏幕显示逻辑等)填坑笔记
小坏坏_
ZynqUltraScale+fpga开发
fpga和arm采用预留内存的方式,采用neon协处理器只能做到250M/S的速度,预留内存采用mmap的方式,当读取内存页的时候采用缺页中断的方式,导致速度拖沓而且预留内存没有进行Linux系统的内存管理(在系统内memcpy的速度可以到5G/S),自己写DMA驱动,虽然可以用Linux本身的框架,但是结果不确定,1.首先CPU涉及Linux的调度损失,可能数据处理的实时性受到影响,即使用cpu
- 赛灵思 TSN 解决方案
李易达
linux运维服务器
赛灵思TSN解决方案赛灵思TSNIP支持软件支持内核配置设备树TSN系统流量类PCP和流量等级生成TSN流量:ConvertingLegacyApplicationstoTSN支持的PTP配置文件zynqmp中R5上的PTP卸载运行gPTP(802.1AS):运行PTP1588v2:运行Qbv/TimeAwareShaper:使用Wireshark进行测试:运行IPIC:演示抢占的步骤Runnin
- Xilinx ZynqMp VCU编解码
JabinQu
嵌入式c语言c++fpga开发图像处理
ZynqMPVCU是XilinxZynqUltraScale+MPSoC系列中的一个视频编解码单元,它提供了硬件加速的视频编解码功能,可以帮助开发人员更高效地实现视频应用。VideoCodecUnit(VCU)核编码器块是采用H.265(ISO/IEC23008-2高效视频编码)和H.264(ISO/IEC14496-10高级视频编码)标准对视频流进行处理的视频编码器引擎。1.使用方法开发板上安装
- ISP 图像信号处理器数字IP实现
Ryan_bian
Camerafpga开发isp图像处理
ZynqMP-ISPDemo基于KV260(ARM+FPGA)平台,设计实现了CIS(AR1335接在IAS1口)配置,MIPI接收,ISP处理,DP显示。3MP-RAW10@30FPS。Demo软件基于Vitis裸机环境开发,实现简单的2A控制。Linux软件请见ZynqMP-ISP图像信号处理器软件框架ISPLiteIP基于verilog实现了ISP常规处理模块,用于处理CIS(CMOSIma
- 非petallinux操作的xilinx zynqmp openamp核间通信框架搭建核测试(APU :linux2021 + rpu1(裸机))
kissskill
linuxzynqmpamp核间通信fpga开发zynqlinuxzynqmprpmsgzynqmpamp核间通信
不使用petallinux构建apu核rpu之间的核间通信一:首先需要在RPU中创建openamp裸机程序:居于openamp框架实现rpmag通信打开vitis平台将xsa导入并创建平台工程,然后再平台工程中找到platform.spr文件并打开,可以看到平台添加的cpu核支持包:首先需要在平台下面对应的芯片中,打开boardsupport支持包(modifyBSPsetting),选中里面的l
- Xilinx zynqmp VCU使用
三遍猪
Xilinxlinux
参考ZynqUltraScale+MPSoCVCUTRD2019.1ZynqUltraScale+MPSoCVCUTRD2019.1-VCUTRD:MultiStreamZynqUltraScale+MPSoCVCUTRD2019.1-RunandBuildFlowXilinxDRMKMSDisplayPort1.4TXSubsystemDriverXilinxDRMKMSHDMI-TxDrive
- Xilinx ZynqMP相关
hbcbgcx
FPGA
VivadoDesignSuite-HLx版本生产力成倍加速VivadoDesignSuiteHLx版本-加速高层次设计Vivado®DesignSuiteHLx现已提供部分可重配置功能,该功能随VivadoHLDesignEdition和HLSystemEdition免费提供。保修期内的客户可重新生成其许可证,获得该特性。部分重配置可以降价提供给VivadoWebPACK™版本。VivadoHL
- zynqmp 设备树中断号描述在芯片中的对应
kissskill
fpga开发linuxzynqmp中断号
查看ug1085-zynq-ultrascale-trm.pdf13节interrupt中可以知道以下内容:可以看到实际IPI通道的中断号在芯片中标记的是61~67,PL端到PS端的中端号是group0=121~128对应PL端中断号0~7group1=136~143对应PL端中断号8~15由于共享和私有中断占有前面32个中断号,所以实际的设备树在描述的时候需要减去32作为中断号的描述:如下:my
- zynqmp之启动
feitingfj
armlinuxzynqlinux嵌入式zynqmparm
目录相关环境搭建vivado工程搭建Vitis工程编译生成启动部分所需源码地址SD卡启动文件相关参考 五一在家,不能出门,调试了Xilinx的ZynqUltraScale+MPSoCs系列的芯片,黑金的AXU2CGB板子。这几天整理记录下。 之前以为ZynqUltraScale+MPSoCs系列的芯片和zynq的应该大同小异,现在看看还是有区别的,主要体现在BOOT.bin的生成上,具体的详见
- zynqmp APU(linux)和RPU(裸机)通过IPI中断实现同步
kissskill
linuxzynqmpIPIIPI中断非AMP框架zynqmp程序人生
从内核ipi_mailbox源码触发自己实现APU(linux)和RPU(裸机)核间同步操作APU核RPU可以通过共享内存交互数据,APU向共享内存写数据后,RPU收到ipi中断,然后读取完数据,将触发中断告知APU。以此实现通步。需要更改的linux驱动基于platform框架实现如下:#include#include#include#include#include#include#includ
- ZynqMP Cortex-R5调试FSBL
sudaroot
ZynqMPhtml5htmlcss
这次用的是Cortex-R5-0这个核运行FSBL且应用程序也是R5,与上一篇文章《ZynqUltrScale+调试FSBL代码》用A53有些许不同。0、平台工程只能创建在R5核上,且整个应用工程不要创建A53工程,否则编译会报警代码溢出。1、在QSPI的0地址烧录一份bootgen生成的BOOT.bin文件。2、把文本编辑框中的-Os-flto-ffat-lto-objects删除了。3、修改启
- zynq或zynqmp通过emio和gmii to rgmii ip使用pl端以太网调试
newuart
zynqarmfpga开发
主要内容:以太网调试问题中gmiitorgmii问题较多:主要涉及到IP参数配置、Linux设备树等Vivado关键配置:PHYAddress默认8,这里不是填写phy地址,一定要和phy地址不一样才能工作,这里用于虚拟一个phy设置,用于配置gmiitorgmii的工作速率,地址是0x10Provide2nsskewonRGMIITXC,这个参数就是要不要把TXC延时2ns,这个选Skewadd
- 嵌入式开发之zynqMp ---Zynq UltraScale+ MPSoC 图像编码板zcu102
alangaixiaoxiao
Petalinux
嵌入式开发之zynqMp—ZynqUltraScale+MPSoC图像编码板zcu1021.1xilinxzynqMp架构1.1.116nm级别工艺ZynqUltraScale+MPSoC架构Xilinx新一代Zynq针对控制、图像和网络应用推出了差异化的产品系,这在Xilinx早期的宣传和现在已经发布的文档里已经说得很清楚了。她的产品系如图2所示。图2产品表从图2看到,这个系列的Zynq算是8核
- linux驱动开发----SPI驱动(SPI基础知识)
嵌入式小胖
linux驱动开发嵌入式linuxzynqMPSPI驱动SPI工作模式
注:本文针对xilinx的zynqMP系列芯片讲解SPI驱动一、引言SPI接口是Motorola首先提出的全双工三线同步串行外围接口,采用主从模式(MasterSlave)架构。支持多slave模式应用,一般仅支持单Master。时钟由Master控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSBfirst)。SPI接口有2根单向数据线,为全双工通信,目前应用中的数据速率可达几Mbp
- vitis 2021.1 ubuntu 20.04 LTS
乾 乾
Linux命令Linux驱动FPGA/ASCIubuntulinuxarm
sudoapt-getinstallocl-icd-libopencl1sudoapt-getinstallocl-icd-opencl-devsudoapt-getinstallopencl-headerssudoaptinstalllibstdc++6sudoaptinstalllibncurses5chmod+xxsetup./xsetup还要设置一下zynqMP的交叉编译器的环境路径。继续
- nvme-cli使用
黑客三遍猪
存储
作者QQ群:852283276微信:arm80x86微信公众号:青儿创客基地B站:主页https://space.bilibili.com/208826118参考IntelISDCT,SanDiskSCLI和NVMe-CLI三款SSD工具基本操作简介nvme-cli常用指令nvme-cli官网显示系统内的NVMeSSD采用list命令,root@zynqmp:~#nvmelistNodeSNMod
- Xilinx zynq zynqMP Petalinu安装和使用
黑客三遍猪
Xilinx
安装petalinux升级了安装方式变化,2015.2.1会自动新建子文件夹,而2018.2需要手动设置,每次都折腾一下,记录一下。cd~/program/mnt/hgfs/F/petalinux-v2018.2-final-installer.runpetalinux-v2018.2-final/mnt/hgfs/F/petalinux-v2015.2.1-final-installer.run
- Xilinx zynq zynqMP 制作根文件系统
黑客三遍猪
Xilinx
参考狗熊王的系列博客一步一步制作yaffs/yaffs2根文件系统XilinxWikiBuildandModifyaRootfs在xilinx的SOCFPGA平台zynq(arm)和zynqMP(arm64)平台上做验证。#文件准备busybox执行命令,解压busyboxzc@ubuntu:~/xilinx/app$tar-jxvfbusybox-1.28.3.tar.bz2编译busyboxz
- zynqmp + igh ethercat主站方案设计及程序
huoxian00
zynqmp纯PS端的主站方案,不涉及PL端,主站代码是IGH1.5.2,硬件平台xilinx官方zc102开发板,4核A53架构最便宜的开发板是FPGA开发板UltraScale+ZU3EGZYNQMPSOCEdgeboard深度学习AIhttps://item.taobao.com/item.htm?spm=a230r.1.14.24.17b83dadniZ03L&id=60870604638
- 第4章 利用Petalinux工程工作
Solo1103
PetalinuxPetalinux
建立一个新的工程在从vivado中导出硬件描述文件后,下一步就是建立并初始化新的Petalinux工程。petalinux-create工具用于穿件基本工程目录:petalinux-create--typeproject--template--name这些参数分别为:--template:TYPE支持的CPU为zynqMP、zynq、mircroblaze。--name:你将要构建的工程名字。这个
- zynqMP axi-dma详解
DSP小胖
zynqMP
AXIDMA:1.基本介绍官方解释是为内存与AXI4-Stream外设之间提供高带宽的直接存储访问,其可选的scatter/gather功能可将CPU从数据搬移任务中解放出来。在ZYNQ中,AXIDMA就是FPGA访问DDR3的桥梁,不过该过程受ARM的监控和管理。如图1所示,AXIDMAIP有6个接口,S_AXI_LITE是ARM配置dma寄存器的接口,M_AXI_SG是从(往)存储器加载(上传
- device tree中对PCIe的描述
ambercctv
/dts-v1/;/{compatible="xlnx,zynqmp-zu9","xlnx,zynqmp";#address-cells=;#size-cells=;model="ZCU102RDB";cpus{#address-cells=;#size-cells=;cpu@0{compatible="arm,cortex-a53","arm,armv8";device_type="cpu"
- zynqmp pl端eth phy选用ar8035
tccxy
zynqmppl选用ar8035zynqmp的ps端链接ar8035phy时只需要更改dts,增加rgmii-id的方式即可&gem0{status="okay";local-mac-address=[000012345670];phy-handle=;phy-mode="rgmii-id";pinctrl-names="default";pinctrl-0=;phy1:phy@4{reg=;};
- zynq& zynqmp使用gpt分区
tccxy
zynq系列使用gpt分区启动关于gpt和mbr的区别这里就不再叙述了gpt的好处是可以最多扩展128个分区,无主分区和逻辑分区的区别,这为个性化的版本管理和控制提供了很好的基础zynq系列默认使用的是MBR分区,也就是说如果直接写入gpt分区,zynq的片子是起不来的,感兴趣的可以试一下这里提供了一种方法使zynq可以从gpt分区启动,另一种是修改fsbl也可以话不多说1先将sd或者emmc分区
- ZynqMp-OpenCv交叉编译
@大象鼻子长@
zynqmplinux
文章目录1下载源码2编译Host版本的库3测试Host版本库4编译ZynqMp版本的库5测试ZynqMp版本库书接上回ZynqMp-Qt程序编译,开始编译Opencv。1下载源码opencv版本3.4.5ffmpeg版本4.0.5zllib版本1.2.11libpng版本1.6.35tiff版本4.0.9jpeg9d版本x264-snapshots版本20171231-stablev4l-util
- Zynq----Xilinx SDK工程环境设置
海歌也疯狂
Xilinx
①选择芯片型号,ps7_cortexa9是针对Zynq7000系列,psu_cortexa53是针对ZynqMp系列。②创建静态库工程的设置③库包含自己的h文件文件夹④软件工程包含库的h文件文件夹⑤软件工程包含链接库目录,并进行链接操作-L:添加库文件搜索目录-l:指定链接的库文件名称,名称不用写全名libAstro.a,只用写Astro即可。(多写也对)库的命名比较简单,第一个特点是所有的库以l
- ZynqMp开发环境搭建(Ubuntu)
@大象鼻子长@
初学Linux,现在要在Linux系统上搭建ZynqMp的开发环境。之前虚拟机上用的Ubuntu,想换成真~Linux,记录一下安装过程。1.启动u盘制作1.使用Rufus软件,下载后直接使用。2.选择镜像ubuntu-18.04.2-desktop-amd64.iso,点击开始,等待制作完成。2.Ubuntu安装版本:18.04.021.bios改为u盘启动。2.进入Ubuntu安装界面,先选择
- LWIP协议栈中更改tcp_poll()回调函数调用频率和协议循环处理事件频率
yobuwen
tcp.c文件中,tcp_poll()回调函数被周期性调用,每interval秒调用两次。在XilinxSDKTCPserverdemo中interval最小值是1秒,即poll_callbak将被500ms调用一次。poll函数在tcp.c文件被函数tcp_slowtmr()周期性调用,调用周期取决于协议栈定时器中断频率的设置。定时器中断发生会调用platform_zynqmp.c中的timer
- HQL之投影查询
归来朝歌
HQLHibernate查询语句投影查询
在HQL查询中,常常面临这样一个场景,对于多表查询,是要将一个表的对象查出来还是要只需要每个表中的几个字段,最后放在一起显示?
针对上面的场景,如果需要将一个对象查出来:
HQL语句写“from 对象”即可
Session session = HibernateUtil.openSession();
- Spring整合redis
bylijinnan
redis
pom.xml
<dependencies>
<!-- Spring Data - Redis Library -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redi
- org.hibernate.NonUniqueResultException: query did not return a unique result: 2
0624chenhong
Hibernate
参考:http://blog.csdn.net/qingfeilee/article/details/7052736
org.hibernate.NonUniqueResultException: query did not return a unique result: 2
在项目中出现了org.hiber
- android动画效果
不懂事的小屁孩
android动画
前几天弄alertdialog和popupwindow的时候,用到了android的动画效果,今天专门研究了一下关于android的动画效果,列出来,方便以后使用。
Android 平台提供了两类动画。 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变)。
第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。
- js delete 删除机理以及它的内存泄露问题的解决方案
换个号韩国红果果
JavaScript
delete删除属性时只是解除了属性与对象的绑定,故当属性值为一个对象时,删除时会造成内存泄露 (其实还未删除)
举例:
var person={name:{firstname:'bob'}}
var p=person.name
delete person.name
p.firstname -->'bob'
// 依然可以访问p.firstname,存在内存泄露
- Oracle将零干预分析加入网络即服务计划
蓝儿唯美
oracle
由Oracle通信技术部门主导的演示项目并没有在本月较早前法国南斯举行的行业集团TM论坛大会中获得嘉奖。但是,Oracle通信官员解雇致力于打造一个支持零干预分配和编制功能的网络即服务(NaaS)平台,帮助企业以更灵活和更适合云的方式实现通信服务提供商(CSP)的连接产品。这个Oracle主导的项目属于TM Forum Live!活动上展示的Catalyst计划的19个项目之一。Catalyst计
- spring学习——springmvc(二)
a-john
springMVC
Spring MVC提供了非常方便的文件上传功能。
1,配置Spring支持文件上传:
DispatcherServlet本身并不知道如何处理multipart的表单数据,需要一个multipart解析器把POST请求的multipart数据中抽取出来,这样DispatcherServlet就能将其传递给我们的控制器了。为了在Spring中注册multipart解析器,需要声明一个实现了Mul
- POJ-2828-Buy Tickets
aijuans
ACM_POJ
POJ-2828-Buy Tickets
http://poj.org/problem?id=2828
线段树,逆序插入
#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>using namespace std;#define N 200010struct
- Java Ant build.xml详解
asia007
build.xml
1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant的好处跨平台 --因为ant是使用java实现的,所以它跨平台使用简单--与ant的兄弟make比起来语法清晰--同样是和make相比功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有
- android按钮监听器的四种技术
百合不是茶
androidxml配置监听器实现接口
android开发中经常会用到各种各样的监听器,android监听器的写法与java又有不同的地方;
1,activity中使用内部类实现接口 ,创建内部类实例 使用add方法 与java类似
创建监听器的实例
myLis lis = new myLis();
使用add方法给按钮添加监听器
- 软件架构师不等同于资深程序员
bijian1013
程序员架构师架构设计
本文的作者Armel Nene是ETAPIX Global公司的首席架构师,他居住在伦敦,他参与过的开源项目包括 Apache Lucene,,Apache Nutch, Liferay 和 Pentaho等。
如今很多的公司
- TeamForge Wiki Syntax & CollabNet User Information Center
sunjing
TeamForgeHow doAttachementAnchorWiki Syntax
the CollabNet user information center http://help.collab.net/
How do I create a new Wiki page?
A CollabNet TeamForge project can have any number of Wiki pages. All Wiki pages are linked, and
- 【Redis四】Redis数据类型
bit1129
redis
概述
Redis是一个高性能的数据结构服务器,称之为数据结构服务器的原因是,它提供了丰富的数据类型以满足不同的应用场景,本文对Redis的数据类型以及对这些类型可能的操作进行总结。
Redis常用的数据类型包括string、set、list、hash以及sorted set.Redis本身是K/V系统,这里的数据类型指的是value的类型,而不是key的类型,key的类型只有一种即string
- SSH2整合-附源码
白糖_
eclipsespringtomcatHibernateGoogle
今天用eclipse终于整合出了struts2+hibernate+spring框架。
我创建的是tomcat项目,需要有tomcat插件。导入项目以后,鼠标右键选择属性,然后再找到“tomcat”项,勾选一下“Is a tomcat project”即可。具体方法见源码里的jsp图片,sql也在源码里。
补充1:项目中部分jar包不是最新版的,可能导
- [转]开源项目代码的学习方法
braveCS
学习方法
转自:
http://blog.sina.com.cn/s/blog_693458530100lk5m.html
http://www.cnblogs.com/west-link/archive/2011/06/07/2074466.html
1)阅读features。以此来搞清楚该项目有哪些特性2)思考。想想如果自己来做有这些features的项目该如何构架3)下载并安装d
- 编程之美-子数组的最大和(二维)
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
import java.util.Random;
public class MaxSubArraySum2 {
/**
* 编程之美 子数组之和的最大值(二维)
*/
private static final int ROW = 5;
private stat
- 读书笔记-3
chengxuyuancsdn
jquery笔记resultMap配置ibatis一对多配置
1、resultMap配置
2、ibatis一对多配置
3、jquery笔记
1、resultMap配置
当<select resultMap="topic_data">
<resultMap id="topic_data">必须一一对应。
(1)<resultMap class="tblTopic&q
- [物理与天文]物理学新进展
comsci
如果我们必须获得某种地球上没有的矿石,才能够进行某些能量输出装置的设计和建造,而要获得这种矿石,又必须首先进行深空探测,而要进行深空探测,又必须获得这种能量输出装置,这个矛盾的循环,会导致地球联盟在与宇宙文明建立关系的时候,陷入困境
怎么办呢?
 
- Oracle 11g新特性:Automatic Diagnostic Repository
daizj
oracleADR
Oracle Database 11g的FDI(Fault Diagnosability Infrastructure)是自动化诊断方面的又一增强。
FDI的一个关键组件是自动诊断库(Automatic Diagnostic Repository-ADR)。
在oracle 11g中,alert文件的信息是以xml的文件格式存在的,另外提供了普通文本格式的alert文件。
这两份log文
- 简单排序:选择排序
dieslrae
选择排序
public void selectSort(int[] array){
int select;
for(int i=0;i<array.length;i++){
select = i;
for(int k=i+1;k<array.leng
- C语言学习六指针的经典程序,互换两个数字
dcj3sjt126com
c
示例程序,swap_1和swap_2都是错误的,推理从1开始推到2,2没完成,推到3就完成了
# include <stdio.h>
void swap_1(int, int);
void swap_2(int *, int *);
void swap_3(int *, int *);
int main(void)
{
int a = 3;
int b =
- php 5.4中php-fpm 的重启、终止操作命令
dcj3sjt126com
PHP
php 5.4中php-fpm 的重启、终止操作命令:
查看php运行目录命令:which php/usr/bin/php
查看php-fpm进程数:ps aux | grep -c php-fpm
查看运行内存/usr/bin/php -i|grep mem
重启php-fpm/etc/init.d/php-fpm restart
在phpinfo()输出内容可以看到php
- 线程同步工具类
shuizhaosi888
同步工具类
同步工具类包括信号量(Semaphore)、栅栏(barrier)、闭锁(CountDownLatch)
闭锁(CountDownLatch)
public class RunMain {
public long timeTasks(int nThreads, final Runnable task) throws InterruptedException {
fin
- bleeding edge是什么意思
haojinghua
DI
不止一次,看到很多讲技术的文章里面出现过这个词语。今天终于弄懂了——通过朋友给的浏览软件,上了wiki。
我再一次感到,没有辞典能像WiKi一样,给出这样体贴人心、一清二楚的解释了。为了表达我对WiKi的喜爱,只好在此一一中英对照,给大家上次课。
In computer science, bleeding edge is a term that
- c中实现utf8和gbk的互转
jimmee
ciconvutf8&gbk编码
#include <iconv.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include <sys/stat.h>
int code_c
- 大型分布式网站架构设计与实践
lilin530
应用服务器搜索引擎
1.大型网站软件系统的特点?
a.高并发,大流量。
b.高可用。
c.海量数据。
d.用户分布广泛,网络情况复杂。
e.安全环境恶劣。
f.需求快速变更,发布频繁。
g.渐进式发展。
2.大型网站架构演化发展历程?
a.初始阶段的网站架构。
应用程序,数据库,文件等所有的资源都在一台服务器上。
b.应用服务器和数据服务器分离。
c.使用缓存改善网站性能。
d.使用应用
- 在代码中获取Android theme中的attr属性值
OliveExcel
androidtheme
Android的Theme是由各种attr组合而成, 每个attr对应了这个属性的一个引用, 这个引用又可以是各种东西.
在某些情况下, 我们需要获取非自定义的主题下某个属性的内容 (比如拿到系统默认的配色colorAccent), 操作方式举例一则:
int defaultColor = 0xFF000000;
int[] attrsArray = { andorid.r.
- 基于Zookeeper的分布式共享锁
roadrunners
zookeeper分布式共享锁
首先,说说我们的场景,订单服务是做成集群的,当两个以上结点同时收到一个相同订单的创建指令,这时并发就产生了,系统就会重复创建订单。等等......场景。这时,分布式共享锁就闪亮登场了。
共享锁在同一个进程中是很容易实现的,但在跨进程或者在不同Server之间就不好实现了。Zookeeper就很容易实现。具体的实现原理官网和其它网站也有翻译,这里就不在赘述了。
官
- 两个容易被忽略的MySQL知识
tomcat_oracle
mysql
1、varchar(5)可以存储多少个汉字,多少个字母数字? 相信有好多人应该跟我一样,对这个已经很熟悉了,根据经验我们能很快的做出决定,比如说用varchar(200)去存储url等等,但是,即使你用了很多次也很熟悉了,也有可能对上面的问题做出错误的回答。 这个问题我查了好多资料,有的人说是可以存储5个字符,2.5个汉字(每个汉字占用两个字节的话),有的人说这个要区分版本,5.0
- zoj 3827 Information Entropy(水题)
阿尔萨斯
format
题目链接:zoj 3827 Information Entropy
题目大意:三种底,计算和。
解题思路:调用库函数就可以直接算了,不过要注意Pi = 0的时候,不过它题目里居然也讲了。。。limp→0+plogb(p)=0,因为p是logp的高阶。
#include <cstdio>
#include <cstring>
#include <cmath&