自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 Linux高并发服务器开发(四)Linux网络编程

当帧到达目的主机时,将沿着协议栈自底向上依次传递。各层协议依次处理帧中本层负责的头部数据, 以获取所需的信息,并最终将处理后的帧交给目标应用程序。这个过程称为分用(demultiplexing)。分用是依靠头部信息中的类型字段实现的。所谓 socket(套接字),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。

2024-06-17 16:29:19 942

原创 Linux高并发服务器开发(三)Linux多线程开发

与进程(process)类似,线程(thread)是允许应用程序并发执行多个任务的一种机制。一个进程可以包含多个线程。同一程序中的所有线程均会独立执行相同程序,且共享同一份全局内存区域,其中包括初始化数据段、未初始化数据段以及堆内存段。(传统意义上的 UNIX 进程只是多线程程序的一个特例,该进程只包含一个线程)进程是 CPU 分配资源的最小单元,线程是操作系统调度执行的最小单元。线程是轻量级的进程(LWP - Light Weight Process),在 Linux 环境下线程的本质仍是进程。

2024-03-31 17:23:18 1875 1

原创 Linux高并发服务器开发(二)Linux多进程开发

五态模型程序是包含一系列信息的文件,这些信息描述了如何在运行时创建一个进程:进程 是正在运行的程序的实例。是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。是操作系统动态执行的基本单元。单道程序 -- 在计算机中只允许一个的程序运行;多道程序 -- 在计算机内存中同时存放几道相互独立的程序,该技术引入的根本目的是为了提高CPU的利用率。时间片timeslice是操作系统分配给每个正在运行的进程微观上的一段CPU时间。时间片由操作系统内核的调度程序分配给每个进程。并行parallel。

2024-03-25 09:09:10 1649

原创 Linux系统IO函数读写练习

任务:从当前文件夹下的english.txt中读取内容复制到cpy.txt(若该文件不存在则创建一个文件)

2023-08-16 00:33:07 54 1

原创 Linux高并发服务器开发(一)Linux系统编程入门

库文件是计算机上的一类文件,可以简单的把库文件看成一种代码仓库,提供给使用者一些可以直接拿来用的变量、函数或类库是一种特殊的程序,编写库的程序和编写一般的程序区别不大,只是库不能单独运行库文件有两种:静态库和动态库(共享库)。静态库在程序的链接阶段被复制到了程序中;动态库在链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用库的好处是:1、代码保密;2、方便部署和分发。

2023-08-04 23:30:56 162 1

原创 Linux学习笔记 -- 日志管理篇

日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录信息、系统的启动信息、系统的安全信息、邮件相关信息、各种服务相关信息等日志安全:日志记录了系统每天发生的各种事情,通过日志来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹日志是用来记录重大事件的工具。

2023-07-27 12:59:31 97 1

原创 Linux学习笔记 -- shell编程

Linux shell 中的变量分为 系统变量和用户自定义变量echo $HOME -- 显示当前家目录显示当前shell中的所有变量:set定义变量:变量=值(中间不要打空格)撤销变量:unset 变量声明静态变量:readonly变量(不能被unset)案例:定义变量的规则1. 变量名称可以由字母、数字和下划线组成,但是不能以数字开头2. 等号两边不能有空格3. 变量名称一般习惯为大写,这是一个规范将命令返回值赋给变量1. A=`data` ,运行里面的命令,并把结果返回给变量A。

2023-07-24 18:01:50 142

原创 linux学习笔记 -- 实操篇

Linux中的每个用户必须属于一个组,不能独立于组外。在Linux中每个文件有所有者、所在组、其他组的概念举例说明 --> ls -l 中显示的内容如下:-rwxrw-r-- 1rootroot(第一个root是abc这个文件的所有者 -- 用户;第二个root是abc的所在组 -- 组)rwxrw-r--0~9 位说明1.第0位确定文件类型(d, -, l, c, b)l是链接,相当于windows 的快捷方式d是目录,相当于windows 的文件夹。

2023-06-29 13:28:36 97 1

原创 linux学习笔记 -- 基础篇

Linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界认可,目前很多企业级项目都会部署到Linux/unix系统上常见的操作系统(Windows、IOS、Android、MacOS、Linux、Unix)Linux主要发行版:Ubuntu、RedHat、CentOS、Debain、Fedora、SuSE、OpenSuSE...采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录;“Linux下一切皆文件”;

2023-06-21 11:26:01 103

原创 C++ primer 笔记

有迭代器的类型同时返回迭代器成员:如,end成员返回指向容器“尾元素的下一个位置(on past the end)”的迭代器,即该迭代器没有什么实际含义,,只是一个标记。执行对象的拷贝操作时,拷入和拷出的对象必须具有相同的底层const资格,或两个对象的数据类型必须能够转换。两个指向同一个容器中的元素或者尾元素的下一个位置的迭代器相减,所得结果是两个迭代器的距离,类型是名为diffence_type的带符号整数型string和vector都定义了difference_type,距离可正可负。

2023-05-30 00:20:16 74 1

原创 C++学习笔记(二)-- 兼谈对象模型

sizeof(reference) = sizeof(x) -- object和其reference的大小相同,地址也相同。non-explict-one-argument constructor,不清晰的单参数构造函数 ----------2⃣️。通过指针调用虚函数时,是动态绑定dynamic binding -- 虚机制。2.指针向上转型动作;conversion function, 转换函数 ---------1⃣️。若1⃣️和2⃣️并存,可能会有二义性/多条路径(函数)实现 -- error。

2023-05-23 22:28:52 115

原创 C++学习笔记(一)

看过一轮黑马了,重新看看侯捷老师的,记录一下不会的/忘了的。

2023-05-19 13:05:58 82 1

原创 STL标准库和泛型编程--学习笔记-- level0:使用标准库

STL六大部件(Components):容器Containers 分配器Allocators 算法Algorithms 迭代器Iterators 适配器Adapters 仿函数Functors / Functor Adapters//六大部件在程序中的体现//使用了容器,分配器(注:此处可以不声明allocator,源代码有默认使用分配器)//选用了count_if算法:计算出符合该条件的元素有几个。

2023-05-05 22:37:44 75 1

原创 C++学习笔记:友元(类做友元)

GoodGay类中,包含一个Building类的指针,设置函数visit()来访问building中的属性。(类做友元,即在另一个类中“声明”这个类,加上关键字friend,即可访问所有属性。3、类内函数在类外写函数功能:记得加作用域。e.g 好朋友访问你的房间。

2023-03-27 17:49:38 362

空空如也

空空如也

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

TA关注的人

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