Linux
文章平均质量分 93
总结linux相关的知识
CaTianRi
生于忧患,死于安乐
展开
-
IO模型与多路复用
在Linux中有一句经典台词:"Linux一切皆文件"。IO操作是与文件进行交流的唯一方式,也就是说这是与Linux系统交流的唯一手段。就如同人与人之间的交流,如果我们连交流的方式都不甚了解,交流的效率就会变得低下。操作系统也是如此,唯有深入学习IO模型,才能更高效地在Linux进行开发。原创 2024-07-02 16:02:01 · 585 阅读 · 0 评论 -
[C++] 从零实现一个ping服务
ping命令,因为其简单、易用等特点,几乎所有的操作系统都内置了一个ping命令。如果你是一名C++初学者,对网络编程、系统编程有所了解,但又没有多少实操经验的话,不妨来尝试动手实现一个属于自己的ping命令。这样一来,也能提高你对系统编程、网络编程的能力。本篇文章实现了一个简易的ping指令,其对系统编程、网络编程都有所涉及,但真实的ping指令可远不止这么简单,感兴趣的读者可以通过访问Linux开源项目来了解真正的实现。原创 2024-06-13 20:24:14 · 1161 阅读 · 2 评论 -
【Linux】线程同步
多线程编程互斥机制虽然能保护共享资源的安全,但同时也带来了”线程饥饿问题“,而且也无法控制线程的执行顺序,为了解决这种情况,就要用到同步机制。初始化信号量// 头文件: <semaphore.h>// sem_t : 信号量结构参数:执行信号量结构指针如果为非零值,信号量在多个进程间共享;为零则在创建它的进程的各个线程之间共享。信号量的初始值。销毁信号量等待信号量发布信号量函数的使用sem_t sem;// 定义信号量// 线程函数1,将等待信号量// 等待信号量。原创 2024-03-31 20:24:56 · 831 阅读 · 0 评论 -
【Linux】IPC-信号
信号,一种无论是生活还是编程都离不开的东西。生活中,我们通过信号来对外部发生的事情进行反应,就好像你的手机来了一条信息,你可以选择点开处理它,也可以忽略掉它,而在Linux中的信号也是如此。本篇文章我们探索从信号的概念到阻塞和处理函数的应用,相信你对linux系统编程又有了一个新的了解吧。主页C++github。原创 2024-03-15 21:25:30 · 1027 阅读 · 0 评论 -
[Linux] 进程间通信基础
你是否了解进程间是如何通信的呢?你是否知道管道的工作原理呢?管道是Linux中最基本的也是最常用的进程间通信手段,----(Todo)在使用共享内存前,必须先简单介绍一下System V 与 POSIX,它们是UNIX系统的两种不同系统标准,而在Linux上他们两者的接口都有兼容,接下来我们要使用的共享内存属于System V的。要使用共享内存就得先知道如何检查系统中的共享内存,以及如果程序遇到异常时,如何删除共享内存。#显示共享内存ipcs -m。原创 2024-03-14 18:34:29 · 872 阅读 · 0 评论 -
【Linux】动态库与静态库的打包使用
想必各位喜欢打电脑游戏,总是能游戏文件夹看到一种熟悉的文件后缀名——.lib的存在吧,你是否对其存在感到好奇,为何大部分游戏都离开它们呢?本文将带你充分了解它们的存在,这样一来以后如果有伙伴问起你,那么ta也会你知识的渊博感到佩服的吧。特性静态库动态库加载时机编译时将代码链接至可执行文件程序运行时加载文件大小可能较大,因为包含了所有使用到的库代码较小,因为代码在应用之间共享更新与维护需要重新编译程序以更新库可以独立于应用更新运行时依赖性不依赖外部库文件。原创 2024-03-12 16:25:00 · 857 阅读 · 0 评论 -
「Linux」使用C语言制作简易Shell
对于很多学习后端的同学来讲,学习了C语言,发现除了能写出那个经典的“hello world”以外,其他什么都做不了,如果你在烦恼着这些事的话,不妨来学习下如何实现Linux中的shell吧,如此不仅能提高你C语言功力,也能增进你对系统的理解。原创 2023-11-30 20:51:06 · 684 阅读 · 0 评论 -
「Linux」进程等待与替换
在如今的时代,多进程编程已经变成了必不可少的一部分,而进程等待、进程替换这两个概念都是作为多进程编程所必不可少的知识,为了掌握多进程编程,今天就从进程等待与替换开始吧。主页C++github。原创 2023-11-30 13:09:51 · 171 阅读 · 2 评论 -
「Linux」git的安装与使用
git是一款多平台的版本管理器,用于对代码进行版本控制,如果你还不知如何安装git,那么本文将交给你答案。原创 2023-11-27 10:31:47 · 363 阅读 · 1 评论 -
[Linux] 进程入门
作为一名程序员,我们天天都在与代码打交道,但你是否有了解过我们的程序是如何在操作系统中运行与调度的呢?如果你对进程与计算机不甚了解,那么本文将带领你走向操作系统进程的第一步。主页C++github。原创 2023-11-21 16:19:51 · 166 阅读 · 3 评论