- 博客(35)
- 资源 (6)
- 收藏
- 关注
原创 hadoop-streaming + python 执行hadoop处理程序
命令如下:hadoop jar /usr/local/hadoop/hadoop-streaming-0.23.6.jar \-input /hdfs/input/path -output /hdfs/output/path \-mapper "python mapper.py" -reducer "python reducer.py" \-file mapper.py -file reducer...
2018-06-15 11:11:47 1428
原创 linux监测文件变化
[SHELL]监控LINUX目录文件变化:http://showerlee.blog.51cto.com/2047005/1262241tcmalloc:http://blog.csdn.net/chosen0ne/article/details/9338591tcmalloc源码:https://github.com/gperftools/gperftools
2018-06-01 21:56:47 7064
转载 关于linux的动态共享库的设置--/etc/ld.so.conf和/etc/ld.so.cache
可执行程序找不到要链接的动态共享库,这是Linux上面编译和运行程序很容易碰到的问题,通过上面的小例子,我们已经大致了解共享库的一点基本原理,接下来我们要探讨一下怎么设置程序寻找动态共享库的行为。Linux操作系统上面的动态共享库大致分为三类:1、操作系统级别的共享库和基础的系统工具库比方说libc.so, libz.so, libpthread.so等等,这些系统库会被放在/li
2018-06-01 21:54:21 2404
原创 浏览器书签同步插件EverSync
安装指导:https://jingyan.baidu.com/article/bad08e1ec944dc09c85121c1.htmlEverSync Sync bookmarks扩展程序:下载地址:http://pan.baidu.com/s/1o87Nqp8Local CDN扩展程序:下载地址:http://pan.baidu.com/s/1qYScc3M...
2018-05-30 22:36:11 4925
原创 大数据集群多用户数据资源隔离管理
用户数据隔离 使用hdfs权限管理及数据加密区 参考:http://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html http://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-hdfs/...
2018-05-24 17:56:30 3870
原创 库文件如何加载到内存?程序编译如何找到这些库文件并加载?
一、库文件是怎么加载进入内存的?linux下的库有两种:静态库和共享库(动态库)。二者的不同点在于代码被载入的时刻不同。 静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。共享库的好处是,不同的应用程序如果调用相同的库,那么在内存里只需要有一份该共享库的实例。一般静态库的后缀是.a,它
2017-09-04 14:50:57 1557
原创 Linux ps查看进程状态及进程死锁问题的查看
通常我们通过ps aux | grep [pthread]查看特定进程[pthread]的状态信息;在Linux中,可能状态如下: D 不可中断 Uninterruptible sleep (usually IO) R 正在运行,或在队列中的进程 S 处于休眠状态 T 停止或被追踪 Z 僵尸
2017-08-28 19:02:55 24505
转载 安装m4, autoconf, automake, libtool
安装m4, autoconf, automake, libtool:http://blog.csdn.net/u011334621/article/details/44035295###安装m4wget http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz \&& tar -xzvf m4-1.4.13.tar.gz \
2017-08-11 17:36:34 2288
原创 刷机命令
刷机命令adbreboot bootloaderfastbootflash persist persist.imgfastbootflash cache cache.imgfastbootflash boot boot.imgfastbootflash userdata userdata.imgfastbootflash recovery recovery.img
2017-06-29 19:05:38 2750
原创 patch的使用
patch打包生成patchdiff -uNr orginal_proj updated_proj >test.patch-u 表示统一输出格式-N 用来处理新增的文件(此时参数对应的是目录)-r 表示递归处理所有的子目录 将打包的patch添加到代码上patch -p1 使用 -p1 时,需要和打包 patch 时在同一个目录
2017-06-29 19:01:33 578
转载 Makefile中:= ?= += =的区别
Makefile中:= ?= += =的区别如下:=最基本的赋值:=覆盖之前的值?=如果没有被赋值过就赋予等号后面的值+=添加等号后面的值1、“=”make会将整个makefile展开后,再决定变量的值。也就是说,变量的值将会是整个makefile中最后被指定的值。看例子:x = fooy = $(x) barx = xyz在上例中,x的值将会是xyz,y的值将会是xyz bar ,而不是foo ...
2017-06-29 18:02:54 246
原创 git stash pop冲突解决
导致原因:本地修改文件a.file,同时别人提交代码中也修改了文件a.file;这时你想提交代码时就会遇到这个问题。提交代码之前首先需要更新本地代码到最新版本,此之前需先保存本地修改;命令如下:$ git stash$ git pull然后将本地保存的修改,恢复到最新版本代码上:$ git stash pop这时就会报错;显示文件a.file为both modify;
2017-06-26 21:40:32 14517
转载 Beyond Compare工具安装
Linux Installation Instructions BC VERSION 3 OR 4DEBIAN, UBUNTUBeyond Compare 4.1 and newer require matching package and OS architecture (amd64.deb or i386.deb). Beyond Compare 3 - 4.
2017-06-16 15:30:30 3520
转载 linux编程之文件操作
在linux下用文件描述符来表示设备文件盒普通文件,文件描述符是一个整型的数据,所有对文件的操作都是通过文件描述符来实现的。文件描述符是文件系统中连接用户空间和内核空间的枢纽,当我们打开一个或者创建一个文件时,内核空间会创建相应的结构,并且生成一个整型的变量传递给用户空间的对应进程,而进程则用这个文件描述符来对文件进行操作。要注意的是,文件描述符是一个有限的资源
2017-06-14 13:57:00 261
转载 Linux下应用程序的文件操作函数总结
Linux下应用程序的文件操作函数总结1.文件的创建和读写 当我们需要打开一个文件进行读写操作的时候,我们可以使用系统调用函数open.使用完成以后我们调用另外一个close函数进行关闭操作. int open(const char *pathname,int flags); int open(const char *pathname,in
2017-06-12 19:13:42 1094
转载 下载CentOS的Linux内核的源代码
一、准备工作1. 如何查询你的CentOS的版本参见:http://blog.csdn.net/yunying_si/article/details/236797692. 如何查询Linux 内核版本[root@syy ~]# uname -r2.6.32-431.3.1.el6.i686 二、何处下载经过上面的准备工作,
2017-06-10 11:07:54 2493
原创 openssl源码下载及编译
openssl官网:https://www.openssl.org/源码下载及安装openssl:下载源码并解压配置[root@test ~]# wget http://www.openssl.org/source/openssl-1.0.2d.tar.gz[root@test ~]# tar xf openssl-1.0.2d.tar.gz[root@test ~]# cd
2017-05-15 14:36:18 5671
原创 linux下分卷压缩/解压缩
使用split来分卷,cat来合并分卷> tar分卷压缩tar cvzf - filedir | split -d -b 50m - filename输出文件为filename00、filename01...;不加filename,输出文件为x00、x01...;不加参数-d,输出aa、ab...> tar分卷解压缩合并分卷:cat x* > myzip.tar.gz
2017-05-12 09:44:14 9644 2
原创 TPM开发指导
TPM环境搭建 Tpm_emulator模拟器安装过程:http://blog.csdn.net/zhangnn5/article/details/6767230trousers源码及测试工具下载:https://sourceforge.net/projects/trousers/files/TPM实验环境搭建:http://blog.sina.com.cn/s/blog_6035b213
2017-05-05 11:02:02 1377
原创 vim中ctags、cscope安装及使用
一、ctags下载安装与使用1、apt-get安装sudo apt-get install ctags2、源码安装下载源码:http://ctags.sourceforge.net/进入源码目录执行 ./configure执行make编译程序编译完成之后执行make install安装3、常用命令:$ ctags -R *生成符号表ctags$ vi -
2017-04-26 14:23:25 649
原创 Android.mk详解
概述 Android.mk文件用来向编译系统描述如何编译你的源代码。更确切地说,该文件其实就是一个小型的Makefile。由于该文件会被NDK的编译工具解析多次,因此应该尽量减少源码中声明变量,因为这些变量可能会被多次定义从而影响到后面的解析。这个文件的语法允许把源代码组织成模块,每个模块属于下列类型之一:APK程序:一般的Android程序,编译打包生成apk文件。JAVA
2017-03-29 13:02:57 270
原创 android中调用共享库.so的几种方法
底层调用共享库中函数的方法> 首先使用dlopen("libmedia.so", RTLD_LAZY); 加载对应的库文件libmedia.so;> 之后使用dlsym(libhandle, "function_name"); 获取指定函数的指针;> 最后使用获取的函数指针调用对应的函数,执行相应的操作;需要注意的是,调用的共享库都必须在对应的Android.mk的共享库中添加;
2017-03-29 10:50:15 4952 1
原创 函数调用栈分析
函数调用栈分析Android中C/C++代码使用CallStack打印出的函数调用栈通常不是特别的详细,有些地方只是打印出了库之间的调用关系,具体的函数之间的调用关系无法清楚的获取;基于这些问题,我们需要使用其他的一些工具对打印出的调用栈进行进一步的分析;打印出的函数调用栈信息如下:D/Audio ( 262): #00 pc 0000cff1 /system/lib/li
2017-03-15 10:35:42 472
原创 函数调用栈打印
Linux打印函数调用栈方法一:#include #include #include /* Obtain a backtrace and print it to stdout. */void print_trace (void){ void *array[10]; size_t size; char **strings; size_t i; size = bac
2017-03-14 17:53:43 5611
原创 firefox开发指南
firefox os 架构理解:firefox os架构 官方文档 firefox os App开发及部署实例:app实例 firefox os 框架图:框架图 firefox 应用开发指南:应用开发 firefox os 手机开发之设备调用:设备调用 firefox 学习资源集:学习资源 Linux startup process:Linux启动流程 Firefox OS 学习——
2017-03-02 10:56:51 275
原创 不同编程语言之间的函数的关联
一、JNI(Java Native Interface, Java本地调用)作用:在Java程序中的函数可以调用C/C++编写的函数; 在C/C++程序中的函数可以调用Java编写的函数;
2017-02-09 11:31:31 1186
原创 搭建Android源代码编译环境-linux
一、Ubuntu Linux操作系统和工具安装选择ubuntu 10.10桌面版系统,下载地址:http://releases.ubuntu.com下载ubuntu-10.10-desktop-amd64.iso安装完成后,更新ubuntu系统工具包;二、安装和配置Java运行环境Java运行环境JDK安装及配置下载JDK的Linux平台安装包,网址:http://
2017-02-08 15:06:46 555
原创 scp使用--linux windows之间传输文件
cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的Linux系统之间来回copy文件关于cp的具体用法:命令基本格式: cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径 cp [OPTIONS] SOURCE... DIRECTORY --- 将多个源文件copy到指定的目录(
2016-10-29 16:48:46 63147
转载 Ubuntu安装adb
1、通过apt-get安装adbsudo add-apt-repository ppa:nilarimogard/webupd8sudo apt-get updatesudo apt-get install android-tools-adb将android设备连接至电脑,执行adbshell会提示“error:device not found”2、将android设备连接至电脑,通过lsusb查...
2016-10-29 16:41:46 15200 1
转载 linux应用编程--简单常用函数
一、atoi函数#include int atoi(const char *nptr);功能:将一个数字字符串转换成对应的十进制数案例一、#include int main(int argc,char *argv[]){ printf("atoi(%s) = %d.\n",argv[1],atoi(argv[1])); return 0;}运行结果:二、
2016-10-21 20:30:28 307
原创 git 版本管理工具常用命令
git 分支管理1、创建分支git branch 分支名>2、切换分支git checkout 分支名>3、删除分支git branch -d 分支名>4、分支合并eg:将开发中的分支(develop),合并到稳定分支(master)首先切换分支到master: git checkout master然后执行合并操作:git merge develop。下载工程
2016-10-19 14:19:01 554
转载 sizeof()详解
sizeof的结果(以下结果都是在Linux v2.6 gcc v4获取) sizeof操作符的结果类型是size_t 它在头文件中定义为: typedef unsigned int size_t; 该类型保证能容纳实现所建立的最大对象的字节大小. 1、ANSI C正式规定字符类型为1字节。 sizeof(char)
2016-10-18 21:39:59 9303 3
转载 Getmemory函数详解--内存操作的理解
题目:void GetMemory(char *p){p = (char *)malloc(100);}void Test(void){char *str = NULL;GetMemory(str);strcpy(str, "hello world");printf(str);}请问运行Test 函数会有什么样的结果?分析:程序崩溃。因为GetMem
2016-10-18 21:35:02 17348 4
转载 C语言中volatile/register/const/static/extern/auto关键字的作用
一、volatile详解volatile的本意是“易变的” 因为访问寄存器要比访问内存单元快的多,所以编译器一般都会作减少存取内存的优化,但有可能会读脏数据。当要求使用volatile声明变量值的时候,系统总是重新从它所在的内存读取数据,即使它前面的指令刚刚从该处读取过数据。精确地说就是,遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问;如果不
2016-10-17 22:05:13 759
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人