unix

迎風吹頭髮6 天前
服务器·c语言·unix
UNIX下C语言编程与实践48-UNIX 信号量:概念、PV 操作与进程同步互斥聚焦UNIX系统中信号量的核心机制、操作方法及工程应用,通过理论解析与实例演示,帮助开发者掌握信号量在进程同步与互斥中的实践技巧。
数智顾问7 天前
服务器·unix
自动驾驶软件系统基石:RTOS操作系统与Framework框架的协同机制解析在自动驾驶技术体系中,软件系统是连接感知、决策与执行的“神经中枢”。其中,RTOS(实时操作系统)与Framework(开发框架)构成了软件系统的底层支撑与上层逻辑容器——RTOS负责提供毫秒级响应的实时任务调度能力,确保关键控制指令(如紧急制动)的确定性执行;Framework则通过模块化封装(如传感器数据处理、定位建图、路径规划等),降低复杂算法集成的开发门槛。本文将聚焦这两大核心组件,结合Autoware Universe与Apollo Cyber RT两大主流框架,解析其协同机制及工程实践。
迎風吹頭髮8 天前
c语言·单片机·unix
UNIX下C语言编程与实践62-UNIX UDP 编程:socket、bind、sendto、recvfrom 函数的使用在 UNIX 网络编程中,UDP(用户数据报协议)以其“无连接、轻量级”的特性,成为实时性要求高(如流媒体、游戏)场景的首选。 udps1.c(UDP 服务器端)与 udpk1.c(UDP 客户端)的核心实例,本文将详细讲解 UDP 编程的四个核心函数——socket(创建数据报套接字)、bind(绑定地址端口)、sendto(发送数据报)、recvfrom(接收数据报),通过完整代码演示 UDP 通信流程,深入解析 UDP 与 TCP 编程的差异,并梳理常见错误与拓展场景。
迎風吹頭髮8 天前
c语言·网络·unix
UNIX下C语言编程与实践60-UNIX TCP 套接字关闭:close 与 shutdown 函数的区别与使用场景在 UNIX 环境下的 TCP 套接字编程中,连接的“关闭”并非简单的“断开”操作——不同场景下需要选择合适的关闭方式,以避免数据丢失、连接残留等问题。核心用于关闭套接字的函数有两个:close 和 shutdown。本文的内容,详细解析这两个函数的功能、参数与使用方法,对比其核心区别与适用场景,并通过实例演示如何正确使用它们处理 TCP 连接关闭。
迎風吹頭髮9 天前
c语言·网络·unix
UNIX下C语言编程与实践58-UNIX TCP 连接处理:accept 函数与新套接字创建本文中TCP套接字通信章节,聚焦UNIX系统中accept函数的核心功能、工作原理与实践应用,结合文档中的AcceptSock函数实例与多客户端处理方案,详细解析TCP连接接收流程、新套接字特性及常见问题解决方法,为UNIX TCP服务器开发提供理论与实践指导。
迎風吹頭髮9 天前
服务器·c语言·unix
UNIX下C语言编程与实践53-UNIX 共享内存控制:shmctl 函数与共享内存管理在 UNIX 共享内存的生命周期中,shmctl 函数是当之无愧的“管理中枢”——它承担着共享内存的属性查询、属性修改与资源释放三大核心职责。本文将以 ipcshm 程序为核心实例,详细讲解 shmctl 函数的功能、参数与常用命令,深入解析 shmid_ds 结构与共享内存管理的关联,并结合实战场景说明共享内存管理的重要性及常见问题解决方案。
迎風吹頭髮9 天前
java·c语言·unix
UNIX下C语言编程与实践63-UNIX 并发 Socket 编程:非阻塞套接字与轮询模型在 UNIX 环境下的 Socket 编程中,“并发”是处理多客户端连接的核心需求。传统阻塞套接字模型中,一个进程/线程只能处理一个连接,效率极低;而非阻塞套接字结合轮询模型,通过“非阻塞+循环查询”的方式,可让单个进程同时处理多个套接字事件(如连接请求、数据接收),是实现轻量级并发的基础方案。本文的核心内容,详细解析非阻塞套接字的设置方法、轮询模型的实现逻辑,结合实例演示其应用,并深入分析该模型的优缺点与优化方向。
迎風吹頭髮9 天前
c语言·网络·unix
UNIX下C语言编程与实践59-UNIX TCP 数据传输:send 与 recv 函数的使用与数据处理在 UNIX TCP 通信中,send 与 recv 是完成数据传输的核心函数——send 负责将数据从进程缓冲区发送到 TCP 连接,recv 负责从 TCP 连接接收数据到进程缓冲区。TCP 通信的编程思想,本文将详细讲解这两个函数的功能、参数与使用细节,通过完整实例演示服务器端与客户端的数据传输流程,深入分析 TCP 粘包问题的成因与解决方法,并梳理常见错误与优化策略。
迎風吹頭髮9 天前
c语言·网络·unix
UNIX下C语言编程与实践55-TCP 协议基础:面向连接的可靠传输机制与三次握手、四次挥手本文聚焦TCP协议的核心特性、连接建立/关闭流程(三次握手、四次挥手)及可靠传输机制,结合实践案例与问题分析,帮助开发者深入理解TCP协议的设计原理与应用逻辑,为UNIX网络编程中的TCP套接字使用提供理论支撑。
迎風吹頭髮9 天前
java·c语言·unix
UNIX下C语言编程与实践35-UNIX 守护进程编写:后台执行、脱离终端、清除掩码与信号处理从核心步骤到完整实例,掌握 UNIX 守护进程的手工编写方法UNIX 守护进程的本质是“脱离终端控制、长期后台稳定运行”,因此编写时需围绕以下核心原则设计流程:
序属秋秋秋9 天前
linux·运维·服务器·开源·unix·gnu
《Linux系统编程之入门基础》【Linux的前世今生】hi ~,小伙伴们大家好啊!(ノ≧∀≦)ノ 叮叮叮 ~鼠鼠来晚了吗?(・ω・)ノ,啊让你久等了!哈哈,那真是太棒了!(≧▽≦) 哦不是,鼠鼠的意思是,真的很抱歉让你久等了,不过鼠鼠又回来啦 ~╰(✿´∀`✿)╯
迎風吹頭髮10 天前
linux·c语言·unix
UNIX下C语言编程与实践38-UNIX 信号操作:signal 函数与信号捕获函数的编写从函数使用到捕获函数规范,掌握 UNIX 信号处理的基础核心在 UNIX 信号处理中,signal 函数是最基础、最常用的接口,定义在 <signal.h> 头文件中。其核心功能是“为指定信号设置处理动作”——通过该函数,进程可决定收到信号后的行为:执行系统默认动作、忽略信号,或调用自定义的信号捕获函数处理。
迎風吹頭髮11 天前
服务器·c语言·unix
UNIX下C语言编程与实践32-UNIX 僵死进程:成因、危害与检测方法从底层原理到实战检测,全面掌握 UNIX 系统中僵死进程的核心知识在 UNIX 系统中,僵死进程(Zombie Process)是一种特殊的进程状态:进程已经终止(代码执行完成、调用 exit 或被信号杀死),但内核未从进程表(Process Table)中删除其进程控制块(PCB),导致进程表中仍保留该进程的 PID、退出状态等少量信息。
_OP_CHEN11 天前
linux·运维·服务器·centos·unix·xshell
Linux 系统编程:(一)从历史演进到 XShell 远程登录实操前言一、Linux 背景知识1.1 UNIX 的发展历程1.2 Linux 的发展历程1.3 Linux 的开源特性
cililin12 天前
linux·服务器·网络·操作系统·unix
第4章 文件管理文件的定义:一组有意义的信息的集合。文件内部数据的组织实际上是探讨文件逻辑结构的问题;文件之间,操作系统使用**目录结构**进行管理,即文件夹。
迎風吹頭髮12 天前
服务器·c语言·unix
UNIX下C语言编程与实践36-UNIX 时钟:系统时间、高分辨率时间与日历时间的转换与使用从时间格式定义到实战转换,掌握 UNIX 系统时间处理的核心逻辑UNIX 系统为满足不同场景的时间需求(如计时、显示、高精度测量),定义了三种核心时间格式,每种格式有明确的存储结构和适用场景。理解它们的本质差异,是正确处理时间的基础。
迎風吹頭髮12 天前
c语言·网络·unix
UNIX下C语言编程与实践33-UNIX 僵死进程预防:wait 法、托管法、信号忽略与捕获从原理到实战,掌握四种核心预防方案,彻底规避僵死进程风险UNIX 系统中僵死进程的根源是“子进程终止后父进程未回收其退出状态”。因此,预防僵死进程的核心逻辑围绕“确保父进程正确处理子进程终止事件”展开,具体可归纳为两类思路:
迎風吹頭髮13 天前
java·c语言·unix
UNIX下C语言编程与实践40-UNIX 全局跳转:setjmp 与 longjmp 函数的使用与注意事项从函数原理到实战避坑,掌握 UNIX 系统中跨函数跳转的核心机制在 C 语言中,常规的程序执行流程是“顺序执行+函数调用栈”——函数调用时入栈保存上下文,返回时出栈恢复上下文,只能从子函数跳回父函数,无法跨多层函数直接跳转。而 UNIX 系统提供的 setjmp 与 longjmp 函数打破了这一限制,实现了“全局跳转(Non-local Jump)”:
迎風吹頭髮13 天前
服务器·c语言·unix
UNIX下C语言编程与实践39-UNIX 定时器:alarm 函数与 setitimer 函数的使用与对比从秒级普通定时到毫秒级精确定时,掌握 UNIX 系统定时机制的核心工具在 UNIX 系统中,定时器(Timer)是实现“定时触发事件”的核心机制,其本质是“内核在指定时间后向进程发送特定信号”,进程通过捕获信号执行预设逻辑(如定时任务、超时处理)。根据精度和功能差异,UNIX 定时器主要分为两类:
迎風吹頭髮13 天前
c语言·php·unix
UNIX下C语言编程与实践41-UNIX 单线程 I/O 超时处理:终端方式、信号跳转方式与多路复用方式从终端专属到通用兼容,掌握单线程环境下 I/O 超时控制的核心方案在 UNIX 单线程程序中,I/O 操作(如 read、write、accept)默认是“阻塞式”的——若 I/O 无数据(如键盘未输入、网络无响应),进程会一直阻塞在 I/O 调用处,无法执行其他逻辑。这种特性在实际场景中存在严重问题: