- 全功能的二进制文件分析工具 Radare2
Linux资源站
导读Radare2是一个为二进制分析定制的开源工具。有大量(非原生的)Linux工具可用于二进制分析,为什么要选择Radare2呢?为什么我需要另一个工具?如果现有的Linux原生工具也能做类似的事情,你自然会问为什么需要另一个工具。嗯,这和你用手机做闹钟、做笔记、做相机、听音乐、上网、偶尔打电话和接电话的原因是一样的。以前,使用单独的设备和工具处理这些功能——比如拍照的实体相机,记笔记的小记事本
- Capstone 反汇编引擎
SGchi
二进制安全
文章目录前言一、Capstone简介二、示例代码前言介绍了capstone反汇编引擎的用法一、Capstone简介Capstone是一个轻量级的多平台、多架构的反汇编框架,用纯C语言实现。可以说它是如今世界上最优秀的反汇编引擎,IDA,Radare2,Qemu等著名项目都使用了CapstoneEngine,所以选择它来开发是一个不错的选择。Capstone官网:http://www.capston
- radare2 使用记录
antRain
debugdebug
radare2使用记录编译调试分析数据结构rasm_disasmanalop反汇编cs_disasmlibarch编译radare2:UNIX-likereverseengineeringframeworkandcommand-linetoolset#参考https://github.com/radareorg/radare2/issues/18828gitclonehttps://github.
- Radare2:using test
32进制
ctf安全linux网络服务器
Radare2:usingtest└─$sudoaptinstallradare2100⨯[sudo]kwkl的密码:正在读取软件包列表...完成正在分析软件包的依赖关系树...完成正在读取状态信息...完成下列软件包是自动安装的并且现在不需要了:bltbuildahconmonfonts-lyxfuse-overlayfsgir1.2-ayatanaappindicator3-0.1golang
- RADARE2+FRIDA=R2FRIDA Your Best Dynamic Debugging Tool
2h0n9
前言演示例子:SinaWeiboXiaoHongshu参考资料:r2wiki、enovellawiki正文0x1安装首先安装radare2,Windows用户可以在这里下载可执行文件安装然后安装r2frida,自行克隆安装用frida-ls-devices工具获取usbdeviceidimage接着用frida-ps-U|grepxhs获取完整包名然后根据id和packagename用radare
- r2pm -ci r2ghidra 时报错:checking pkg-config flags for r_core... no
devil8123665
pwnr2pmr2radare2
参考网址:sys/python.shfailswith`checkingpkg-configflagsforr_core...no`·Issue#1943·radareorg/radare2·GitHub进入目录/root/.local/share/radare2/r2pm/git/r2ghidra查看configure文件,查找报错位置执行指令:#pkg-config--cflagsr_core
- 二进制文件分析工具
小昔小怪兽
命令作用file确定文件类型ldd打印对象依赖关系(动态库)ltrace追踪程序调用的库函数hexdump以ASCII、十进制、十六进制或八进制显示文件内容strings打印文件中的可打印字符的字符串readelf显示有关ELF文件的信息objdump从对象文件中显示信息strace跟踪系统调用和信号nm列出对象文件中的符号gdbGNU调试工具radare2功能更多
- RADARE2+FRIDA=R2FRIDA Best Dynamic Debugging Tool
x2hhhhhhhhhh1z
逆向爬虫Python
前言演示例子:SinawbXiaohs参考资料:r2wiki、enovellawiki正文0x1安装首先安装radare2,Windows用户可以在这里下载可执行文件安装然后安装r2frida,自行克隆安装用frida-ls-devices工具获取usbdeviceid接着用frida-ps-U|grepxhs获取完整包名然后根据id和packagename用radare连接frida:r2fri
- radare2入门
ChuMeng19990324
CTF特训营:技术详解解题方法与竞赛技巧#CTF之Reverseradare2实战ios
目录预备知识关于Radare2熟悉常用命令介绍下r2框架里最强的一个工具:rabin2实验目的实验环境实验步骤一实验步骤二实验步骤三预备知识关于Radare2radare2是一个开源的逆向工程和二进制分析框架,包括反汇编、分析数据、打补丁、比较数据、搜索、替换、虚拟化等等,同时具备超强的脚本加载能力,它可以运行在几乎所有主流的平台(GNU/Linux,Windows*BSD,iOS,OSX,Sol
- 二进制安全学习笔记(1)
Ba1_Ma0
二进制安全笔记网络安全经验分享学习
2022-3-8二进制安全学习笔记(1)学习的导师是油管的LiveOverflow先生,他的二进制安全课程是真的不错,想学习这方面的话可以去看他的课程,我马上就看完了,这是基于我自己的理解而做成的笔记二进制安全入门题目下载链接为:https://github.com/LiveOverflow/liveoverflow_youtube使用的工具为radare2,下载链接:https://github
- macOS逆向-如何分析macOS软件
VxerLee昵称已被使用
目录macOS逆向-如何分析macOS软件0x00前言:0x01分析环境搭建:安装Clang安装Radare2关于HTEditor什么是Radare2Radare2的手动安装测试radare2是否安装成功0x02第一个macOS程序0x03破解Crackme打补丁je->jne用radare2修改0x04验证crackmePwn菜鸡学习小分队macOS逆向-如何分析macOS软件0x00前言:完事
- 通过实例学习radare2
Neil-Yale
通过调试一个crackme来学习radare拿到一个crackme,首先查看二进制信息。我们首先使用-i标识调用rabin2,打印出二进制信息,如操作系统,语言,体系结构运行起来看看假设crackme需要参数才能运行还是运行失败接下来使用radare2默认显示了入口点以i开头的相关命令可以用i?进行查看I命令的目的是从打开的文件中获取操作信息接下来我们进行分析。输入a?来看看分析选项我们选择aaa
- linux 逆向工具 radare2入门
whatday
注:radare2系列实验共有3个。这是第一个,第二个实验是进阶用法通过它写exp,第三个实验是通过它分析rom。参考链接已经在文末给出。1预备知识1.关于Radare2:radare2是一个开源的逆向工程和二进制分析框架,包括反汇编、分析数据、打补丁、比较数据、搜索、替换、虚拟化等等,同时具备超强的脚本加载能力,它可以运行在几乎所有主流的平台(GNU/Linux,.Windows*BSD,iOS
- radare2逆向笔记
AirZH??
最近刚开始学习逆向(ReverseEngineering),发现其学习曲线也是挺陡峭的,而网上的许多writeup文章主旨总结就六个字:"你们看我屌吗?"...几近炫技而对初学者不太友好.所以我打算以初学者的身份来写写自己从入门到深入的经历.准备当前许多逆向的writeup倾向于使用IDA-Pro,而且似乎都依赖于F5(反编译的快捷键),直接从二进制文件转成了可读的C代码.这对于实际工作来说也许是
- radare2
zensui2008
radare2是个逆向工程工具,多平台的基于命令行的逆向工具。主要特点:多平台多架构的高度脚本十六进制编辑器IO包裹文件系统支持调试器支持进行比较的两个功能或二进制文件之间操作码,代码分析basicblock它包含了系列工具,如反汇编工具、调试工具和16进制编辑工具。支持新的命令(ad,pm,wa*,dm*,dh,pdb,ia,/q,ax,dd,and/d),支持Brainfuck,hex://a
- radare2高阶玩法
Neil-Yale
关于Radare2:radare2是一个开源的逆向工程和二进制分析框架,包括反汇编、分析数据、打补丁、比较数据、搜索、替换、虚拟化等等,同时具备超强的脚本加载能力,它可以运行在几乎所有主流的平台(GNU/Linux,.Windows*BSD,iOS,OSX,Solaris…)并且支持很多的cpu架构以及文件格式。radare2工程是由一系列的组件构成,这些组件可以在radare2界面或者单独被使用
- radare2进阶
Neil-Yale
关于Radare2:radare2是一个开源的逆向工程和二进制分析框架,包括反汇编、分析数据、打补丁、比较数据、搜索、替换、虚拟化等等,同时具备超强的脚本加载能力,它可以运行在几乎所有主流的平台(GNU/Linux,.Windows*BSD,iOS,OSX,Solaris…)并且支持很多的cpu架构以及文件格式。radare2工程是由一系列的组件构成,这些组件可以在radare2界面或者单独被使用
- 一步一步pwn路由器之radare2使用实战
weixin_30544657
前言本文由本人首发于先知安全技术社区:https://xianzhi.aliyun.com/forum/user/5274前文讲了一些radare2的特性相关的操作方法。本文以一个crackme来具体介绍下radare2的使用程序的地址:在这里正文首先使用radare2加载该程序。使用了aaa分析了程序中的所有函数。使用iI查看二进制文件的信息。可以看到是32位的。使用aaa分析完程序后,可以使用
- RADARE2
BurningTeng
RADARE2Themaintoolofthewholeframework.Itusesthecoreofthehexadecimaleditoranddebugger.radare2allowsyoutoopenanumberofinput/outputsourcesasiftheyweresimple,plainfiles,includingdisks,networkconnections,k
- 一步一步pwn路由器之radare2使用全解
weixin_30553065
前言本文由本人首发于先知安全技术社区:https://xianzhi.aliyun.com/forum/user/5274radare2最近越来越流行,已经进入github前25了,看到大佬们纷纷推荐,为了紧跟时代潮流,我也决定探究探究这款神器。下面画画重点,以便以后需要用了,可以方便查找。正文首先是安装radare2,直接去官方github安照指示安装即可。先把源代码下载下来https://gi
- 黑客攻击-程序破解(1)
BurningTeng
漏洞网络与安全Windows开发
文章目录一个简单的程序可执行文件生成过程预处理过程编译汇编过程链接过程一步到位破解test程序运行程序程序破解Radare2查看程序信息破解之旅验证Rasm2web页面公众号一个简单的程序程序功能是判断用户输入,如果是"burning",则输出"success",否则,输出"fail"。程序代码如下:#include#include#includeintmain(){charbuff[1024];
- 用Frida入侵Android App III – OWASP UNCRACKABLE 2
看雪学院
在我发完第二篇关于Frida的博文之后,@muellerberndt立即就决定公布另一个OWASPAndroidcrackme。我想试试看我是否依然可以用Frida来解决这个问题。如果你也想跟着我一起,那么你需要:OWASPUncrackableLevel2APKAndroidSDK和模拟器(我用的是Android7.1x64镜像)Frida的安装包(加上frid服务器)字节码查看器radare2
- Radare2 学习笔记:从入门到精通 1. Radare2 简介,及安装
felixtangentwang
Radare2Discovery
目录Radare2是什么?Radare2介绍如何安装Radare2?在Linux中安装Radare2和Cutter在MacOSX中安装R2和Cutter在MicrosoftWindows中安装R2和Cutter在Android上安装Radare2是什么?Afree/libretoolchainforeasingseverallowleveltaskslikeforensics,softwarere
- Linux样本——IDA调试分析ELF文件
ATree、063
逆向学习病毒分析之路
主要是自己遇到了一个Linux样本,记录下从不熟悉到熟悉的过程,也可以帮助更多在逆向分析这条路上的人。Linux平台调试工具1、动静分析结合的跨平台工具-IDA2、无图形界面的调试神器-GDB3、Linux平台开源调试工具-radare2使用IDA远程调试1、Linux系统配置调试ELF文件环境,使用file命令查看elf文件类型,得知文件运行平台是32位2、拷贝IDA远程调试服务文件linux_
- 初识Frida--Android逆向之Java层hook (一)
看雪学院
0x00文中用到的工具Fridajadx-gui一个强大的android反编译工具genymotion模拟器Python2.7以及frida-python库radare2反汇编器pycharm0x01hook示例的安装与分析Frida官网给我们了一个ctf的示例,就以此为例子,开始学习frida在android逆向的使用。rps.apk下载地址查看原帖(点击左下角阅读原文查看)安装使用genymo
- 老司机带你玩转Radare2
合天网安实验室
Radare2实战(图片来源:hetianlab.com)说起逆向,你想到的可能是IDAPro,OllyDBG。而Radare2是一款开放源代码的逆向工程平台,它的强大超越你的想象,包括反汇编、分析数据、打补丁、比较数据、搜索、替换、虚拟化等等,同时具备超强的脚本加载能力,并且可以运行在几乎所有主流的平台(GNU/Linux,.Windows*BSD,iOS,OSX,Solaris…)上。可谓是一
- Hetian lab day 10 radare2入门
温酒的周同学
合天实验室逆向
文章目录预备知识实验目的实验环境实验step1step2step3课后习题预备知识radare2是一个开源的逆向工程和二进制分析框架,包括反汇编、分析数据、打补丁、比较数据、搜索、替换、虚拟化等等,同时具备超强的脚本加载能力,它可以运行在几乎所有主流的平台(GNU/Linux,.Windows*BSD,iOS,OSX,Solaris…)并且支持很多的cpu架构以及文件格式。radare2工程是由一
- radare2教程
Thunder_J
radare工具篇
介绍r2是radare的第二版,目的是提供一组库和工具来处理二进制文件。Radare项目最初是一个取证工具,一个脚本命令行十六进制编辑器,可以打开磁盘文件,但后来添加了对分析二进制文件、分解代码、调试程序、附加到远程gdb服务器的支持,简单的来说它就是一个开源的(但也同样强大的)二进制分析工具,有些时候IDA用不了F5的时候就可以尝试用它来解决一些难题。下载https://github.com/r
- ida动态调试elf(无坑详细)
LqL_1
逆向
虽然linux下有gdb,radare2等神器,但有时候难免有用到ida动态调试linux下文件的时候,这次自己按照网上教程来但是踩了无数坑,所以打算自己写一篇教程1.把ida中dbgsrv目录下的linux_server或者linux_serverx64放到linux中(根据自己要调试的程序选择哪个版本的)2.chmoda+xlinux_serverx64改变属性,然后运行linux_serve
- volga-ctf-quals-2016 pwn web_of_scicen_250 writeup
Anciety
ctfpwn
基本情况我并没有参加这个比赛,只是作为练习用,所以无法模拟远程,只能本地调试文件是64位的,运行之后先输入名字,然后每次都会输出这个名字,然后问你10道数学题,后面怎样的其实对这个版本的利用来说不是很重要漏洞情况整个函数比较长,不过我还是复制下来方便解释(来源于radare2,如果不依赖ida的F5,radare2一些时候比ida还好用,特别是在pwn当中):/(fcn)sub.puts_7cd4
- 算法 单链的创建与删除
换个号韩国红果果
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较早的版本都自带,