ahr_per@163.com
码龄10年
求更新 关注
提问 私信
  • 博客:64,089
    64,089
    总访问量
  • 45
    原创
  • 13
    粉丝
  • 32
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
加入CSDN时间: 2015-05-23

个人简介:C 工程师

博客简介:

qq_28437139的博客

查看详细资料
个人成就
  • 获得32次点赞
  • 内容获得8次评论
  • 获得166次收藏
创作历程
  • 23篇
    2020年
  • 10篇
    2019年
  • 12篇
    2018年
成就勋章
TA的专栏
  • 渗透笔记

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    架构
  • 服务器
    linux
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

(深入理解计算机系统) bss段,data段、text段、堆(heap)和栈(stack)

bss段:  bss段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。  bss是英文Block Started by Symbol的简称。  bss段属于静态内存分配。data段:  数据段(data segment)通常是指用来存放程序中已初始化的全局变量的一块内存区域。  数据段属于静态内存分配。text段:  代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域。...
原创
发布博客 2020.11.17 ·
361 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

关于中断的简单理解

什么是中断?为什么需要中断大家知道CPU的处理速度很快,但是外部设备的处理速度就很慢了,为了让这两种不同速度的机器相互配合,就产生了中断。比如:CPU有一个需求需要把硬盘中的数据读取到内存中,这时硬盘中的数据拷贝到内存是一个比较慢的情况,如果没有中断,CPU需要不停的检查读完了没有,但是有了中断,CPU读硬盘比较慢就去处理其他事情了,等它读好了通知我,通知的这个动作就是中断。中断号和中断向量中断号和中断向量其实都是一个数字,因为中断号相对的都是外部设备,0-31的中断向量都分给了内部中断
原创
发布博客 2020.11.14 ·
700 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

操作系统讲解linux

操作系统无比的复杂,导致学习到一半就废了,接下来几天里,我就把linux操作系统的业务串联起来。linux内核有5个模块1.内存管理2.进程管理3.进程通信4.文件系统6.网络接口内存管理、进程通信、文件系统、网络接口都属于功能,都是被进程调用,所以linux内核可以分为进程有关的业务、和其他业务。其实只要搞清楚进程的问题,其他的情况就清楚了。进程启动进程时如何启动的呢?看linux内核时,汇编不需要管电脑启动的时候利用汇编做了一堆清理和准备的工作然后
原创
发布博客 2020.10.22 ·
241 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

用户抢占和内核抢占的介绍

首先说明下用户进程和内核进程Linux的虚拟地址空间为4GB,其中前1GB称为内核空间,后3GB称为用户空间。用户进程:运行在用户空间称之为用户态。内核进程:进程运行在内核空间时称为内核态。在简单点就是执行前1GB中指令的时候叫内核态,执行后3GB指令的时候叫用户态。一般情况下进程停留的用户态,通过中断和异常或者系统调用的方式可以陷入内核态。用户抢占:当执行系统执行中断或者系统调用是的更...
原创
发布博客 2020.03.13 ·
382 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

profile、environment、.bashrc、bashrc区别

/etc/profile为系统的每个用户设置环境信息和启动程序,当用户第一次登录时,该文件被执行,其配置对所有登录的用户都有效。当被修改时,必须重启才会生效。/etc/environment系统的环境变量,/etc/profile是所有用户的环境变量,前者与登录用户无关,后者与登录用户有关,当同一变量在两个文件里有冲突时,以用户环境为准。/etc/bashrc为每个运行 bash s...
原创
发布博客 2020.02.23 ·
347 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

linux 4.12内核学习之进程关系

所有的进程都是由一个进程创建的,那么他们之间是靠什么联系在一起的呢一个进程的所有子进程都被链接在一条子进程链表上,头节点是父进程的children,链表节点是子进程的成员sibling。real_parent指向父进程,parent指向跟踪此进程的进程,如果没有进程跟踪,那么也指向父进程...
原创
发布博客 2020.02.19 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++ ostringstream、istringstream区别

ostringstream是输出流,istringstream是输入流,在程序中如何判断使用输出流还是输入流呢?输出流,程序中或者内存中的数据写入的流对象中的操作,所以输出流只支持<<操作输入流,流中的数据写入程序中,所以输入流只支持>>操作...
原创
发布博客 2020.02.18 ·
363 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

linux 4.12内核学习之进程命名空间和进程标识符

术语: C标准库进程术语 对应的linux内核的进程术语 包含多个线程的进程 线程组 只有一个线程的进程 进程或者任务 线程 共享用户虚拟地址空间的进程 结构体描述符task_struct结构体路径D:\linux4.12\linux-4.12.1\include\linux\sched.h,里面定义的数据比较多,这里就...
原创
发布博客 2020.02.18 ·
318 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

linux 4.12内核学习第一天

D:\linux4.12\linux-4.12.1\arch这个目录下放的是各种CPU上电启动的代码,没有具体研究看不大懂D:\linux4.12\linux-4.12.1\init\main.c这里是初始化的C语言代码,这里的初始化和体系结构无关,起始函数start_kernel(void)asmlinkage __visible void __init start_ker...
原创
发布博客 2020.02.17 ·
169 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

json格式介绍

一直在做C++,接触前端比较少,突然发现网络中传输数据,json用的很多,这里给大家介绍下什么是json网络中传输的叫json字符串,这个和普通的字符串没有区别json对象,是用{ "key":value, "key":value, "key":{ "key":value, "key":value ...
原创
发布博客 2020.02.16 ·
121 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用ACE来封装DLL

首先教大家如何到处函数.h文件#pragma once#include <ace/svc_export.h>extern "C" ACE_Export void fun();.cpp文件#include "dll.h"#include <iostream>void fun(){ std::cout << "void fu...
原创
发布博客 2020.02.15 ·
311 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

VS创建动态链接库教程

其实vs创建动态链接库工程非常简单,首先创建普通的C++程序以下这两个都可以更改配置属性的配置类型,动态库.dll,完成,下一节教你如何封装动态链接库。...
原创
发布博客 2020.02.15 ·
351 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

VS中调用动态链接库最简单的办法,利用lib文件和头文件方式调用dll,这种方法适合确定需要添加的库

第一步设置头文件目录,将这里的目录设置为你要使用dll库的头文件第二步设置lib库目录,将下列内容设置为包含lib库的目录第三步设置具体需要添加的lib库,这里将具体需要添加的lib库写在上面...
原创
发布博客 2020.02.14 ·
476 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

理解windows的消息机制

windows界面会产生很多的消息,消息存放在消息队列中每一个应用程序都有一个主消息循环,getmessage负责从消息队列中获取消息,然后dispatchmessage负责发送给其他具体的窗体来处理,窗体中通过窗体程序通过wndProc回调函数来处理接受到的消息...
原创
发布博客 2020.02.07 ·
207 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

VS中的编码,多字节编码和unicode编码是什么意思

我们发现编写C++代码时这里的字符集的修改好像没有什么作用,没错C++的实现是有具体的标准的,不是微软可以改变的,那么这里的字符集有什么用呢?其实这里是指调用windowsSDK时使用的字符集,意思是你调用windowsAPI的时候如果需要用到字符串是必须使用unicode编码,而我们C++中字符串的编码是ANSI,通俗的讲中国就是GB2312。这里可以配置windowsSDK的版...
原创
发布博客 2020.02.06 ·
964 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

boost的下载使用教程 windows下

boost官网:https://www.boost.org/下载windows下安装包,傻瓜式安装好,打开vs配置属性添加boost库根目录这里设置lib库目录在就是注意32为和64位的库,32位的boost库只能编译32位的程序,64位的boost库只能编译64位的程序...
原创
发布博客 2020.02.03 ·
944 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

快速了解区块链

首先介绍下区块:区块类似与一个个结构体,结构体中保存了各种各样的数据,区块链相当于一个数组,或者可以说是一个集合,那么往区块链上加区块相当于往数组后面添加元素,或者往集合中添加元素。为什么上链的区块中的数据不能修改:这个其实不是绝对的,因为每一个区块都和前一个区块有关系,如果修改了一个区块,那么后面的区块就不满足关系了,需要重新添加。如何去除中心化:区块链应用中每个用户需要下载所有的区块,...
原创
发布博客 2020.02.02 ·
181 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

TCP协议为什么是流的形式而UDP不是呢

TCP协议有一个缓冲区,当你需要发送数据时先将数据存储在缓冲区,然后tcp协议按照与服务器约定的滑动窗口的大小从缓冲区取数据发送,这个时候取多少数据时应用层无法控制的,并且取完后还需要等待确认后才可以将数据从缓冲区删除掉,所以有时候使用TCP协议发现,明明发送了一次数据确要接受好多次,要么就是发现TCP协议有数据丢失,TCP取数据的时候会可以避免MTU,来防止IP层分片。那么UDP协议为什么不...
原创
发布博客 2020.01.29 ·
751 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

计算机网络之运输层

尽管IP分片看起来是是透明的,但有一点让人不想使用它:即使只丢失一片数据也要重传整个数据报。为什么会发生这种情况呢? 因为IP层本身没有超时重传的机制——由更高层来负责超时和重传(TCP有超时和重传机制,但UDP没有。一些UDP应用程序本身也执行超时和重传)。当来自TCP报文段的某一片丢失后,TCP在超时后重发整个TCP报文段,该报文段对应于一份IP 数据报。没有办法只重传数据报中的一个...
原创
发布博客 2020.01.26 ·
163 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

计算机网络之网络层

网络层设计思路:向上只提供简单的灵活的、无连接、尽最大啊努力交付的数据报服务。每个分组独立发送,前后分组不进行编号、分组可能出错、丢失、重复、失序,也不保证交付的时间,如果计算机需要保证可靠的通信,需要运输层负责,网络层的实现尽量简单。互联网中需要把两个网络连接起来的设备物理层使用的中间设备是转发器 数据链路层使用的中间设备叫做网桥或桥接器 网络层使用的中间设备叫路由器 网络层以...
原创
发布博客 2020.01.26 ·
205 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多