<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ChaserZHY的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ChaserZHY</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ChaserZHY]]></copyright><item><title><![CDATA[Linux进程间通信]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106174698</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106174698</guid><author>ChaserZHY</author><pubDate>Sun, 17 May 2020 15:24:19 +0800</pubDate><description><![CDATA[进程间通信介绍
目的
数据传输：一个进程需要将它的数据发送给另一个进程
资源共享：多个进程之间共享同样的资源。
通知事件：一个进程需要向另一个或一组进程发送消息，通知它（它们）发生了某种事件（如进程终止
时要通知父进程）。
进程控制：有些进程希望完全控制另一个进程的执行（如Debug进程），此时控制进程希望能够拦截另一个进程的所有陷入和异常，并能够及时知道它的状态改变
分类
1.管道
匿名管道pipe
命名管道
2.System V IPC
System V 消息队列
System V 共享内存
Syste]]></description><category></category></item><item><title><![CDATA[C++STL简介]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106131725</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106131725</guid><author>ChaserZHY</author><pubDate>Fri, 15 May 2020 00:00:53 +0800</pubDate><description><![CDATA[什么是STL
STL(standard template libaray-标准模板库)：是C++标准库的重要组成部分，不仅是一个可复用的组件库，而且是一个包罗数据结构与算法的软件框架。
STL的版本
原始版本
Alexander Stepanov、Meng Lee 在惠普实验室完成的原始版本，本着开源精神，他们声明允许任何人任意运用、拷贝、修改、传播、商业使用这些代码，无需付费。唯一的条件就是也需要向原始版本一样做开源使用。 HP 版本–所有STL实现版本的始祖。
P. J. 版本
由P. J. Plau.]]></description><category></category></item><item><title><![CDATA[linux接口2:理解文件系统]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106131600</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106131600</guid><author>ChaserZHY</author><pubDate>Thu, 14 May 2020 23:52:30 +0800</pubDate><description><![CDATA[书接上篇博客：上篇博客篇幅太长，所以分了一下：
我们使用ls -l的时候看到的除了看到文件名，还看到了文件元数据
[root@localhost linux]# ls -l
总用量 12
-rwxr-xr-x. 1 root root 7438 “9月 13 14:56” a.out
-rw-r–r--. 1 root root 654 “9月 13 14:56” test.c
每行包含7列：
模式
硬链接数
文件所有者
组
大小
最后修改时间
文件名
stat命令能够看到更多信息
[root@localh]]></description><category></category></item><item><title><![CDATA[linux基础接口]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106131253</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106131253</guid><author>ChaserZHY</author><pubDate>Thu, 14 May 2020 23:41:55 +0800</pubDate><description><![CDATA[接口介绍
open man open
#include &lt;sys/types.h&gt;
#include &lt;sys/stat.h&gt;
#include &lt;fcntl.h&gt;
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
pathname: 要打开或创建的目标文件
flags: 打开文件时，可以传入多个参数选项，用下面的一个或者多个]]></description><category></category></item><item><title><![CDATA[C++模板初始]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106108565</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106108565</guid><author>ChaserZHY</author><pubDate>Wed, 13 May 2020 22:45:23 +0800</pubDate><description><![CDATA[进入正题：
如何实现一个通用的交换函数呢？
void Swap(int&amp; left, int&amp; right) {
 int temp = left;
 left = right;
 right = temp; }
void Swap(double&amp; left, double&amp; right) {
 double temp = left;
 left = right;
 right = temp; }
void Swap(char&amp; left, char&amp; rig]]></description><category></category></item><item><title><![CDATA[关于C++语言的内存管理的一些小知识]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106087538</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106087538</guid><author>ChaserZHY</author><pubDate>Tue, 12 May 2020 23:26:09 +0800</pubDate><description><![CDATA[在这篇博客中，来简单介绍一下在C++语言的一点内存管理的小知识，在这之前我还写了一篇关于C语言的内存管理的小知识，如果感兴趣的同学可以翻到前面看一下那篇博客，给小弟增加点浏览量。
话不多说，进入正题：
C++内存管理方式：
C语言内存管理方式在C++中可以继续使用，但有些地方就无能为力而且使用起来比较麻烦，因此C++又提出了自己的内存管理方式：通过new和delete操作符来进行动态内存管理。
new/delete操作内置类型
void Test()
{
 // 动态申请一个int类型的空间
 int* p]]></description><category></category></item><item><title><![CDATA[超级超级简单的vim配置]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/106087356</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/106087356</guid><author>ChaserZHY</author><pubDate>Tue, 12 May 2020 23:03:51 +0800</pubDate><description><![CDATA[电脑重置之后好多环境都没了，在Lunix环境下的vim方法找到了好多，都没配置好，这次在网上找到一个超级简单的给大家分享一下。话不多说，进入正题：
vimplus
简介
vimplus是国内的又一个大佬打造的一个vim开发工具包. 为 cpp 开发者量身定做. 界面漂亮.
官网参见github
https://github.com/chxuan/vimplus
安装过程
可以参考github上的文档
git clone https://github.com/chxuan/vimplus.git ~/.vim]]></description><category></category></item><item><title><![CDATA[Lunix下一个简易的shell实现]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/105606695</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/105606695</guid><author>ChaserZHY</author><pubDate>Sat, 18 Apr 2020 22:20:20 +0800</pubDate><description><![CDATA[通过前面所学的知识，水一篇博客，hhhh
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;unistd.h&gt;
#include &lt;string.h&gt;
#include &lt;fcntl.h&gt;
#define MAX_CMD 1024
char command[MAX_CMD];
int do_...]]></description><category></category></item><item><title><![CDATA[Linux进程控制]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/105605772</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/105605772</guid><author>ChaserZHY</author><pubDate>Sat, 18 Apr 2020 22:14:53 +0800</pubDate><description><![CDATA[进程创建
进程是如何创建的，通过前面的学习我们可以知道是有一个叫fork函数。这个函数就是fork函数，在linux中fork函数时非常重要的函数，它从已存在进程中创建一个新进程。新进程为子进程，而原进程为父进程。
#include &lt;unistd.h&gt;
pid_t fork(void);返回值：自进程中返回0，父进程返回子进程id，出错返回-1
进程调用fork，当控制转移到内核中的...]]></description><category></category></item><item><title><![CDATA[日期类的简单实现]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/105335759</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/105335759</guid><author>ChaserZHY</author><pubDate>Sun, 05 Apr 2020 23:05:16 +0800</pubDate><description><![CDATA[这篇博客简单实现一个日期类，直接发代码
class Date
{
public:
	int GetMonthDay(int year, int month)
	{
		int monthDays[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
		if (month == 2 &amp;&amp; 
			((year % ...]]></description><category></category></item><item><title><![CDATA[c++类和对象3]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/105297883</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/105297883</guid><author>ChaserZHY</author><pubDate>Fri, 03 Apr 2020 21:40:57 +0800</pubDate><description><![CDATA[在这篇博客来简单介绍一下类的其余的默认成员函数。话不多说，进入正题。
拷贝构造函数
概念
这是函数一看名称就是特殊的构造函数，在创建对象时，创建一个一模一样的对象。同类型的对象来参数来初始化的构造函数。
特征
拷贝构造函数也是特殊的成员函数，其特征如下：

拷贝构造函数是构造函数的一个重载形式。
拷贝构造函数的参数只有一个且必须使用引用传参，使用传值方式会引发无穷递归调用。
这个函数如何初始化呢？...]]></description><category></category></item><item><title><![CDATA[分页式 分段式 段页式实现原理]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/105280506</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/105280506</guid><author>ChaserZHY</author><pubDate>Thu, 02 Apr 2020 22:53:36 +0800</pubDate><description><![CDATA[在这篇博客中，来详细介绍一下程序地址空间的概念，一开始叫做进程地址空间。在内核当中创建一个进程，会有这个PCB(进程控制块)，在这个PCB中，有一个内存指针struct mm_struct mm指向程序地址空间，或者叫做进程地址空间。
那么内核空间在哪里呢？
是在用户空间中，在这里讨论的都是以32位系统为参照的。这样自说很枯燥，上个图.

在父进程PCB中，内存指针指向虚拟地址空间，但是在系统调用...]]></description><category></category></item><item><title><![CDATA[C++类和对象2]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/105272419</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/105272419</guid><author>ChaserZHY</author><pubDate>Thu, 02 Apr 2020 17:38:18 +0800</pubDate><description><![CDATA[这篇博客来介绍一下类的默认成员函数，在类中有6个默认成员函数，就算一个类什么都没有，也会自动生成这6个默认成员函数。那么这6个默认成员函数是什么呢？
完成初始化和清理的两个函数
构造函数和析构函数
完成拷贝复制的两个函数
拷贝构造函数和赋值重载函数
取地址重载的两个函数
普通对象和const对象取地址函数，这两个函数一般不需要自己实现。
话不多说，进入正题。
构造函数
构造函数是特殊的成员函数，需...]]></description><category></category></item><item><title><![CDATA[linux进程概念2]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104998261</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104998261</guid><author>ChaserZHY</author><pubDate>Fri, 20 Mar 2020 21:17:15 +0800</pubDate><description><![CDATA[书接上文，在这篇博客中介绍一下进程状态。
进程状态：
一个进程可以有几个状态：
R运行状态（running）: 并不意味着进程一定在运行中，它表明进程要么是在运行中要么在运行队列里。
S睡眠状态（sleeping): 意味着进程在等待事件完成（这里的睡眠有时候也叫做可中断睡眠（interruptible sleep））。
D磁盘休眠状态（Disk sleep）有时候也叫不可中断睡眠状（uninte...]]></description><category></category></item><item><title><![CDATA[C++类和对象1]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104969250</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104969250</guid><author>ChaserZHY</author><pubDate>Thu, 19 Mar 2020 16:44:05 +0800</pubDate><description><![CDATA[进入了C++类和对象的学习，这篇博客会简单介绍一下。
面向过程和面向对象初步认识
C语言是面向过程的，关注的是过程，分析出求解问题的步骤，通过函数调用逐步解决问题。C++是基于面向对象的，关注的是对象，将一件事情拆分成不同的对象，靠对象之间的交互完成。
类的引入
C语言中，结构体中只能定义变量，在C++中，结构体内不仅可以定义变量，也可以定义函数
struct Student
{
 void Se...]]></description><category></category></item><item><title><![CDATA[Linux进程概念1]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104962688</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104962688</guid><author>ChaserZHY</author><pubDate>Thu, 19 Mar 2020 11:20:36 +0800</pubDate><description><![CDATA[这篇博客来简单介绍一下进程概念。在提到进程这个东西的时候，我们首先的先了解两个概念：什么是冯诺依曼体系结构？什么是操作系统？
我们常见的计算机大部分都遵循冯诺依曼体系结构，这个体系结构主要是大部分计算机都是由输入设备、存储器、运算器、控制器、输出设备组成。其中运算器和控制器加起来就是中央处理器。在存储器和中央处理器之间会以数据信号来交流。其他之间通过控制信号来交流。
关于冯诺依曼，必须强调几点：
...]]></description><category></category></item><item><title><![CDATA[C++小语法2]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104952408</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104952408</guid><author>ChaserZHY</author><pubDate>Wed, 18 Mar 2020 21:09:57 +0800</pubDate><description><![CDATA[这几天身体出了一点问题，学习情况很不良好。也让我意识到了身体是革命的本钱。也希望各位大佬同行也能照顾自己的身体。在这方面我吃了太多亏了。不说了，往事如烟。咋们还得向前看。
书接上文，这篇博客的东西可能有点少，各位谅解。
内联函数
概念：
以inline修饰的函数叫做内联函数，编译时C++编译器会在调用内联函数的地方展开，没有函数压栈的开销，内联函数提升程序运行的效率。在正常情况下调用函数是要消耗的...]]></description><category></category></item><item><title><![CDATA[初入门的C++小语法]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104699277</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104699277</guid><author>ChaserZHY</author><pubDate>Fri, 06 Mar 2020 18:34:55 +0800</pubDate><description><![CDATA[这篇博客在写的时候，也是本人接触C++语言的时候，为了打好自己的基础，想在以后找一个差不多的工作，所以会交流分享一下自己在初学C++的一点小心得，希望有初学的老哥多多指教。话不多说，进入正题。
1.命名空间
为什么会有命名空间这个关键字呢，这是因为在C++中，变量、函数和后面要学到的类都是大量存在的，这些变量、函数和类的名称将都存在于全局作用域中，可能会导致很多冲突。使用命名空间的目的是对标识符的...]]></description><category></category></item><item><title><![CDATA[排序系列—————交换排序]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104563254</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104563254</guid><author>ChaserZHY</author><pubDate>Fri, 28 Feb 2020 21:07:51 +0800</pubDate><description><![CDATA[在这篇博客中，简单介绍一下交换排序。什么是交换排序呢？
所谓交换排序就是根据序列中两个记录键值的比较结果来交换这两个记录在序列中的位置，交换排序的特点是：将键值较大的记录向序列的尾部移动，键值较小的记录向序列的前部移动。在这篇博客中介绍的主要是冒泡排序和快速排序，冒泡排序是很简单的，在这篇博客中会主要介绍一下快速排序，前面学习过的排序都是根据自己的特点命名的，但是只有快速排序是以快速命名的，这就说...]]></description><category></category></item><item><title><![CDATA[Linux指令简单介绍]]></title><link>https://blog.youkuaiyun.com/ChaserZHY/article/details/104524234</link><guid>https://blog.youkuaiyun.com/ChaserZHY/article/details/104524234</guid><author>ChaserZHY</author><pubDate>Wed, 26 Feb 2020 21:36:13 +0800</pubDate><description><![CDATA[初入Linux的世界，在这篇博客中给大家介绍一下Linux的一些简单的指令介绍。话不多少，我们直接进入正题：
ls指令
作用：罗列出当前文件夹下的内容
ls -l:查看详细的文件或者文件夹属性
ls -a:查看隐藏文件
ls -lrt:按照修改时间进行排序
pwd指令
作用：显示当前目录的路径
cd指令：
作用：切换目录
cd [path] cd[相对路径]/[绝对路径]
cd / 切换到根目录
...]]></description><category></category></item></channel></rss>