自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TCP通信—client与server

server -> 1.初始化套接字 -> 2.绑定 -> 3.监听 -> 4.接收客户端连接 -> 数据收发。client -> 1.初始化套接字 -> 2.连接 -> 数据收发。

2024-09-07 16:32:34 592

原创 LINUX—网络编程——基础知识

为传输数据所需要的物理链路创建、维持、拆除,而提供具有机械的,电子的,功能的和规范的特性。那么网络体系为何要分层呢?目的是为了便于维护,如果在开发的中途有某个部分需要修改,那么就无需全部替换,只需要将需要改动的层进行修改,每层只需做好自己的任务即可,相互不干扰。Socket,被称为网络套接字,是一个特殊的文件描述符,也可以认为是网络编程中的一种资源,一种通信机制。】提供面向连接的、可靠的数据传输服务,数据无丢失、无重复、无失序、无乱序的到达,多用于需要高可靠通信的场景,例如文件传输;

2024-09-05 20:57:34 1533

原创 LINUX-网络编程

传输层]: 建立主机端到端的链接,为会话层和网络层提供 端到端 可靠的和透明的数据传输服务,确保数据完整传输的过程。| 物理层 : 为传输数据所需要的物理链路创建、维持、拆除,而提供具有机械的\电子的\功能的和规范的特性。所有的设备在通过网络进行数据传输时, 多字节整型值数据全部按照"网络字节序"(大端字节序)进行收发。使用场景 : 适合于对传输质量要求较高的场景, 需要可靠数据传输的场合, 通常使用TCP协议。2. 提供高可靠性通信, 数据无丢失\无重复\无失序\无乱序的传输。

2024-09-02 20:04:23 511

原创 C++基础知识

定义类需要使用关键字class,然后指定类的名称。类的主体是包含在一对花括号中,其中包含成员变量和成员函数。定义一个类,本质上是定义一个数据类型的蓝图,它定义了类的对象包括了什么,以及可以在这个对象上执行哪些操作。class 类名{访问修饰符: //属性 type name;//方法 type method();// 和结构体类型定义相同 类的定义需要以分号结尾类用来创建对象,对象中的数据成员可以使用运算符"."

2024-09-02 19:50:39 1596

原创 Linux-线程属性

Linux操作系统中,在创建线程时通常采用的都是默认属性,使用默认属性创建的线程已经可以解决绝大部分开发时遇到的问题,如果需要在某些方面对程序的性能提出更高的要求,那么就需要我们对线程的属性进行修改,例如:修改线程使用的内存大小,以此达到在线程中存储更多数据或降低使用内存的功能。该策略是默认线程属性中的调度策略,该策略下的静态调度优先级总是为0,对于该策略表中的线程,调度器是基于动态优先级进行调度的(动态优先级的值会随着线程的运行时间进行改变,以确保所有分时调度策略表中的线程公平运行)。

2024-07-23 20:58:56 1521

原创 Linux-互斥锁与条件变量

锁”是一个很普遍的需求,“为临界区上锁”实际描述的需求是:非临界区的任务可以同时执行,临界区中的任务只允许一个线程执行、不允许多个线程同时执行。

2024-07-20 17:15:26 247

原创 Linux-线程

线程是程序执行时的一个实例,即它是程序已经执行到何种程度的数据结构的汇集。从内核的观点来看,进程的目的就是担当分配资源(CPU时间、内存等)的基本单位。线程是进程的一次执行过程,也就是一个执行流, 是CPU调度和分派的基本单位,它是比进程更小的能够独立运行的基本单位,即进程是分配资源的最小单位,线程的CPU调度的最小单位。一个进程可以由多个线程组成,线程与同属一 个进程的其他线程共享进程拥有的所有资源。

2024-07-20 17:04:49 494

原创 根据共享内存实现copy(拷贝)---linux-c/c++

【代码】根据共享内存实现copy(拷贝)---linux-c/c++

2024-07-02 20:08:42 213

原创 Linux-System V IPC(标准进程间通信)

消息队列是一种先进先出的队列型数据结构,实际上是系统内核中的一个内部链表。消息被顺序插入队列中,其中发送进程将消息添加到队列末尾,接受进程从队列头读取消息。多个进程可同时向一个消息队列发送消息,也可以同时从一个消息队列中接收消息。发送进程把消息发送到队列尾部,接受进程从消息队列头部读取消息,消息一旦被读出就从队列中删除。向消息队列中发送消息msqid: 消息队列号msgp: 消息的结构体地址msgsz: 消息正文的大小 (不包含类型)msgflg。

2024-07-02 13:12:30 2218

原创 Linux-IPC进程间通信

1. 键盘事件ctrl + C发出中断信号2. 软件层面 在程序中调用kill函数发送信号3. 硬件问题 外设出错或者其他原因收到的信号4. 内存管理错误:执行信号默认的动作:忽略信号:捕捉信号去执行自定义的动作可以使用kill -l查看当前系统所有信号。:处理信号(默认、捕捉、忽略)signum:要处理的信号handler:要对信号进行的处理动作SIG_IGN:忽略SIG_DFL:执行默认动作,要么填为信号处理函数。

2024-06-30 17:07:19 644

原创 Linux-进程

是文件,例如C语言程序,是静态的,没有生命周期,在磁盘上存放。:是程序的一次执行过程是动态,具有生命周期,随着程序的开始而开始,结束而结束,在内存上存在。进程是分配资源的最小单位,一旦进程被创建,系统就会给其分配0-3G内存空间,结束之后会回收。

2024-06-28 15:03:44 664

原创 堆和栈-数据结构

2.内存的生命周期不固定, 何时开始, 何时结束, 完全由用户决定。3.内存的申请由用户完成, 内存释放的行为由系统完成(自动释放)3.内存的申请和释放均由用户完成。2.内存的生命周期固定。静态存储区 - 静态局部变量/全局变量(: 从复合语句内部定义开始, 到复合语句定义结束): 从程序运行开始, 到程序运行结束): 使用类型和标识符直接定义申请。: 使用函数malloc进行申请。: 动态存储区 - 局部变量(

2024-06-28 13:45:45 353

原创 linux-库文件

库文件与源文件和头文件不同,库文件是二进制的,不是独立的程序,但能够向其他程序提供函数服务,是实现程序程序的模块化设计的重要组成部分,能够减少工程的编译时间,便于工程维护。库文件又分为静态库和动态库两种,分别有不同的制作方法和使用场景。

2024-06-27 14:03:09 437

原创 linux -tar压缩/解压缩

该参数选项后需要指定要操作的压缩文件名,放在tar指令后参数选项段的末尾。该参数选项用来指定解压缩的文件需要放置的路径,通常放在解压缩末尾参数段。tar 指令用来压缩文件或者解压缩文件(tar本身不具有压缩功能,只有打包功能)基本用法: tar [参数选项] 压缩文件名要压缩的文件名...:将文件夹中的三个文件进行压缩,压缩为gzip格式的压缩包(后缀为tar.gz)以gzip格式进行压缩或解压缩,压缩或解压缩动作分别由。该参数选项用来显示压缩或者解压缩流程,显示正在处理的文件。对压缩文件进行解压缩。

2024-06-26 13:17:06 310

原创 Linux基本指令

linux常用指令,学习基本操作

2024-06-25 20:57:20 2102

原创 linux系统下编写实时时间并在虚拟机下定义指令快捷使用

5、保存并退出程序,此时我们在环境下输入自己定义的指令t即可以实现时间的显示。3、接下来我们在系统中定义指令,我们在根目录下找到配置文件./bashrc。下图可以看出定义在环境变量里面,所以在整个环境下指令皆生效。1、首先创建main.c文件(),输入 G 定位到末尾行,用。

2024-06-24 20:59:59 349

原创 Linux 操作系统简介

自1991年首次发行后,Linux操作系统以令人惊讶的速度迅速在服务器和桌面系统中获得了成功,已经被业界认为是未来最有前途的操作系统之一。在嵌入式领域,由于Linux操作系统开放源代码且具有良好的可移植性,它获得的关注也越来越多。

2024-06-24 17:29:05 546

原创 程序A将五个学生的信息(姓名、性别、分数)存入文件Stu_data中 程序B从文件中读取并排序 按成绩由高到低输出

首先打开文件并存入信息;

2024-06-24 11:41:31 197

空空如也

空空如也

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

TA关注的人

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