首页
学习
活动
专区
工具
TVP
发布

yifei的专栏

专栏作者
88
文章
63277
阅读量
12
订阅数
双机调试Linux内核
这种方式调试内核需要两台机器,一台用来运行Linux内核,另一台对内核进行调试。一般有以下三种常用的方案,可以根据电脑的性能或资金状况来选择。可以开两个Linux系统的虚拟机;也可以在物理机系统是linux上面装虚拟机,然后虚拟机运行一个linux;再就是买开发板来调试内核。以下是在windows上开两个虚拟机的流程描述。
yifei_
2022-11-14
4.5K0
基础知识_设计模式
文章目录 1. 单例模式 1.1. 懒汉式 1.2. 饿汉式 2. Oberver观察者模式 记录一下常见的设计模式的实现方法(Cpp实现)。 单例模式 当只允许类创建一个实例的时候,可以使用单例模式。 懒汉式 懒汉式是在需要创建实例的时候才创建。 将构造函数设置为私有可以组织创建对象,然后通过static函数从内部调用构造函数。 线程不安全 #include <iostream> using namespace std; class Singleton{ public: static Si
yifei_
2022-11-14
1670
基础知识_数据库
1.2第二类丢失更新(覆盖导致丢失)。T1对var的修改被T2提交的修改覆盖了,这是不可重复读的一种特殊情况。
yifei_
2022-11-14
6810
基础知识_Cpp
friend提供了在类外访问类的私有成员的能力,friend可以修饰函数或类。当在类内声明一个友元函数时,该函数可以访问类的私有成员。当在类内声明友元类时,则友元类可以访问当前类的私有成员。
yifei_
2022-11-14
1.9K0
基础知识_网络
1.超时重传 顾名思义,如果检测到某一个数据包的定时器超出时间RTO(Retransmission Timeout超时重传时间)了,就需要重新发送该数据包了,RTO是由RTT计算出来的。RTT(Round-Trip Time 往返时延)这是从发送一个消息直到收到确认的时间。下面是RTO的计算方式:
yifei_
2022-11-14
4130
基础知识_操作系统
进程间相互独立,享有独立的资源;一个进程内的多个线程可以共享资源,但对于其他进程内的线程是不可见的。
yifei_
2022-11-14
4110
redis的安装和常用命令
文章目录 1. 安装 2. 常用命令 2.1. 连接远程redis服务器 2.2. 键相关的基本命令 2.3. 字符串string相关命令 2.4. 哈希hash相关命令 2.5. 链表List相关命令 2.6. 集合Set相关命令 2.7. 有序集合sorted set 2.8. HyperLogLog基数统计 2.9. 发布订阅 2.10. Redis事务 2.11. redis连接 2.12. redis服务器命令 3. 参考 redis的安装、常用命令、关键知识点。 安装 #下载 wget h
yifei_
2022-11-14
2500
产品入门笔记
战略层:产品目标、用户目标 | 市场研究、用户研究、数据分析 范围层:功能规格、内容需要 | 用户研究、需求分析 结构层:交互设计、信息架构 | 功能模块、信息架构、流程设计 框架层:界面设计、导航设计、信息设计 | 原型设计 表现层:视觉设计 | UI设计
yifei_
2022-11-14
3180
gdb和qemu调试Linux内核
之前学习了利用KGDB双机调试内核,这种方式需要在两个主机上,通过串口线进行连接,或者是通过VMware开启两个虚拟机进行调试,对机器要求相对高一些。通过qemu创建虚拟机,然后利用gdb进行调试相对更轻量级一点。 我先在centos7下面配置调试环境,但是centos7下没有qemu_system_x86等命令,所以需要重新编译qemu源码再进行安装,再加上各种依赖问题,于是转用ubuntu进行配置,过程简单了许多。
yifei_
2022-11-14
3.6K0
秋招总结
  秋招已经结束一段时间,是该总结一下了。   经过无数次的纠结,还是决定去互联网公司修修福报:(   往年的秋招都是金九银十嘛,但是今年由于疫情的影响,互联网公司的秋招貌似比往年提前了一些。一些公司从六月底七月初就已经开始了提前批的招聘。   我在秋招中全是投的北京的Cpp后台开发岗位,虽然自己学习计划上的好多东西还没来得及学,但秋招过程也不算太艰难,有幸在九月初拿到了百度提前批和快手两家的offer,在这之后感觉该面的公司也都面了,就没再继续投递简历,省出一些时间来学习了。
yifei_
2022-11-14
5850
如何读取Linux进程中的代码段和数据段
Linux下的程序的文件格式是ELF,里面分了各种段,有代码段、数据段、等。当运行这个程序时,系统也会给这个进程创建虚拟内存,然后把ELF中的数据分别加载到内存中的对应位置。本文整理了用cpp程序读取内存中的代码段和rodata数据段的方法。
yifei_
2022-11-14
3.4K0
python3_函数式编程
欢迎与我分享你的看法。 转载请注明出处:http://taowusheng.cn/
yifei_
2022-11-14
1750
红黑树学习感想
红黑树在很多地方有应用,在阅读《STL源码剖析》的时候遇到红黑树,费了一番功夫才看明白。
yifei_
2022-11-14
3200
STL源码剖析_各容器一览
STL中的容器非常好用,是已经实现好的各种数据结构,并且效率也比较高。 掌握各个容器的特性,才能在不同情况下选择合适的容器并正确使用。 本文简单总结了STL的学习步骤,并整理了各容器的特性、适用情况,不涉及具体细节。
yifei_
2022-11-14
3140
Ip协议详解
Ip协议是Tcp/Ip协议中的核心协议,位于网络层,上层的tcp、udp、icmp等协议都要依靠它。 Ip协议提供了一种尽力交付、无连接的服务。不保证Ip数据包一定能到达目的地。
yifei_
2022-11-14
6720
利用ICMPv4协议实现一个ping程序
Icmp(Internet Control Message Protocol)协议一般与IP协议结合使用,以便给IP协议提供诊断和控制信息。 Icmp通常被认为是Ip协议的一部分,传输的时候也是被封装在Ip报文内。 我们在判断网络状况时用的ping程序就利用了ICMP协议。接下来先运行系统上的ping程序,用tcpdump抓包查看一下传输的数据。 然后解释一下icmp数据报的各个字段。最后思考一下ping程序的结构,然后用c++实现一个自己的ping程序。
yifei_
2022-11-14
5250
基础知识_算法笔记
1342. Number of Steps to Reduce a Number to Zero
yifei_
2022-11-14
1.1K0
IO多路复用模型
不同于传统的“一个进程处理一个客户端请求”的方式,IO复用可以让一个进程处理多个客户端的请求,更加节省资源。
yifei_
2022-11-14
4040
如何编写一个简单地内核模块
Linux给应用程序提供了丰富的api,但是有时候我们需要跟硬件交互,访问一些特权级信息,所以可以使用编写内核模块这种方式。 另外Linux是宏内核结构,效率非常高,没有微内核那样各个模块之间的通讯损耗,但是又不能方便的对内核进行改动,可扩展性和可维护性比较差,内核模块提供了一种动态加载代码的方式,弥补了宏内核的不足。
yifei_
2022-11-14
1.2K0
如何实现进程代码段的分页度量
之前通过读取/proc/pid/mem的方法读取某个进程的内存数据,mem内部是用copy_from_user实现的,是对虚拟地址进行的操作。但是在某一时刻,该进程的所有内存页不一定都已经被加载到内存。由于虚拟内存的存在,只有那页代码被访问到时(copy_from_user()会判断缺页的情况),才会产生缺页中断,将该页代码加载到内存。这种方式并不够理想,理想的方法是判断哪些数据页已加载到内存中,然后对其进行度量。
yifei_
2022-11-14
2.2K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档