自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

刘洋_heaven的博客

记录学习

  • 博客(56)
  • 资源 (3)
  • 收藏
  • 关注

原创 CSDN做的最LOW的设计

允许用户设置必须关注后太能看全文。

2022-11-10 11:06:50 202

原创 vsftp实用教程(四种配置需求)

正文共:1514字11图预计阅读时间:5分钟由于工作原因,需要在Linux服务器上搭建FTP服务,真相君选择使用vsftp这个工具,在搭建和使用过程中踩了一些坑,在这里分享给大家,希望大家能安全避坑。对ftp服务的配置需求主要包括一下几种:1.匿名用户可读2.匿名用户可读写(删除)3.非匿名用户登陆ftp(自定义ftp根目录)4.非匿名用户可读写(删除)vsftp基于配置文件实现各种功能,接下来一一介绍这4种需求具体该如何配置。1.匿名用户可读 vsftp在安...

2021-09-16 13:39:55 1949

原创 Wondow10 编译 Wireshark 源码(Windows10 + Vs2019 +Qt5.12)

1.编译环境Windows10 + Vs2019 Qt5.12 Python32.官方教程wireshark提供windows平台的编译方法,点此查看3.遇到的问题理论上安装官方教程基本不会出错,但是在 2.2.12.Generate the build files中的第一步cmake -G "Visual Studio 16 2019" -A x64 ..\wireshark就出现报错。cmake命令会输出很长一串输出,如果cmake失败,关键是区别定位哪些是导致c.

2020-06-11 23:55:29 2023 5

原创 HTML超大图片加载显示解决方案--图片切割转换成瓦片地图(BaiduMapTileCutter)

前言项目中遇到加载网页加载显示大图片的需求(>100MB),参考百度地图等地图加载思路,将超大图片切割成瓦片地图,分级别展示,这样动态加载大图片时,只异步加载图片的部分区域,实现超大图片的高效加载显示。1.瓦片切分工具-BaiduMapTileCutter在github上发现一款开源瓦片切割工具,BaiduMapTileCutter,能够将图片切分成3-20级的瓦片,同时会生成一个index.html文件,用浏览器打开就能看到切分成瓦片地图的图片的展示效果,不过index.html需要联网

2020-06-10 21:06:58 3387

原创 C/C++ 编程基础,重拾C/C++

字符/字符串1.char *类型是字符串指针,无法获取其指向的字符串长度;char []类型是字符串数组,使用sizeof()可以获取其长度。2.strlen()函数计算字符串长度仅以‘\0’作为字符串结束标志,而sizeof()能获取真实的字符数组的长度。3.char */char[] 转std::string 也以字符指针/数组中第一个‘\0’认为是字符串的结束。4.malloc...

2020-03-14 20:25:30 176

原创 大数据工具使用纪实

1.hadoop主从式hadoop配置主要包含:1.环境准备:java环境,免密登陆,主机名映射(可选),环境变量2.配置文件:core-site.xml hdfs-site.xml slaves3.操作hdfs namenode –format #格式化hdfs start-dfs.sh stop-dfs.sh hdfs dfs -put /file...

2020-01-09 14:48:09 135

原创 HBase安装及读写

摘要本文介绍HBase在CentOS下的安装部署,以及基于Scala语言在Spark上读写HBase的简单实例。1.HBase简介Hbase是一个高可靠、高性能、面向列、可伸缩的分布式数据库,主要用来存储非结构化和半结构化的松散数据。Hbase的目标是处理非常庞大的表,可以通过水平扩展的方式,利用廉价计算机集群处理由超过10亿行数据和数百万列元素组成的数据表。那么关系型数据库...

2020-01-07 22:32:17 349

原创 使用MongoDB集群搭建whois Web查询系统

目录摘要一.MongoDB 集群搭建配置二.Whois数据的导入三.Web服务搭建摘要本文主要介绍使用MongoDB集群搭建whois web查询系统,其中用到MongoDB集群化存储,XAMPP一站式web搭建工具,具体实现使用基于PHP的Laravel框架。一.MongoDB 集群搭建配置二.Whois数据的导入1.数据预处理原始数据编码格式比较混乱,测...

2019-12-20 17:52:13 248

原创 MongoDB 集群搭建配置示例

本文主要示范了如何使用4台Linux系统搭建一主三从的Mongodb集群。1.物理环境准备节点信息:node01,node02,node03,node04节点环境:节点互通,且配置了主机名解析2.MongoDB配置目标配置文件数据库名称:c1分片名称:S1,S2,S3node01:c1node02:S1,S2node03:S2,S3node04:S3,S1部署结构如下图所示在各个主机上执行如下指定命令,每行的node02/no...

2019-12-20 17:24:33 229

原创 linux lampp php 安装mongodb扩展

1.进入lampp根目录2.下载mongodb php扩展库(php5.6对应mongodb-1.2.9.tgz)3.安装mongodb扩展./etc/pecl installmongodb-1.2.9.tgz4.在./etc/php.ini 加入extension=extension=mongodb.so5.重启lampp服务6.php.info()查看是否加载mon...

2019-12-15 21:23:51 170

原创 Linux “no module named yum”错误解决方法

错误:no module named yum原因:导致此错误一般是yum程序中指定的python版本不匹配。由于我更换了python默认版本,从2.6换成2.7,但是yum依赖原来的的2.6。解决方法:打开“/usr/bin/yum”文件,如下所示#!/usr/bin/pythonimport systry: import yumexcept ImportError...

2019-12-15 14:30:45 1187

原创 CentOS6.5 安装Hive

本文介绍在CentOS6.5上安装Hive,安装Hive前系统中已经部署完成了hadoop分布式文件系统,如果你需要安装hadoop请参考这篇文章。安装Hive是需要mysql数据库服务的支持,因此需要先安装mysql,参考了许多博客教程,最靠谱的方法是从mysql官网下载后,进行本地安装。可以参考这篇文章进行安装。另外,在安装过程中可能会提示需要先安装libc.so.2等依赖,直接yum进行...

2019-11-06 13:37:42 141

原创 Hadoop 配置yarn常见错误

1.报错时环境及配置hadoop环境为一主三从,在namenode上启用yarn,配置yarn-site.xml,三个从节点yarn-site.xml配置文件为空。yarn-site.xml的内容如下<configuration> <property> <name>yarn.nodemanager.a...

2019-10-18 23:43:54 1850

原创 防范USB蠕虫病毒

大学里面的打印店必有USB蠕虫病毒好像是个定论。一般U盘中病毒的症状就是 里面的文件全都消失不见,即使显示隐藏文件也无用,这是因为病毒对文件进行系统级隐藏,即修改文件为系统文件同时隐藏文件,解决方法是在cmd下运行此命令: attrib -S -H /S /D +你的U盘根目录,例如 attrib -S -H /S /D F:\*然后就发现文件已恢复显示。在win7以前,例如wi...

2019-10-15 22:48:43 1991

原创 Python 简单爬虫实例

目录摘要1.确定爬取网页对象1.1查看目标对应的源码2.获取网页源代码3.解析网页源码结束摘要本文主要介绍使用python第三方库beautifulsoup及requests实现网页内容抓取,以百度首页为例,介绍如何从零开始介绍如何抓取指定网页中的内容。1.确定爬取网页对象爬虫的目的在于使用编程的手段将获取网页内容的工作进行自动化和高效化,例如可以通过每周爬...

2019-09-29 16:33:26 1541 1

原创 VMware虚拟机搭建HADOOP环境(下篇)

目录引言1.搭建前准备1.1所需软件1.2HADOOP配置参数定义1.3 主要工作2.配置node01的系统环境2.1设置node01的IP信息2.2配置DNS2.3 配置域名反向解析2.3禁用操作系统安全配置3.安装所需软件并配置3.1配置VMware NAT模式3.2 在node01中安装可视化传输工具lrzsz3.3 使用xshell远...

2019-09-22 20:51:55 6876 1

原创 VMware虚拟机搭建HADOOP环境(上篇)

目录引言1.搭建前准备1.1所需软件1.2HADOOP配置参数定义2.在虚拟机上安装CentOS结束引言本文介绍在VMware虚拟机下,如何搭建配置HADOOP平台,本文的目的是成功搭建HADOOP测试环境,对于技术细节原理不做介绍,过程中会把遇到的错误进行说明,避免踩坑,本篇文章为上篇,介绍如何安装CentOS虚拟机,下篇介绍如何搭建一主三从的HADOOP平台。...

2019-09-21 15:58:07 11337 2

原创 Linux内存初始化&开启分页(简)

摘要本文主要介绍linux内核初始化时,对物理内存的使用结构,以及如何从实模式转换成保护模式,即如何开启内存分页。1.物理内存布局 如上图所示,在内核初始化阶段,内核被加载到物理内存地址0x00100000开始的地方,即图中_text的地方为内核代码的第一个字节,至于为何不加载到物理内存的起始处,可以参考其他资料。2.进程的线程地址空间我们知道,进程分为内核态和用户态,...

2018-11-26 00:48:38 790

原创 Linux内核中的同步机制

摘要本文介绍Linux内核中的一些同步机制,通过本文,希望读者能够明白以下几点:什么是同步 为什么要同步 同步的几种手段1.什么是同步?与其解释什么是同步,倒不如告诉读者同步的由来。在Linux内核中,同步技术是为了解决问题而产生的。 说起这个问题,不得不提起可重入内核。可重入内核:可重入内核即多个进程可以同时在内核态下执行,多个进程的执行事实上说明了进程可以交替执行。 内...

2018-08-26 15:54:06 4398 1

原创 细说Linux内核中断机制(详)

在技术面前,多问为什么总是好的,知其然不如知其所以然。为什么要有中断?1.前言本文尽量以设计者的角度去介绍中断。本文着重介绍Linux内核中中断处理的始末流程,因此对一些基本的概念应该有所了解。2.硬件支持我们知道,CPU有一个INTR引脚,用于接收中断请求信号。而中断控制器用于提供中断向量,即第几号中断。3.内核需要做哪些工作?3.1需要一张表首先,中断可...

2018-07-20 23:04:21 4236

原创 《Effective C++》条款04:确定对象被使用前已被初始化

1.类成员初始化时机class test{public: test() :a("test"){//使用member initalization list }; test(string v){ a = v; //在函数体内,使用赋值操作 } string a;};我们知道,对类成员进行初始化一般是在其构造函数中进行,区别在于是放在函数体内部,还是使用member initi...

2018-07-04 00:37:00 174

转载 数据库三大范式详解(通俗易懂)

范式英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。目前有迹可寻的共有8种范式,依次是:1NF,2NF,3NF,BCNF,4NF,5NF,DKNF,6NF。通常所用到的只是前三个范式,即:第一范式(1NF),第二范式(2NF),...

2018-06-25 23:53:48 231

原创 如何参与Linux内核的开发维护

对于想参与Linux内核开发的同学来说,如何开始是一个问题,网上资料五花八门,但是,第一步首先建议的是下载任意版本的linux内核源码,然后阅读Document目录下的HOW_TO文档,这是官网说明,值得你去阅读,如果阅读英文吃力,Document目录下专门有一个zh_CN的目录,里面是一些关键的中文文档,由几个中国人专门负责维护,如下图所示。其实Document目录下包含了Linux 内核开发的...

2018-06-24 14:09:17 1646

原创 C inline

参考资料:gcc 编译器对 inline 函数的支持关于 inline 函数的分析: *** undefined reference to ***C语言inline详细讲解

2018-06-23 01:12:32 1771

原创 《深度探索C++对象模型》 构造、析构、拷贝语义学 第五章笔记

本章主要介绍在不同的继承体系下,针对类的构造、析构及拷贝操作,编译器为其做了哪些工作。1.继承体系下的对象构造我们使用构造函数的初始化成员列表初始化成员时,对于对象会分别调用其拷贝构造函数。含有虚函数的,编译器在其构造函数中设置虚函数表,这是最好的时机。但可以考虑和初始化成员哪个放前面好?虚拟继承体系下,对虚基类成员初始化应由最后一层类负责。可以想象,不然呢?交由哪个subobject都不合适。文...

2018-06-18 17:28:24 216

原创 《深度探索C++对象模型》 Function语义学 第四章笔记

本章主要探讨C++类的成员函数(member function):static、nonstatic、及vritual函数调用方式的区别。1.1非静态成员函数C++类的非静态成员函数(nonstatic member function)被设计为和普通非成员函数具有相同的效率。可以思考怎样将一个成员函数转化为一个非成员函数?解决这个问题,首先需要搞清楚他们之间有何区别。可以想象,最大的区别就是非成员函...

2018-06-14 12:03:04 260 1

原创 《深度探索C++对象模型》 Data语义学 第三章笔记

本章主要讨论类的成员变量(Data Member)的相关语义。1.Data Member 的绑定2.Data Member的布局3.3Data Member的存取可以想象,一下几种情况对Data Memeber的访问赋值有所区别:1.单一继承2.多重继承3.虚继承(virtual inheritance)4.多态下的成员操作有所区别的根本原因还是成员在对象中的存储结构。因此先理解这几种情况下对象的...

2018-06-11 11:42:38 253

原创 《深度探索C++对象模型》 构造函数语义学 第二章笔记

本章主要介绍类的构造函数有关的语义(semantics)1.默认构造函数

2018-06-11 11:06:33 238

原创 《深度探索C++对象模型》勘误表

1.P32页--翻译建议2.P37页 第二章标题 构造函数语意学,语意-&gt;语义 原文:The Semantics of Constructors,Semantics 显然是语义而非语意。

2018-06-08 10:55:20 384

原创 《深度探索C++对象模型》 第一章笔记

1.关于类本身占用内存大小class Point { public: Point( float xval ); virtual ~Point(); float x() const; static int PointCount(); protected: virtual ostream&amp; print( ostream &amp;...

2018-06-07 23:57:53 346 1

原创 Linux源码阅读进程通信之管道(详)

管道是进程通信的一种方式,这里主要介绍无名管道(以后简称管道)。特点1.这种管道只能在父子进程或兄弟进程之间建立,而命名管道就没有这种限制。2.管道只能单向流通,对于A,B两个进程,要不A写B读,要么B写A读,数据流向是单向的。概述简单的说,管道其实是在内存中分配一个页面pipe_page用作两个进程通信的联络点,A进程往页面中写,而B进程从页面中读,或者相反。既然是两个进程用一个页面作为通信的联...

2018-05-27 15:55:03 777

原创 Linux内核源码阅读之系统调用execve()

asmlinkage int sys_execve(struct pt_regs regs)前言sys_execve()根据参数中指定的二进制文件路径,执行相应的二进制文件。我们可能会疑惑,参数中是一个pt_regs结构,哪里有文件路径?事实上,系统调用也属于中断,而对于系统调用,会将参数地址保存到指定寄存器中,这一事件发生的时间点是已经进入execve()代码,但是还未通过int 0x80中断真...

2018-05-20 23:42:43 3020

原创 Linux内核源码阅读之do_fork()

前言本文主要介绍Linux内核中,一个新的进程/线程是如何诞生的。主要涉及复制父进程各类资源、设置子进程系统堆栈、构造子进程调度时运行点等。函数原型Linux系统中,除第一个进程是被捏造出来的,其他进程都是通过do_fork()复制出来的。int do_fork(unsigned long clone_flags, unsigned long stack_start,stru...

2018-05-20 01:38:45 2117

原创 Linux内核源码阅读之中断(简)

摘要本文对Linux2.4.0中中断机制从源码层面进行简要介绍,阅读需要有一定基础,详细版本请参考这里。这里主要介绍以下几个部分:1.中断向量表IDT的初始化主要是设置中断向量表中中断服务的类型,服务程序的入口地址,DPL等。1.1 trap_init()初始化系统保留的中断向量,从0x00到0x1f共36个;init_IRQ()初始化用于外设的通用中断向量,0x20~0xff...

2018-05-19 00:43:05 400

原创 Linux内核源码阅读之系统调用mmap()

mmap()将一个已经打开的文件的内容映射的它的用户空间。1.解释“文件的内容映射的它的用户空间”是什么意思?我们知道linux内核中,物理内存在内存中以页面大小为单位进行维护,而页式内存管理简单的说是给定一个虚拟地址0xA,经过页式映射,能够找到物理内存所对应的页面地址,数据真正存放的位置。Linux内存管理以页面为单位,对用户空间的管理当然也是以页面为单位,而每个虚存地址都...

2018-05-15 22:42:17 1065

原创 Linux内核源码阅读之系统调用sys_brk()

摘要brk()用于用户进程向内核申请空间,进一步说用于扩展用户堆栈空间,或者回收用户堆栈空间。本文仅简要介绍其函数主体结构,感兴趣的读者可以阅读相关源码书籍。asmlinkage unsigned long sys_brk(unsigned long brk)1.malloc为小空间申请,brk()为大块空间申请。2.sys_brk()包括两部分增长动态分配区uns...

2018-05-13 01:02:13 1482

原创 Python 字符编码

python字符编码下面一篇博客堪称经典,看这一篇足够解决。【总结】Python 2.x中常见字符编码和解码方面的错误及其解决办法下面是我自己的记录,仅作自己记忆,不必看。1.python编码转换首先明确encode和decode的含义。encode的使用对象是unicode,即u....

2018-04-18 11:48:31 328

原创 Linux内核源码阅读之系统调用sys_write()

本篇文章仅做sys_write()源码阅读后的记录,从自己的思路叙述,比较随意,仅做本人阅读存档。sys_write()是linux文件系统中核心函数之一,它完成的操作是将用户缓冲区的文件内容写入到文件在磁盘中的对应位置。1.文件页面缓存要想理解Linux文件读写过程,首先需要明白linux对文件读写的设计,具体就是文件数据在内存中的组织方式。我们先看一张图(摘自linux内核情景分析)我们可以先...

2018-04-17 12:08:33 6386 1

原创 数字/字符串排列组合(Leetcode) 总结

综述:使用递归求解问题有时往往令人费解,博主对递归也是头痛不已,以下问题,利用递归很容易求解。总的来说,递归需要设计成:处理单个问题,递归求解子问题,设置出口。需要铭记的是递归所做的工作和处理单个问题一样,所以只要单个问题取遍所有情况,那么递归同样也能取得所有情况。切记不要去想递归到底怎么一层层的调用,不管是读代码还是写代码,需要关注的是递归出口,程序怎么设计求解单个问题,一旦单个问题解决了,后续...

2018-04-08 12:47:34 6409

原创 01背包 动态规划

对于当前容量的背包,如果放入当前物品(可能为了放入该物品而腾出一些空间)而使背包总价值增大,那就放入背包。                                                                                                                                                   ...

2018-04-03 01:14:21 912 1

操作系统经典书籍合集

书籍列表: Computer Systems - A Programmer's Perspective.pdf Design of the Unix Operating System By Maurice Bach.pdf Morden Operating.Systems.4th.Edi.pdf Operating system Principles and practice (6).pdf Operation System Concepts_8th_Edition.pdf Tanenbaum_Woodhull_Operating Systems Design & Implementation 3rd Edition.pdf 操作系统设计与实现 交大翻译 操作系统设计与实现 北大翻译 自己动手写操作系统_于渊_70M_高清(附源码).rar 为什么下载还要积分,如果可以我情愿不要积分,好资源不都应该共享吗? 附百度云下载链接:https://pan.baidu.com/s/15QrbxQqt-A_mkb4EHGfovA

2018-05-11

数据挖掘导论课件PPT(Introduction.To.Data.Mining)

数据挖掘导论(作者:Pang-Ning Tan,Michael Steinbach,Vipin Kumar) 配套课件PPT

2017-12-05

空空如也

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

TA关注的人

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