自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (1)
  • 收藏
  • 关注

原创 golang gc机制学习

以下针对go1.5gc方法参考官方文章:https://blog.golang.org/go15gc,go的gc看起来类似于宽度优先搜索算法。 1. 将heap看作是一个图,其内部存储的变量之间有指针相互联系。所有变量最初都被着色为白色 2. 遍历heap,选择root节点,将它们标记为灰色 3. 针对上面选择的每一个root节点,首先将其颜色变为黑色,然后迭代的去访问他的孩子节点(即其所代表

2016-04-29 10:36:16 5102

原创 golang注记

map不是线程安全的,对其进行并发访问时需要加锁。struct的匿名成员所有成员变量和函数都被外围struct获得,如下代码所示,C获得了Mutex和D的成员:type C struct { sync.Mutex m int D}type D struct { tt int}func main() { counter := C{m: 5} co

2016-04-28 20:59:46 754

原创 ubuntu 14.04 编译安装bochs 2.6.2

下载源码,并解压安装一些可能需要的库sudo apt-get install g++sudo apt-get install bochs-sdl sudo apt-get install bochs-x配置环境,打开调试器选项和反汇编选项cd bochs-2.6.2./configure --enable-debugger --enable-disasm编译源码 首先修改Makefile

2015-12-19 17:57:01 765

原创 ArchLinux 学习之路(一)

网络配置修改网络设备名字在archlinux中,设备名称的命名规则是:en (代表ethernet) 后跟随机生成的字符串 wl (代表WLAN) 后跟随机生成的字符串ww (代表WWAN) 后跟随机生成的字符串为了便于记忆,且在配置网络时便于输入,可以手动修改设备名字,方法如下:1.关闭要修改名字的网络设备,这里示例为eno16777734# ip link set eno16777734

2015-11-18 10:09:10 1247

原创 Spark 消息队列机制源码学习

spark 消息队列

2015-08-06 16:01:00 6273

原创 数组中出现一半、超过一半、少于一半,三分之一的元素的问题

求数组中出现次数超过一半的元素:思想:删除两两不同的元素,剩下的就是出现超过一半的元素。分析可知满足要求的元素只有一个,时间复杂度O(n):int majorityElement(vector<int>& nums) { int counter = 1; int ele = nums[0]; for(int i = 1; i < nums.size()

2015-08-05 15:21:37 1980

原创 logn 时间复杂度 计算整数 末尾0的个数

折半查找class Solution {public: int trailingZeroes(int n) { int len = 0; int tmp = n; while(tmp) { tmp /= 10; len++; } int sum_zero = 0;

2015-08-02 13:09:15 752

原创 c++ 常用代码片段

根据给定的分割符来进行字符串分割:void split(const std::string& s, std::vector<std::string>& v, const std::string& delimiter){ string::size_type pos1, pos2; pos2 = s.find(delimiter); pos1 = 0; while(std::strin

2015-08-02 12:35:21 813

原创 好诗词集锦

清朝黄景仁《绮怀》十六首之十五几回花下坐吹箫,银汉红墙入望遥。 似此星辰非昨夜,为谁风露立中宵。 缠绵思尽抽残茧,宛转心伤剥后蕉。 三五年时三五月,可怜杯酒不曾消。北宋张先的《千秋岁》数声鶗鴂,又报芳菲歇。惜春更把残红折。雨轻风色暴,梅子青时节。永丰柳,无人尽日花飞雪。 莫把幺弦拨,怨极弦能说。天不老,情难绝。心似双丝网,中有千千结。夜过也,东窗未白凝残月。

2015-07-31 09:06:01 533

原创 scala spark编程常见问题总结

问题:ERROR ActorSystemImpl: Uncaught fatal error from thread [sparkDriver-akka.remote.default-remote-dispatcher-8] shutting down ActorSystem [sparkDriver]15/07/28 13:46:59 ERROR ActorSystemImpl: Uncaught

2015-07-28 16:50:36 5107 1

原创 Maven+scala+spark常见问题总结

Maven常见问题总结

2015-07-14 14:32:52 16556

转载 教你如何迅速秒杀掉:99%的海量数据处理面试题

教你如何迅速秒杀掉:99%的海量数据处理面试题作者:July出处:结构之法算法之道blog   http://blog.csdn.net/v_july_v/article/details/7382693前言   一般而言,标题含有“秒杀”,“99%”,“史上最全/最强”等词汇的往往都脱不了哗众取宠之嫌,但进一步来讲,如果读者读罢此文,却无任何收获

2015-03-03 10:48:27 734

转载 海量数据存储面试题(一)

在实际的工作环境下,许多人会遇到海量数据这个复杂而艰巨的问题,它的主要难点有以下几个方面:一、数据量过大,数据中什么情况都可能存在。如果说有10条数据,那么大不了每条去逐一检查,人为处理,如果有上百条数据,也可以考虑,如果数据上到千万级别,甚至 过亿,那不是手工能解决的了,必须通过工具或者程序进行处理,尤其海量的数据中,什么情况都可能存在,例如,数据中某处格式出了问题,尤其在程序处

2015-03-03 10:24:18 7715

原创 elf 可执行文件 中代码段和数据段间0x1000地址差异

RT 最近在linux 上面,尝试将一个汇编文件和一个c文件编译成一个elf格式的可执行文件,但是通过分析这个可执行文件,发现 数据段和代码段的链接地址之间 有0x1000长度的地址是“凭空而来的”,即在可执行文件中 并无对应的数据,猜想可能是默认的ld脚本中的问题,于是采用自己的ld脚本来链接,最终消除该地址差距。SECTIONS{ .text 0x100000: {

2015-02-15 12:34:20 1143

原创 ubuntu 14.04 64bit 编译安装bochs 2.6.7

首先,下载bochs源码之后,安装依赖:sudo apt-get install build-essentialsudo apt-get install g sudo apt-get install xorg-devsudo apt-get install libgtk2.0-dev解压源码,进入源码目录,开始配置sudo /configure --with-x11 --with-wx --

2015-02-11 22:46:15 1141

原创 ubuntu 下搭建 LAMP环境

sudo apt-get install apache2sudo apt-get install php5sudo apt-get install libapache2-mod-php5sudo /etc/init.d/apache2 restartsudo apt-get install mysql-serversudo apt-get install libapache2-mod-auth-my

2015-02-10 10:41:42 385

转载 python 的pickle包学习

python基础之picklezope的核心模块zodb的最底层对象序列化是基于python的标准模块pickle进行的(更准确的说是cpickle),在分析zodb的实现前,我们来看看python标准模块pickle的相关知识。1、python对象的序列化 关于python对象序列化的模块包括:pickle/cpickle、marshal、shelve,现在简单看看它们的区别和应用场合p

2015-02-10 10:29:39 3361

转载 ubuntu 下quagga配置

Install Quagga As Linux RouterBecause the curious how to make Router in Linux, I was browsing to search for how to install Linux on the router using the quagga. After finding several blogs and the

2015-02-10 10:26:53 2415

原创 ubuntu 14.04 安装搜狗输入法

ubuntu 14.04 安装搜狗输入法首先,如果已经安装了fcitx,先卸载之:sudo apt-get --purge fcitx*清理系统内的无用的软sudo apt-get --purge autoremove到sogou官网下载安装包 安装gdebi软件sudo apt-get install gdebi安装sogou安装包sudo gdebi sogou_pinyin_linux_1.

2015-02-09 21:01:23 554

原创 openSUSE 中 Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.80.el6_3.3.x86_64

针对以上问题,解决方法如下:openSUSE系统:zypper modifyrepo --enable repo-debugzypper refreshzypper in glibc-debuginfo

2015-01-04 14:59:27 876

转载 GCC内嵌汇编

GCC内嵌汇编1、简介内核代码绝大部分使用C语言编写,只有一小部分使用汇编语言编写,例如与特定体系结构相关的代码和对性能影响很大的代码。GCC提供了内嵌汇编的功能,可以在C代码中直接内嵌汇编语言语句,大大方便了程序设计。简单的内嵌汇编很容易理解例:__asm__ __volatile__("hlt");“__asm__”表示后面的代码为内嵌汇编,“

2015-01-02 09:56:39 449

原创 nasm 汇编指令 列表

操作指令MOV   dst, src   把src 的内容 复制到 dst中,操作字长由参数字长决定push    把参数入栈pop      从栈顶弹出数据,存入给定参数中PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.(在不同模式下面,对应不同的寄存器,如32bit模式,对应32位寄存器)POPA    把DI,SI,BP,SP,BX,DX,C

2014-12-30 12:28:53 2594

转载 GCC编译屏蔽内建函数

转自:http://blog.sina.com.cn/s/blog_7077264c0100lvwn.html-fbuiltin这是默认选项,用于通过名字来识别内建函数。选项 -fno-builtin 指出,除非利用前缀 __builtin_进行引用,否则不识别所有内建函数。例如,为了获得内建版本,应该调用 __builtin_strcpy() 而不是名为 strcpy()的函数。

2014-12-28 18:28:25 1131

原创 sublime text 3 搭建c/c++ 环境 及 激活

一直纠结于在linux下面没有好用的IDE,不过最近研究了一下sublime 发现还是相当不错的,轻巧,唯美!!sublime本身功能有限,但其拥有庞大的插件库,可以提供强大的功能。一  为了方便插件的安装,首先先来安装一下Package Control:通过快捷键 ctrl+` 或者 View > Show Console 菜单打开控制台输入:import urll

2014-12-26 17:11:53 499

原创 NS3 中Attribute 学习

在NS3中,每个类都有与之相关的属性,这些属性可以看作是对基本类型的封装,这些属性存储在与类相关的TypeId类中。下面来介绍一下attribute的相关实现:与属性相关的文件主要位于src/core/model文件夹下面文件名中带有attribute关键字的文件最基本的类有三个:AttributeValue ,AttributeAccessor和  AttributeChecker 另外

2014-12-14 19:01:38 2170

原创 NS3 中 ObjectBase类学习

该类位于 src/core/model/object-base 文件中  。在该文件的开始部分,有如下的宏定义:#define NS_OBJECT_ENSURE_REGISTERED(type) \ static struct X ## type ## RegistrationClass \ {

2014-12-14 18:40:14 1853

原创 NS3 仿真器 之 typeid 类知识学习

NS3中,每个类都包含了一个typeid。一个类的typeid主要用来记录与这个类相关的属性,trace源,继承树之类的信息。一  内部类型在TypeId类中,定义了三个内部类型:1.1  AttributeFlag : 属性标志,用来表面TypeId类 内部所含属性 的性质,如可读/可写/可在构造时赋值/以上三中都有,具体定义如下enum AttributeFlag {

2014-12-14 15:45:58 2876

原创 64位模式下 nasm 和c语言的互相调用

首先,需要说明的是,64位模式下,nasm和c语言函数之间的参数传递是通过64位寄存器来进行的,而32位模式下,参数的传递则是通过栈来实现的,这一点区别很重要!!在,64位模式下,针对64位整型参数(long类型),按照参数从左到右的顺序,依次通过寄存器RDI, RSI,RDX, RCX,R8, 和R9 来传递,如果参数个数超过了这么多,那么多余的参数通过栈来传递1, nasm

2014-12-12 16:32:54 5253 1

转载 Opensuse的静态IP设置

转自:  http://blog.chinaunix.net/uid-26760055-id-3143579.htmlOpensuse的静态IP设置如下:1.修改/etc/sysconfig/network/config文件NETWORKMANAGER=”yes” 通过 networkmanage 的用户方法设置NETWORKMANAGER=”no” 通过 ipfu传统

2014-12-08 15:24:59 4645

原创 在win7中硬盘安装opensuse 13.2

首先,去官网下载opensuse的DVD镜像文件,大概有4G左右的大小然后将iso镜像拷贝到某个分区的根目录下,在这里假设将镜像放在D盘根目录。然后将镜像也解压到D盘根目录。一切准备就绪。用虚拟光驱打开iso镜像,运行里面的安装程序,就是对应*_LOCAL那个,因为我们这里采用本地安装。之后按照提示,会要求重启系统,照做就好。重启之后进入安装界面,一路进行,

2014-12-08 15:19:28 2821

原创 archlinux 安装

安装时,首先选择Boot Arch Linux 选项。然后会进入到命令行模式:执行下面的命令进行分区cfdisk选择分区表类型,选择DOS,即为MBR分区表然后进入分区界面进行分区,分区方式类似于其他linux发行版,可以简单的将整块磁盘分成3个区/dev/sda1:  200M  主分区(用来作为/boot分区)/dev/sda2: 剩余所有内存 逻辑分区   

2014-12-07 21:40:43 596

原创 Redhat server 6.5 vsftp 安装

首先,运行下面命令来检测是否已安装vsftp:rpm -qa| grep vsftpd如果已经安装就会出现vstfp的版本号相关的信息,如果没有出现就是没有安装如果没有安装,可以从光盘中进行安装。光盘的Packages目录下有许多常用的包rpm -ivh ftp包的名字修改启动方式为开机自动启动:chkconfig vsftpd on接下来,设置防火墙,由于Redhat默认

2014-12-06 22:30:09 2379

原创 django学习之环境搭建

接下来修改环境变量,将以下代码加入到

2014-11-25 15:35:43 556

转载 怎么在网页中通过JAVAscript控制SVG图像放大缩小

首先先说明一下我想做出的网页效果,基本上和地图一样,将鼠标放在图像上之后,滚动鼠标滑轮可以实现图片放大和缩小,按下鼠标后移动鼠标可以实现图像的移动,具体效果去百度(谷歌)地图体验一下就知道了。当然,上面的只是我的初步设想,在实现过程中就出问题了,下面我把自己遇到的困难和解决方法说一下,由于这是公司项目,涉及到知识产权和保密问题,我就只说思想,不给代码,代码就自己写吧。问题一:鼠标滑

2014-11-17 21:05:45 2391

原创 一个简单的NASM 程序,开机输出字符串

当BIOS启动时,会将启动设备的第一个扇区(通常)

2014-11-06 13:53:44 4872 4

原创 NASM 在linux 环境下 的hello world 程序

section .datamsg db "Hello , world", 13, 10len equ $-msgsection .textglobal _start_start: mov eax, 4 mov ebx, 1 mov ecx, msg mov edx, len int 0x80 mov eax, 1 mov ebx, 0 int 0x

2014-11-05 21:07:23 1109

原创 ubuntu 14.04下编译lte模块文档

进入ns主目录下的src/lte/doc 目录中, 运行make 会提示多种可编译成的

2014-11-05 10:31:40 627

原创 常用汇编指令

此处列举的汇编指令为gas(gnu 汇编),相对与Intel汇编和as86 来说,语法上有些

2014-10-28 10:12:47 846

原创 学习linux 内核完全剖析 相关的基础知识汇总

如何将内核代码head.s 写入到dd if=boot of=boot.img bs=32 skip=1此句以BlockSize=32Byte把boot写入boot.img,跳过一个输入Block(32Bytes),也就是跳过boot文件头.dd if=head of=boot.img bs=512 seek=1此句以BlockSize=512Byte把head写入boot.i

2014-10-27 16:01:27 1257 1

原创 Bochs 在Ubuntu 14.04 LTS x64 下安装

sudo apt-get install bochssudo apt-get install bochs-x

2014-10-27 15:04:14 918

vc++进度条的应用及美化

编译器用的是vs2008,主要是一个进度条的美化已经相关的设定,如取消安装时会回滚等

2013-04-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除