技术栈
unix
zerwave
6 小时前
网络
·
机器人
·
unix
从慢订阅者到发布者:LiteBus 如何用 Unix Socket 背压保护可靠 Topic
“消息不能静默丢失”,听起来像是给队列足够大的内存就行。实际不是。在发布订阅系统里,如果某个订阅者处理不过来,而发布者仍然无限快速地产生消息,任何有限队列最终都会满。此时系统必须做选择:
Marst Code
2 天前
unix
(Unix) vm-虚拟内存与页表
写一个最普通的 C 程序,打印一个全局变量的地址:同时跑两份。两个进程都在自己那一份里给 x 赋了不同的值,但打印出来的地址一模一样。
Marst Code
5 天前
服务器
·
unix
(Unix)pipe 把程序当成可组合的函数
凌晨两点,你在线上排一个问题。日志文件明明在滚,你敲下:什么都没有。屏幕干干净净。你的第一反应是 grep 写错了,或者日志里根本没有 ERROR。于是直接 grep ERROR app.log,红字一行行滚出来 —— 有,而且很多。
Marst Code
6 天前
服务器
·
unix
(Unix)一切皆文件
一行。这台 Linux 机器从此会转发 IP 包,可以当路由器用了。没有配置 API,没有 SDK,没有 daemon 需要 reload。你只是往一个"文件"里写了个 1。
Marst Code
6 天前
服务器
·
unix
(Unix) fork-exec 进程创建与程序加载解耦
你在终端敲下 ls,回车,屏幕上出现几行文件名。为了这几十个字节的输出,shell 干了一件很夸张的事:它先把自己完整复制了一份 —— 页表(把虚拟地址翻译成物理地址的那张映射表)、内存映射、文件描述符表、信号处理、环境变量。然后它立刻把这份副本几乎全部丢弃,换成 ls 的代码和数据。
砚凝霜
18 天前
linux
·
安全
·
unix
【软考信息安全】第十九章 Unix/Linux安全分析与防护
本文为软考信息安全工程师个人学习笔记,依据官方考试大纲与公开技术规范整理,仅用于学习交流,不作为商业用途。
wunaiqiezixin
23 天前
linux
·
unix
·
os
·
xv6
·
mit6.s081
MIT 6.S081 util 实验篇(lab1):primes (moderate/hard)
primes 是 util 实验里真正把 pipe + fork 组合成一条"进程流水线" 的一关,难度比 pingpong 高一档。它要我们用并发的方式实现「素数筛」——这是 Unix 管道发明者 Doug McIlroy 提出的经典并发思想:不靠任何共享内存,只用"一串进程 + 一串管道",就把 2~35 里的素数全部筛出来。
云计算练习生
1 个月前
linux
·
开源
·
操作系统
·
unix
什么是 Linux?从 Unix 到开源生态的完整脉络
这是“操作系统系列教程”的第二十三篇。前面几篇我们补写了导论模块,知道了操作系统是什么、它有哪些核心功能。这一篇,我们聚焦一个具体而重要的操作系统——Linux。你可能听过它,知道它是开源的、免费的、服务器上用得很多。但 Linux 到底是什么?它和 Unix 是什么关系?为什么它能在服务器、嵌入式、超级计算机领域占据主导地位?这篇文章,我们就来把 Linux 的来龙去脉讲清楚。
wunaiqiezixin
1 个月前
linux
·
unix
·
os
·
xv6
·
mit6.s081
MIT 6.S081 file system 实验篇(lab9):Large files (moderate)
给 xv6 的 inode 增加二级间接块(doubly-indirect block),把单文件上限从 268 块提升到 65803 块。
江屿风
1 个月前
linux
·
运维
·
笔记
·
系统架构
·
centos
·
unix
【Linux系统】【Linux进程终止等待详解与程序替换机制初体验】流食般投喂
文章定位:进程控制是理解操作系统"如何管理运行中的程序"的核心章节。本文依据课堂实录整理,覆盖进程终止的退出码语义、wait/waitpid僵尸进程回收、status位图解析、阻塞/非阻塞等待的本质区别,以及exec程序替换的初步原理。
hacker707
2 个月前
华为
·
unix
·
harmonyos
BYTE UNIXBench 鸿蒙 PC 适配全记录:从经典 Unix 基准套件到 HAP_HNP 终端工具
适配开源地址:https://atomgit.com/OpenHarmonyPCDeveloper/ohos_byte-unixbench
yutian0606
2 个月前
c语言
·
unix
C: Unix UTC 时间戳转为 UTC+8 北京时间
纯 C 实现,不依赖time.h系统时间库,把 Unix UTC 时间戳(单位秒,long long)转换成 UTC+8 北京时间,输出 YYYY-MM-DD HH:MM:SS。
深念Y
2 个月前
服务器
·
ios
·
unix
·
pve
·
freebsd
iOS模拟器在无Metal的NVIDIA显卡环境下的可行性研究报告
主题:在没有 Metal 硬件加速的 NVIDIA GPU (Pascal 及更早架构) 上,能否运行 iOS 模拟器?如何实现? 适用范围:Hackintosh / 虚拟机环境中的 macOS,且显卡仅支持 NVIDIA WebDriver(无原生 Metal 驱动)
深念Y
2 个月前
服务器
·
unix
·
系统
·
pve
·
freebsd
·
虚拟化平台
【保姆级教程】Proxmox VE (PVE) 安装 FreeBSD 完整指南
FreeBSD 是一个类 UNIX 操作系统,因其卓越的稳定性、强大的 ZFS 文件系统和先进的网络协议栈,在服务器领域拥有众多忠实用户。本文将以 Proxmox VE (PVE) 虚拟机平台为例,手把手带你完成 FreeBSD 的完整安装过程。
wunaiqiezixin
2 个月前
linux
·
unix
·
os
·
xv6
·
mit6.s081
MIT 6.S081 xv6 源码精读(Scheduling):sched、scheduler
本篇是 swtch.S 源码精读 的姊妹篇。上篇我们把 swtch 拆到字母级,知道它「存旧现场、载新现场、ret 跳到新 ra」。这篇看 proc.c 里谁在调用 swtch、怎么编排成完整调度:scheduler(调度器循环)、sched(切走原语)、yield(主动让出)、forkret(新进程首跑)。
筠筠喵呜喵
2 个月前
c++
·
unix
解决问题:QNX平台调用glReadPixels卡滞
QNX 7.1系统中使用glReadPixels。明明绑了PBO,glReadPixels 还是卡500ms。更诡异的是,注释掉 glMapBuffer 照样卡——说明阻塞点根本不在数据回传,而在 glReadPixels 本身。 问题代码如下:
ambition20242
2 个月前
linux
·
开发语言
·
数据结构
·
unix
操作系统同步:读者-写者问题与读写公平法详解(附每个 PV 操作含义)
在操作系统中,读者-写者问题是一个经典的进程同步问题。它描述的是多个进程共享同一份数据(如文件、数据库记录或内存区域)的场景。其中:
小小酥诶
2 个月前
unix
Makefile 入门与实践:用一条命令管理你的构建流程
写代码只是开发的一半,另一半是怎么编译、怎么跑、怎么发布。Makefile 是 Unix 世界里最经典的自动化工具之一——简单、通用、几乎无处不在。注意:本文是博主自我学习的笔记。
吴声子夜歌
3 个月前
linux
·
运维
·
开发语言
·
unix
正则指引——Linux/UNIX
如果你用过vi、grep、awk、sed之类的工具,或许会记得:这些工具虽然支持正则表达式,但语法却很不一样,按照通常习惯的方法写的正则表达式往往不是无法识别((abc)竟然可能报错)就是匹配错误(\d无法匹配数字字符)。而且,这些工具自身之间也存在差异,同样的结构,有时需要转义有时不需要转义。这究竟是为什么呢?
wunaiqiezixin
3 个月前
linux
·
unix
·
os
·
xv6
·
mit6.s081
MIT 6.S081 lazy 前置篇(lab5):缺页异常、惰性分配、写时复制、页面换出
学习操作系统时,页表、缺页异常、写时复制、惰性分配、页面换出……这些名词往往会一股脑涌过来,让人眼花缭乱。但其实它们之间有着清晰的层级关系:缺页异常是硬件提供的基础机制,而惰性分配、写时复制、页面换出,都是操作系统利用这个机制实现的内存管理策略。