首页
学习
活动
专区
工具
TVP
发布

分布式系统进阶

专栏作者
104
文章
147248
阅读量
30
订阅数
Linux Signal 一网打尽
Linux Signal想毕很多人都用过,比如在命令行下想要结束某个进程,我们会使用kill pid或者kill -9 pid,其实就是通过给对应的进程发送信号来完成。
扫帚的影子
2020-09-10
2.2K0
Linux PID 一网打尽
Linux 进程 PID 大家都知道,top命令就可以很容易看到各个进程的 PID, 稍进一步top -H,我们还能够看到各个线程的ID, 即TID。今天我们想深入到Linux Kernel, 看一看在 Kernel里PID的来龙去脉。
扫帚的影子
2020-08-20
3.2K0
Socket编程中的几点问题总结
Socket编程中的几点问题总结 epoll_ctl中 epoll_event参数设置 对于 EPOLLERR和EPOLLHUP,不需要在epoll_event时针对fd作设置,一样也会触发; EPOLLRDHUP实测在对端关闭时会触发,需要注意的是: 对EPOLLRDHUP的处理应该放在EPOLLIN和EPOLLOUT前面,处理方式应该 是close掉相应的fd后,作其他应用层的清理动作; 如果采用的是LT触发模式,且没有close相应的fd, EPOLLRDHUP会持续被触发; EPOLLRDH
扫帚的影子
2020-06-22
1.8K0
Linux中断一网打尽(1) —— 中断及其初始化
既然叫中断, 那我们首先就会想到这个中断是中断谁?想一想计算机最核心的部分是什么?没错, CPU, 计算机上绝大部分的计算都在CPU中完成,因此这个中断也就是中断CPU当前的运行,让CPU转而先处理这个引起中断的事件,通常来说这个中断的事件比较紧急,处理完毕后再继续执行之前被中断的task。比如,我们敲击键盘,CPU就必须立即响应这个操作,不然我们打字就全变成了慢动作~。说白了中断其实就是一种主动通知机制,如果中断源不主动通知,那想知道其发生了什么事情,只能一次次地轮询了,白白耗费CPU。
扫帚的影子
2020-02-25
1.5K0
Linux中断 - IDT
中断描述符表简单来说说是定义了发生中断/异常时,CPU按这张表中定义的行为来处理对应的中断/异常。
扫帚的影子
2020-02-18
6.5K0
Linux 启动流程 -- 按下电源后发生的那些事儿
写在前面 从按下电源到Linux完全启动,发生的事情有太多太多,细节也太多太多,这里我们不会那么深入细节,但力求理清整体的脉络; 这里暂时只会介绍到 体系结构无关部分的初始化和体系结构相关部分的初始化
扫帚的影子
2020-02-10
9710
Linux Epoll 一网打尽
epoll同样是linux上的IO多路复用的一种实现,内核在实现时使用的数据结构相比select要复杂,但原理上并不复杂,我们力求在下面的描述里抽出主干,理清思路。
扫帚的影子
2019-11-20
1.6K0
The Linux Scheduler: a Decade of Wasted Cores 译文 一
​ 作为资源管理的核心部分,OS的线程调度器必须保持下面这样简单,不变的特性: 确保ready状态的线程总是被调度到有效的CPU核上。虽然它看起来是简单的,我们发现这个不变性在Linux上经常被打破。当ready状态的线程在runqueue中等待时,有些CPU核却还会空闲几秒。以我们的经验,这类性能方面的问题会导致重度依赖同步的应用的性能成倍的下降,针对Kernel编译会多造成高达13%的延迟,针对广泛使用的商用数据库会造成23%的吞吐量降低。传统的测试技术和调试工具对于确认和了解这类问题是无效的,因此这些问题的症状经常是难以捕获的。为了能够推动我们的调查,我们构建了新的工具来在线检测这种违反不变性的情况并且将调度行为可视化。这些工具是简单的,易于在多个kernel版本间移植的并且使用的代价很小。我们相信这些工具将成为内核开发者工具链的一部分来帮助其避免这类问题的出现。
扫帚的影子
2019-11-04
6640
linux内核源码 -- list链表
list是新队列的head指针, 包括的元素从原head队列的第一个元素到entry, head队列仅包括余下的元素
扫帚的影子
2018-09-05
2.3K0
linux-4.14.11 添加自定义的系统调用
所谓的系统调用,简单讲就是kernel提供给用户空间的一组统一的对设备和资源操作的接口, 用来user层和kernel交互, 完成相应的功能, 同时也对kernel层提供了一定的保护 用户空间通常不会直接使用系统调用, linux上的C库对所有的系统调用都作了封装, 调用系统调用,需要从用户态切换到内核态, 不同体系结构的系统陷入内核态的方法不同, C库封装了这层差异,这也是推荐直接使用C库的原因; 以x86为例, 使用C库来调用系统调用时, 会先通过int 0x80软中断,来跳转到相应的中断处理服务例程
扫帚的影子
2018-09-05
1.4K0
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档