相关内容
linux Cgroup使用介绍
cgroup的实现需要在kernel非关键路径上插入一些钩子。 - 在 initmain.c中,系统启动时需要初始化root cgroups和initial css_set。 - 在fork和exit的时候...向cgroup.procs添加任意一个线程的pid都会把整个线程组下所有的taskattach到这个group下。 向cgroup.procs写入0的时候将会把写入线程对应的线程组添加进去...

linux cgroups 简介
cgroups(control groups) 是 linux 内核提供的一种机制,这种机制可以根据需求把一系列系统任务及其子任务整合(或分隔)到按资源划分等级的不同组内,从而为系统资源管理提供一个统一的框架。 简单说,cgroups 可以限制、记录任务组所使用的物理资源。 本质上来说,cgroups 是内核附加在程序上的一系列钩子(hook)...

图解Linux网络包接收过程
比如要提前创建好ksoftirqd内核线程,要注册好各个协议对应的处理函数,网络设备子系统要提前初始化好,网卡要启动好。 只有这些都ready之后,我们才能真正开始接收数据包。 那么我们现在来看看这些准备工作都是怎么做的。 2.1创建ksoftirqd内核线程linux的软中断都是在专门的内核线程(ksoftirqd)中进行的...
linux namespace and cgroup
本质上来说,cgroups是内核附加在程序上的一系列钩子(hooks),通过程序运行时对资源的调度触发相应的钩子以达到资源追踪和限制的目的。 术语task(任务...cgroups的组织管理操作单元可以细粒度到线程级别,用户态代码也可以针对系统分配的资源创建和销毁cgroups,从而实现资源再分配和管理。 所有资源管理的...
Linux阅码场 - Linux内核月报(2020年08月)
关于linux内核月报linux阅码场linux阅码场内核月报栏目,是汇总当月linux内核社区最重要的一线开发动态,方便读者们更容易跟踪linux内核的最前沿发展动向。 限于篇幅,只会对最新技术做些粗略概括,技术细节敬请期待后续文章,也欢迎广大读者踊跃投稿为阅码场社区添砖加瓦。 本期月报主要贡献人员:张健、廖威雄、che...
Linux 中 proc 文件系统内容详述
本质上来说,cgroups 是内核附加在程序上的一系列钩子(hook),通过程序运行时对资源的调度触发相应的钩子以达到资源追踪和限制的目的。 cmdline在启动时...linux 下的 proc文件系统中提供了许多有用的信息,除了基本的cpu使用率、版本号等,你甚至还可以在这里直接看到内核的输出。 下面这张表,简单列举 proc中...
Docker 基础技术之 Linux cgroups 详解
cgroups 是 linux 内核提供的一种机制,这种机制可以根据需求把一系列任务及子任务整合(或分隔)到按资源划分等级的不同组内,从而为系统资源管理提供一个统一的框架。 (来自 《docker 容器与容器云》) 通俗来说,cgroups可以限制和记录任务组(进程组或线程组)使用的物理资源(包括 cpu、内存、io 等)...

KVMSEC:一个Linux内核虚拟机的安全扩展
lares 是一个活动的使用虚拟化的结构,被放置在xen虚拟机,并且在客户机上安装钩子程序。 为了确保钩子程序不被覆盖,lares 使用内存保护系统,使每页写...c)注册dm的pid 到kvmsecd中。 2.watcher-它是第二个线程,管理:a)qemu-kvm 的启动; b)注册qemu-kvm的pid 到kvmsecd中; c)非正常终止qemu-kvm...
不为人知的网络编程(十):深入操作系统,从内核理解网络包的接收过程(Linux篇)
那么我们现在来看看这些准备工作都是怎么做的。 4.1创建ksoftirqd内核线程linux的软中断都是在专门的内核线程(ksoftirqd)中进行的,因此我们非常有必要...这里nf_hook是一个钩子函数,当执行完注册的钩子后就会执行到最后一个参数指向的函数ip_rcv_finish。 static int ip_rcv_finish(struct sk_buff *skb)...
STGW 下一代互联网标准传输协议QUIC大规模运营之路
具体方法是在 ebpf 的 reuseport 钩子处,解析 quic 包以及连接 id,根据 quic 连接 id 将包转发到对应的 worker 去。 配置加载和热升级连接保持 quic ...七层单机多核的连接迁移 当包到达 stgw 服务器时,由于 stgw 服务器多核转发,此时还需要将 quic 包转发到同一个进程(或线程)去处理。 当前,7 层网络框架...

【小家Spring】Spring IOC容器启动流程 AbstractApplicationContext#refresh()方法源码分析(二),Spring容器启动刷新的完整总结
程序正常退出使用system.exit()终端使用ctrl+c触发的中断系统关闭使用killpid命令干掉进程(kill -9除外)以下场景不会触发:在eclipseidea中直接点击terminate关闭程序时不会触发关闭钩子的; 在linux下使用kill -9也是不会触发钩子的; 知道了这个钩子后,我们就可以在关闭线程里,做一些优雅的释放资源事情了...
计算机性能之殇(三)-- 通用电子计算机的胎记:事件驱动
进程、线程进程的创建、管理和销毁全部都是基于异常控制流实现的,其生命周期的钩子函数也是操作系统依赖异常控制流实现的。 线程在 linux 上和进程几乎没有功能上的区别。 编程语言中的 try catchc++ 编译成的二进制程序,其异常控制语句是直接基于异常控制流的。 java 这种硬虚拟机语言,php 这种软虚拟机语言...

性能之殇:从冯·诺依曼瓶颈谈起
进程、线程进程的创建、管理和销毁全部都是基于异常控制流实现的,其生命周期的钩子函数也是操作系统依赖异常控制流实现的。 线程在 linux 上和进程几乎没有功能上的区别。 编程语言中的 try catchc++ 编译成的二进制程序,其异常控制语句是直接基于异常控制流的。 java 这种硬虚拟机语言,php 这种软虚拟机语言...

2017 全球移动技术大会
借用微信小程序分析简单介绍一下腾讯移动分析(mta)在用户数据采集方面的技术细节,app和page线程对外暴露了很多钩子点,方便开发者hook自己的业务逻辑...导语6月9日-10日,“2017年全球移动技术大会(gmtc)”在北京举行。 会议为期两天,面向移动开发、前端、ai技术人员,聚焦前沿技术及实践经验...

如何优雅地停止Java进程
为jvm注册关闭钩子的时机不固定,可以在启动java进程之前,也可以在java进程之后(如:在监听到操作系统信号量之后再注册关闭钩子也是可以的)。 使用关闭钩子的注意事项1. 关闭钩子本质上是一个线程(也称为hook线程),对于一个jvm中注册的多个关闭钩子它们将会并发执行,所以jvm并不保证它们的执行顺序...
程序员技术练级攻略
写一个dll的钩子程序监控指定窗口的关闭事件,或是记录某个窗口的按键。 有了多线程、多进程通信,tcpip,套接字,c++和设计模式的基本,你可以研究一下...对于程序员来说unixlinux比windows简单多了。 (参看我四年前csdn的博文《其实unix很简单》)学会使用unixlinux你会发现图形界面在某些时候实在是太难用了...
Python 高性能编程
python 最常用的解释器(cpython——你在命令行输入 python时启动的标准解释器)是用 c 写的,所以各种钩子和库全都血淋淋地暴露了内部的 c 机制...第二个 cpu,而聪明的硬件逻辑则试图将两个指令线程交错地插入单个 cpu 的执行单元。 如果成功插入,能比单线程提升 30%。 一般来讲,当两个线程的工作...

一网打尽!每个程序猿都该了解的黑客技术大汇总
重点关注:c/c++工程师hookhook原意钩子的意思,在计算机编程中时常用到,用来改变原有程序执行流程。 在那个互联网充斥着流氓软件的年代,流行着一种...在linux上,经常叫获得root权限,手机root也是这个意思。 在ios上,经常叫“越狱”。 权限提升的方式五花八门,总体来说,程序执行的时候,所属进程/线程...

极速收藏!巨详细的分布式架构知识体系
现场保留内存分布,线程数等资源现象的保存,如javadump钩子接入调试接入采用字节码技术无需入侵业务代码,可以供生产环境现场日志打点调试7.2流量调度在...传统的方式是在linux机器上配置crond定时任务或者直接在业务代码里面完成调度业务,现在则是成熟的中间件来代替。 schedulerxspring定时任务应用管理运维...

Android跨进程通信IPC之3——关于JNI的那些事
在分析ipc基于android 6.0)的过程中,里面的核心部分是native的,并且还包含一些linux kernel,而作为android开发者看到的代码大部分都是java层...在java层调用c层的native函数时,调用native函数线程必然通过dalvik虚拟机来调用c层的native函数。 此时,虚拟机会为native的c组件是实例化一个jnienv指针...