- hi3520d内核编译编译方法
行者如风gp
1.安装uclibc交叉编译器(注意,需要有sudo权限或者root权限):进入hi3520D_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv100nptl-linux目录,运行chmod+xcross.install,然后运行./cross.install即可,安装之后可以查看环境编译,相关的目录是是否已添加到path中2.拷贝.config文件进入到内核源码目录下
- Minigui3在海思Hi3520D/Hi3531平台上运行
jhting515
C/C++
Minigui3在海思Hi3520D/Hi3531平台上运行WORD里直接贴出来的,有图片,看不到哦!!!!可以在这里下载PDF!完整代码和PDF下载位置:http://note.youdao.com/share/?id=6eb7262501c051b48680a73b6969e06d&type=note完整代码下载:http://note.youdao.com/share/?id=b312892
- 海思hi3516、hi3519 中 online 与 offline 有什么区别
Ternence_Hsu
海思
VI和VPSS的协作模式分为以下2种(模式切换由load脚本参数控制,对应sys模块参数vi_vpss_online):VI/VPSS离线模式是指VI进行时序解析后将图像数据写出到DDR,VPSS从DDR中载入VI采集的数据进行图像处理,是传统Hi3518/Hi3520D等芯片的VI/VPSS的协作模式。VI/VPSS在线模式是指VI进行时序解析后直接在芯片内部将数据传递到VPSS,中间无DDR写
- ffmpeg学习历程
Qiuoooooo
ffmpegffmpeg
一.需求将ffmpeg移植到arm-linux环境(我的是海思HI35XX系列平台:HI3531A,HI3521A,HI3520D等),实现将H264裸流(我的是直接从海思编码模块VENC获取)封装成.mp4或.avi格式的视频文件。由于嵌入式环境FLASH空间有限,必须将ffmpeg裁剪得足够小。实现代码:ffmpeg实现将H264裸流封装成.mp4或.avi文件二.ffmpeg学习●跟着雷神认
- Linux系统“/dev/mem”设备使用详解(Hi3520D)
Acuity.
嵌入式Linux海思
文章目录1前言2“/dev/mem”设备2.1设备使用优点2.2设备使用不足2.3使用方法3应用例子4参考文章1前言 linux系统用户态访问内核态通常有这几种方式:设备文件,“read/write/ioctl”,常用的方式prcfs进程文件系统sysfs虚拟文件系统,内存映射(mmap)netlinksocket 本文描述的是“设备文件”与“内存映射(mmap)”的一个应用范畴,linux系
- 海思HI3520D设备上移植QT5.5.1
ProYuan28
海思开发
一、前言QT由于跨平台而得到广泛的应用,并且QT也是开源的,现在许多的嵌入式产品上都使用QT界面,本文是在海思HI3520D嵌入式设备上对QT进行移植,使用arm-hisiv300-linux-交叉编译器,实现鼠标实现对于QT界面的操作。二、QT的交叉编译1、下载网址:https://download.qt.io/archive/qt/5.5/5.5.1/single/2、解压qt-everywh
- 新手玩海思HI3520D开发板(一,升级)
AndroidJMC
Hi3520d海思
1、配置tftp服务器#可以使用任意的tftp服务器,将package/image_uclibc(或image_glibc)下的相关文件拷贝到tftp服务器目录下。2、参数配置#单板上电后,敲任意键进入u-boot。设置serverip(即tftp服务器的ip)、ipaddr(单板ip)和ethaddr(单板的MAC地址)。setenvserverip192.168.5.12//设置电脑的ip地址
- hi3520d无线视网络频传输开发总结
24k极客
嵌入式处理器rt3070hi3520d
1.播放rtsp流地址,在vlc上打开rtsp://192.168.1.21/xstrive02.vi/etc/init.d/rcSinsmodrtutil3070ap.koinsmodrt3070ap.koinsmodrtnet3070ap.koifconfigra0upifconfigra0192.168.1.21netmask255.255.255.0cd/usr/xstrive/ko&&.
- FAAC1.28 在海思HI3520D/HI3515A平台linux中的编译 优化
sooth2008
VLC开发流媒体FAAC内存优化
FAAC1.28的下载地址:http://www.audiocoding.com/downloads.html如何编译:1../configure--host=arm-hisiv100nptl-linux--prefix=/home/ssy/lib2.make3.makeinstall优化在不修改源码的情况下,faac的内存占用非常高,每路音频在13M左右。如果多路音频的话,内存将很快耗尽。搜索M
- rtl8188etv无线网卡驱动移植
imlsq
IPCrtl8188无线网卡WI-FI网卡3518E3520d
RTL8188ETV驱动移植hi3520d,hi3518e平台驱动RTL8188ETV无线网卡在阅读本文档之前,需要熟悉基本的hi3520d,hi3518e环境搭建与烧写流程,本文档相关源码可以通过百度网盘下载。http://pan.baidu.com/s/1o8JQFua硬件图片源码目录结构把rtl8188etv无线网卡移植到hi3520d平台,源码编译依赖linux的kernel,最终整理出来
- 【Hisi音频】Hi3520D音频输出调试
PHILOS_THU
音频海思
一、原理Hi3520D音频(AUDIO)模块包括音频输入、音频输出、音频编码、音频编码和音频解码模块。音频输入和输出模块通过对Hi3520D芯片SIO设备的控制实现相应的音频输入输出功能;编码和解码模块则提供对ADPCM、G726、G711、PCM格式的音频编解码功能。读取本地音频进行输出播放,主要原理如下:芯片利用DMA将内存中的数据传输到AO设备。AO设备通过I2S时序或PCM时序向Audio
- 在uboot中使用UDP协议实现UDP通信
funanfeng
本文所讲的uboot是基于海思芯片的uboot(如HI3520D)。因为TFTP协议是基于UDP协议,所以本文大部分代码是直接使用TFTP的。在写代码之前复习一下TFTP报文和UDP报文的结构。每行占64位(bit),共8字节(byte)。UDP报文:太网包头+IP包头+UDP包头+数据TFTP报文:太网包头+IP包头+UDP包头+TFTP包头+数据填充太网包头+IP包头+UDP包头的话直接调用T
- Hi3520D上手过程之Kernel学习(一)
Callon_H
linux嵌入式c语言
目录一、Kernel的入口二、Kernel的启动过程1.head.S过程分析(1)判断内核版本是否支持该CPU(2)保存RAM的起始物理地址到r8寄存器(3)校验参数的合法性(__vet_atags)(4)创建一级页表(5)保存最后的跳转地址,设置处理器和MMU相关寄存器(6)使能MMU(7)head.S的终点一、Kernel的入口在前一篇博客中,总结了u-boot的过程,最后定义了u-boot的
- Hi3520D上手过程之U-boot学习
Callon_H
单片机linux嵌入式交叉编译c语言
目录一、烧写过程初探1.说明文件2.编译3.烧写二、U-boot学习1.u-boot流程(1)u-boot起点(2)u-boot引导过程(3)u-boot终点2.u-boot命令新增-update一、烧写过程初探当拿到SDK时,找到源码路径解压,一般如下所示:运行sdk.unpack即可进行解压,若遇到不可运行的问题,可参考https://blog.csdn.net/u013286409/arti
- 工程中编写自己的makefile---8 编写Arm开发板的makefile
打个飞机去美国
Makefile
1编写开发板的程序的makefile基于以上的学习,下面编写一个基于Hi3520D开发板的程序工程目录结构如下.├──Components│├──Common││├──xx_inc.h││├──xx_type.h│├──HAL││├──Common│││├──xx_inc_hal.h││├──Include│││├──xx_alarm_in.h│││├──xx_alarm_out.h│││├──x
- hi3520d烧写开发板遇到的问题及其解决方法
那年晴天
hi3520d
开发板的烧写,是自己第一份工作,接受到的第一份任务。1.自己拿到的开发板,是烧写好uboot的,但是自己在烧写kernel及rootfs的时候,给搞坏了,自己于是按照说明文档中的方法重新烧写uboot,但是,还是不对,自己很无语,问了其他人,也是摸不着头脑,原因竟然在fastboot的版本问题,自己也表示无奈。自己是按照fasstboot中第三种方法来进行烧写uboot的。2.设置serverip
- Hi3520d uImage制作 uboot制作 rootfs制作
小米拍客光
首次安装SDK1、hi3520DSDK包位置在"hi3520D_V100R001***/01.software/board"目录下,您可以看到一个hi3520D_SDK_Vx.x.x.x.tgz的文件,该文件就是hi3520D的软件开发包。2、解压缩SDK包在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar-zxfhi3520D_SDK_Vx.
- Hi3520D 串口使用实例
打个飞机去美国
HI3520D
以下给出了一个源文件uart.c和makefile文件,在sdk/mpp/sample/底下新建一个文件夹,随便命名,现在命名为UartTest,再把uart.c和makefile拷贝进去,编译此外,还需要把libjpeg.solibmpi.solibtde.so放入核心板/lib目录下;所有的文件拷贝完成后运行./uart/dev/ttyAMA20源文件uart.c/**uart_gkwzt.c
- Hi3520D 制作U-boot uImage 根文件系统
dagefeijiqumeiguo
HI3520D
1生成U-boot基于Hi3520D_SDK_V1.0.5.01.1编译U-boot在Hi3520D_SDK_V1.0.5.0/osdrv/uboot目录下运行makeARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux-hi3520d_configmakeARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux-编译成功后,在U
- 设置linux开发板上电自动设置网络配置
Leo_Luo1
我使用的开发板是HI3520D,默认的上电以后是没有网络设置的,需要手动设置。进入/etc/init.d/下,有一个S80network文件,编辑这个文件viS80network#!bin/sh
ipaddr=49.123.73.109
bootp=
netmask=255.255.255.0
hostname=HI3520D
netdev=eth0
autoconf=然后运行脚本,完成!
- HI3520D在内核中复用UART2,UART3管脚
打个飞机去美国
HI3520D
HI3520D在内核中复用UART2,UART3管脚在linux-3.0.y/arch/arm/mach-hi3520d/core.c文件中合适的位置假如#defineGK_HW_WEG(gkval,gkaddr)writel(gkval,gkaddr)#defineGK_IOCFG_BASE_ADDR0x200F0000/*IO口复用寄存器地址空间映射*/#defineGK_GPIO0_BASE
- Hi3520D UART2和UART3是如何加载到内核的
dagefeijiqumeiguo
HI3520D
参考资料:海思Hi3515的UART2和UART3是如何被加载到内核中的http://blog.163.com/softtwo_2/blog/static/27007702201272364522572/Hi3520D和Hi3515有些不一样的地方;Hi3520D的UART驱动位于linux-3.0.y/drivers/tty/serial/amba-pl011.c添加UART2和UART3需要修
- linux基础学习之 ARM嵌入式第一个程序
Leo_Luo1
linux嵌入式ARM
ARM嵌入式linux开发的学习过程真是心累,整个知识体系太庞大了,需要一点点学习,一点点摸索。之前一直在搞虚拟机的linux开发,昨天开始搞ARM嵌入式linux系统。我用的开发板是HI3520D,刚开始开发板上需要烧写u-boot、内核、根文件系统。这些都搞好了以后,然后搭建NFS系统,搭建NFS是为了便于开发。在虚拟机里把代码编译完成后,把可执行文件放到NFS挂载目录下,然后可以在串口界面直
- Hi3520D SDK 安装以及升级使用说明
yyfwd
1、hi3520DSDK包位置 在"hi3520D_V100R001***/01.software/board"目录下,您可以看到一个hi3520D_SDK_Vx.x.x.x.tgz的文件,该文件就是hi3520D的软件开发包。2、解压缩SDK包 在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar-zxfhi3520D_SDK_Vx.x.x
- HI3520D高清机器系统移植详解
yyfwd
今天公司来了50块样机新板,然后硬件工程师拿了一块样机让我调试和系统移植下去验证板子的硬件是不是有问题,之前在学校移植过三星S3C2410,因此对过程有些了解,其实不同的开发板都是大同小异的,无非就是FLASH大小不同,以及分区不同而已,下面我把自己移植的过程做了下笔记希望能为一些遇到相似问题的人有你帮助。首先移植的时候如果你用的是TFTP协议的话,要一个TFTP传输软件,软件文件设置为你存放Ub
- 用文件模拟CMOS保存数据
OS
Hi3520D 芯片的内置CMOS最多只有5个字节可以用,但是我需要保存的数据有很多。
其中一个解决办法是:可以把其他需要保存的数据放到一个配置文件中。每次写的时候写到配置文件,用的时候再从配置文件读出数据即可。
用文件写:
1 static INT CmosExtWrite(U16 RegOffset, U8 *Buffer, U32 Size)
2 {
3
- FAAC1.28 在海思HI3520D/HI3515A平台linux中的编译 优化
linux
FAAC1.28的下载地址:http://www.audiocoding.com/downloads.html
怎样编译:
1../configure --host=arm-hisiv100nptl-linux --prefix=/home/ssy/lib
2.make
3.make install
优化
在不改动源代码的情况下,faac的内存占用非常高,每路音频在13M左右。假设多路
- [置顶] FAAC1.28 在海思HI3520D/HI3515A平台linux中的编译 优化
sooth2008
内存优化faac
FAAC1.28的下载地址:http://www.audiocoding.com/downloads.html如何编译:1../configure--host=arm-hisiv100nptl-linux--prefix=/home/ssy/lib2.make3.makeinstall优化在不修改源码的情况下,faac的内存占用非常高,每路音频在13M左右。如果多路音频的话,内存将很快耗尽。搜索M
- 算法 单链的创建与删除
换个号韩国红果果
c算法
先创建结构体
struct student {
int data;
//int tag;//标记这是第几个
struct student *next;
};
// addone 用于将一个数插入已从小到大排好序的链中
struct student *addone(struct student *h,int x){
if(h==NULL) //??????
- 《大型网站系统与Java中间件实践》第2章读后感
白糖_
java中间件
断断续续花了两天时间试读了《大型网站系统与Java中间件实践》的第2章,这章总述了从一个小型单机构建的网站发展到大型网站的演化过程---整个过程会遇到很多困难,但每一个屏障都会有解决方案,最终就是依靠这些个解决方案汇聚到一起组成了一个健壮稳定高效的大型系统。
看完整章内容,
- zeus持久层spring事务单元测试
deng520159
javaDAOspringjdbc
今天把zeus事务单元测试放出来,让大家指出他的毛病,
1.ZeusTransactionTest.java 单元测试
package com.dengliang.zeus.webdemo.test;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import
- Rss 订阅 开发
周凡杨
htmlxml订阅rss规范
RSS是 Really Simple Syndication的缩写(对rss2.0而言,是这三个词的缩写,对rss1.0而言则是RDF Site Summary的缩写,1.0与2.0走的是两个体系)。
RSS
- 分页查询实现
g21121
分页查询
在查询列表时我们常常会用到分页,分页的好处就是减少数据交换,每次查询一定数量减少数据库压力等等。
按实现形式分前台分页和服务器分页:
前台分页就是一次查询出所有记录,在页面中用js进行虚拟分页,这种形式在数据量较小时优势比较明显,一次加载就不必再访问服务器了,但当数据量较大时会对页面造成压力,传输速度也会大幅下降。
服务器分页就是每次请求相同数量记录,按一定规则排序,每次取一定序号直接的数据
- spring jms异步消息处理
510888780
jms
spring JMS对于异步消息处理基本上只需配置下就能进行高效的处理。其核心就是消息侦听器容器,常用的类就是DefaultMessageListenerContainer。该容器可配置侦听器的并发数量,以及配合MessageListenerAdapter使用消息驱动POJO进行消息处理。且消息驱动POJO是放入TaskExecutor中进行处理,进一步提高性能,减少侦听器的阻塞。具体配置如下:
- highCharts柱状图
布衣凌宇
hightCharts柱图
第一步:导入 exporting.js,grid.js,highcharts.js;第二步:写controller
@Controller@RequestMapping(value="${adminPath}/statistick")public class StatistickController { private UserServi
- 我的spring学习笔记2-IoC(反向控制 依赖注入)
aijuans
springmvcSpring 教程spring3 教程Spring 入门
IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。
IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明:
如:程序中有 Mysql.calss 、Oracle.class 、SqlSe
- TLS java简单实现
antlove
javasslkeystoretlssecure
1. SSLServer.java
package ssl;
import java.io.FileInputStream;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.security.KeyStore;
import
- Zip解压压缩文件
百合不是茶
Zip格式解压Zip流的使用文件解压
ZIP文件的解压缩实质上就是从输入流中读取数据。Java.util.zip包提供了类ZipInputStream来读取ZIP文件,下面的代码段创建了一个输入流来读取ZIP格式的文件;
ZipInputStream in = new ZipInputStream(new FileInputStream(zipFileName));
&n
- underscore.js 学习(一)
bijian1013
JavaScriptunderscore
工作中需要用到underscore.js,发现这是一个包括了很多基本功能函数的js库,里面有很多实用的函数。而且它没有扩展 javascript的原生对象。主要涉及对Collection、Object、Array、Function的操作。 学
- java jvm常用命令工具——jstatd命令(Java Statistics Monitoring Daemon)
bijian1013
javajvmjstatd
1.介绍
jstatd是一个基于RMI(Remove Method Invocation)的服务程序,它用于监控基于HotSpot的JVM中资源的创建及销毁,并且提供了一个远程接口允许远程的监控工具连接到本地的JVM执行命令。
jstatd是基于RMI的,所以在运行jstatd的服务
- 【Spring框架三】Spring常用注解之Transactional
bit1129
transactional
Spring可以通过注解@Transactional来为业务逻辑层的方法(调用DAO完成持久化动作)添加事务能力,如下是@Transactional注解的定义:
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version
- 我(程序员)的前进方向
bitray
程序员
作为一个普通的程序员,我一直游走在java语言中,java也确实让我有了很多的体会.不过随着学习的深入,java语言的新技术产生的越来越多,从最初期的javase,我逐渐开始转变到ssh,ssi,这种主流的码农,.过了几天为了解决新问题,webservice的大旗也被我祭出来了,又过了些日子jms架构的activemq也开始必须学习了.再后来开始了一系列技术学习,osgi,restful.....
- nginx lua开发经验总结
ronin47
使用nginx lua已经两三个月了,项目接开发完毕了,这几天准备上线并且跟高德地图对接。回顾下来lua在项目中占得必中还是比较大的,跟PHP的占比差不多持平了,因此在开发中遇到一些问题备忘一下 1:content_by_lua中代码容量有限制,一般不要写太多代码,正常编写代码一般在100行左右(具体容量没有细心测哈哈,在4kb左右),如果超出了则重启nginx的时候会报 too long pa
- java-66-用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。颠倒之后的栈为{5,4,3,2,1},5处在栈顶
bylijinnan
java
import java.util.Stack;
public class ReverseStackRecursive {
/**
* Q 66.颠倒栈。
* 题目:用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。
* 颠倒之后的栈为{5,4,3,2,1},5处在栈顶。
*1. Pop the top element
*2. Revers
- 正确理解Linux内存占用过高的问题
cfyme
linux
Linux开机后,使用top命令查看,4G物理内存发现已使用的多大3.2G,占用率高达80%以上:
Mem: 3889836k total, 3341868k used, 547968k free, 286044k buffers
Swap: 6127608k total,&nb
- [JWFD开源工作流]当前流程引擎设计的一个急需解决的问题
comsci
工作流
当我们的流程引擎进入IRC阶段的时候,当循环反馈模型出现之后,每次循环都会导致一大堆节点内存数据残留在系统内存中,循环的次数越多,这些残留数据将导致系统内存溢出,并使得引擎崩溃。。。。。。
而解决办法就是利用汇编语言或者其它系统编程语言,在引擎运行时,把这些残留数据清除掉。
- 自定义类的equals函数
dai_lm
equals
仅作笔记使用
public class VectorQueue {
private final Vector<VectorItem> queue;
private class VectorItem {
private final Object item;
private final int quantity;
public VectorI
- Linux下安装R语言
datageek
R语言 linux
命令如下:sudo gedit /etc/apt/sources.list1、deb http://mirrors.ustc.edu.cn/CRAN/bin/linux/ubuntu/ precise/ 2、deb http://dk.archive.ubuntu.com/ubuntu hardy universesudo apt-key adv --keyserver ke
- 如何修改mysql 并发数(连接数)最大值
dcj3sjt126com
mysql
MySQL的连接数最大值跟MySQL没关系,主要看系统和业务逻辑了
方法一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MYSQL即可
方法二:MySQL的最大连接数默认是100客户端登录:mysql -uusername -ppass
- 单一功能原则
dcj3sjt126com
面向对象的程序设计软件设计编程原则
单一功能原则[
编辑]
SOLID 原则
单一功能原则
开闭原则
Liskov代换原则
接口隔离原则
依赖反转原则
查
论
编
在面向对象编程领域中,单一功能原则(Single responsibility principle)规定每个类都应该有
- POJO、VO和JavaBean区别和联系
fanmingxing
VOPOJOjavabean
POJO和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Plain Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比POJO复杂很多,JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被
- SpringSecurity3.X--LDAP:AD配置
hanqunfeng
SpringSecurity
前面介绍过基于本地数据库验证的方式,参考http://hanqunfeng.iteye.com/blog/1155226,这里说一下如何修改为使用AD进行身份验证【只对用户名和密码进行验证,权限依旧存储在本地数据库中】。
将配置文件中的如下部分删除:
<!-- 认证管理器,使用自定义的UserDetailsService,并对密码采用md5加密-->
- mac mysql 修改密码
IXHONG
mysql
$ sudo /usr/local/mysql/bin/mysqld_safe –user=root & //启动MySQL(也可以通过偏好设置面板来启动)$ sudo /usr/local/mysql/bin/mysqladmin -uroot password yourpassword //设置MySQL密码(注意,这是第一次MySQL密码为空的时候的设置命令,如果是修改密码,还需在-
- 设计模式--抽象工厂模式
kerryg
设计模式
抽象工厂模式:
工厂模式有一个问题就是,类的创建依赖于工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则。我们采用抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。
总结:这个模式的好处就是,如果想增加一个功能,就需要做一个实现类,
- 评"高中女生军训期跳楼”
nannan408
首先,先抛出我的观点,各位看官少点砖头。那就是,中国的差异化教育必须做起来。
孔圣人有云:有教无类。不同类型的人,都应该有对应的教育方法。目前中国的一体化教育,不知道已经扼杀了多少创造性人才。我们出不了爱迪生,出不了爱因斯坦,很大原因,是我们的培养思路错了,我们是第一要“顺从”。如果不顺从,我们的学校,就会用各种方法,罚站,罚写作业,各种罚。军
- scala如何读取和写入文件内容?
qindongliang1922
javajvmscala
直接看如下代码:
package file
import java.io.RandomAccessFile
import java.nio.charset.Charset
import scala.io.Source
import scala.reflect.io.{File, Path}
/**
* Created by qindongliang on 2015/
- C语言算法之百元买百鸡
qiufeihu
c算法
中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁,母,雏各几何?
代码如下:
#include <stdio.h>
int main()
{
int cock,hen,chick; /*定义变量为基本整型*/
for(coc
- Hadoop集群安全性:Hadoop中Namenode单点故障的解决方案及详细介绍AvatarNode
wyz2009107220
NameNode
正如大家所知,NameNode在Hadoop系统中存在单点故障问题,这个对于标榜高可用性的Hadoop来说一直是个软肋。本文讨论一下为了解决这个问题而存在的几个solution。
1. Secondary NameNode
原理:Secondary NN会定期的从NN中读取editlog,与自己存储的Image进行合并形成新的metadata image
优点:Hadoop较早的版本都自带,