关闭

Linux阅码场

所属频道 嵌入式 公众号精选
专业的Linux技术社区和Linux操作系统学习平台,内容涉及Linux内核、Linux内存管理、Linux进程管理、Linux文件系统、Linux性能调优,Linux设备驱动,以及Linux虚拟化和云计算等方面。
  • 跟踪诊断技术SIG 7月运营月报:系统排查工具 ssar 即将开源 | 龙蜥SIG

    跟踪诊断技术SIG 7月运营月报:系统排查工具 ssar 即将开源 | 龙蜥SIG

    跟踪诊断技术SIG致力于为操作系统生态提供系统性,工具化,并以数据为支撑的发现、跟踪和诊断问题的能力。SIG目标:为龙蜥社区(OpenAnolis)开源操作系统,提供一个全栈覆盖内核与核心组件的跟踪和诊断工具,增强龙蜥社区(OpenAnolis)全栈的可观察性和可靠性。欢迎更多开发者加入跟踪诊断技术SIG:网址:https://openanolis.cn/sig/tracing邮件列表:cloud-kernel@lists.openanolis.cnSIG本月亮点系统排查工具ssar7月份,我们计划将阿里云自研的ssar贡献给龙蜥社区(OpenAnolis),作为跟踪诊断技术SIG和龙蜥社区(...

    2021-09-23
  • 宋宝华:为了不忘却的纪念,评Linux 5.13内核(上集)

    宋宝华:为了不忘却的纪念,评Linux 5.13内核(上集)

    5.14-rc6了,看起来5.14也快发布了。而我5.13的总结还没有写出,我早觉得有写一点东西的必要了,这虽然于搬砖的码农毫不相干,但在追求上进的工程师那里,却大抵只能如此而已。为了不忘却的纪念,我们列出5.13内核的10个激动人心的新特性。上集先谈4个:AppleM1的初始MisccgroupLandlock安全模块系统调用的堆栈随机化AppleM1的初始支持5.13最爆炸性的新闻无非是初始的AppleM1支持,但是然并卵,实用性几乎为0。因为,已经合入的patch非常类似于SoCbringup的初级阶段:带earlycon支持的UART(samsung-style)串口驱动Apple中断...

    2021-09-23
  • CPU Burst有副作用吗?让数学来回答!| 龙蜥技术

    CPU Burst有副作用吗?让数学来回答!| 龙蜥技术

    编者按:CPUBurst特性已合入Linux5.14,AnolisOS8.2、AlibabaCloudLinux2、AlibabaCloudLinux3也都支持CPUBurst特性。在系列文章的上篇中,我们讨论了让人讨厌的CPU限流,它会影响运行在容器中的应用的一些关键指标。为了避免限流的出现,有时我们不得不牺牲容器部署密度,从而导致资源浪费的产生。在解决方案部分,我们也介绍了新的CPUBurst技术,通过这一技术,我们既能保证容器运行服务质量,又不降低容器部署密度。听起来有点像个银弹啊?那么,使用CPUBurst的副作用是什么?是否有不适用的场景呢?为了回答这个问题,本文将介绍CPUBurs...

    2021-09-23
    CPU
  • 致敬 hacker |盘点内存虚拟化探索之路

    致敬 hacker |盘点内存虚拟化探索之路

    云与虚拟化云计算是通过Internet服务的方式提供动态可伸缩资源的计算模式,经过多年的发展已成为企业IT技术的重要支撑。虚拟化是云计算的核心技术之一,将一台计算机抽象为多台逻辑计算机,即虚拟机,每个虚拟机是一个单独安全的环境,可运行不同的操作系统且互不影响。虚拟化技术给资源使用和调度带来了极大便利,云计算系统可以根据负载情况及时进行资源调度,在提升资源利用率的同时保证应用和服务不会因资源不足而影响服务质量。然而虚拟化也是有代价的,对资源的抽象带来了性能损失,这也是虚拟化一直致力解决的问题。虚拟化的资源抽象可以简单划分为三部分:CPU虚拟化、内存虚拟化和设备虚拟化。其中设备虚拟化已经可以实现网...

  • 祝Linux30岁生日快乐:Linux 成功的真正原因(文末赠书)

    祝Linux30岁生日快乐:Linux 成功的真正原因(文末赠书)

    作者丨JeremyAndrews译者丨屠灵策划丨蔡芳芳Linux诞生于1991年,距今已经30年了。虽然它一开始只是Linus的一个个人项目,而非出于要开发一个新操作系统的伟大梦想,但如今的Linux早已无处不在。30年前,当LinusTorvalds第一次发布Linux内核时,他还是赫尔辛基大学的一名21岁的学生。他宣布说:“我正在开发一个(免费的)操作系统(这只是个爱好,不会做得很大,也不会很专业……)”。30年后,500强超级计算机和70%以上的智能手机都在运行Linux。很显然,Linux不仅大,而且很专业。30年来,LinusTorvalds一直在领导着Linux内核的开发,启发了无...

    2021-09-23
  • 宋宝华:为了不忘却的纪念,评Linux 5.13内核

    宋宝华:为了不忘却的纪念,评Linux 5.13内核

    Linux5.14于14小时之前发布了,而我5.13的总结还没有写出,我早觉得有写一点东西的必要了,这虽然于搬砖的码农毫不相干,但在追求进步的工程师那里,却大抵只能如此而已。为了不忘却的纪念,我们列出5.13内核的数个激动人心的新特性:AppleM1的初始MisccgroupLandlock安全模块系统调用的堆栈随机化printk无锁ringbuffer的进一步优化BPF可调用内核函数公共的IOPAGEFault支持AppleM1的初始支持5.13最爆炸性的新闻无非是初始的AppleM1支持,但是然并卵,实用性几乎为0。因为,已经合入的patch非常类似于SoCbringup的初级阶段:带ea...

    2021-09-23
  • 相同版本 JVM 和 Java 应用,在 x86 和AArch64 平台性能相差30%,何故?

    相同版本 JVM 和 Java 应用,在 x86 和AArch64 平台性能相差30%,何故?

    编者按:目前许多公司同时使用x86和AArch642种主流的服务器。这两种环境的算力相当,内存相同的情况下:相同版本的JVM和Java应用,相同的JVM参数,应用性能在不同的平台中表现相差30%,x86远好于AArch64平台。本文分析了一个应用在AArch64平台上性能下降的例子,发现JVM的CodeCache大小是引起这个性能问题的根源,进而研究什么导致了不同平台上CodeCache大小的不同。最后笔者给出了不同平台中该如何设置参数规避该问题。希望本文能给读者一些启示:当使用不同的硬件平台时需要关注底层硬件对于上层应用的影响。业务在x86和AArch64上同时部署时(相同的JDK和Java...

    2021-09-23
  • AUTOSAR 架构下看门狗的理解

    AUTOSAR 架构下看门狗的理解

    本文主要介绍AUTOSAR架构下的WdgDriverWdgIfWdgM模块,分析模块之间的依赖关系以及运行原理以帮助快速理解。本文以MPC5746R为主控芯片,以FS6500为SBC,DaVinciConfigurator为AUTOSAR工具链。01模块架构与依赖1、模块介绍AUTOSAR架构中的WDG一共分为三个部分,WdgDriverWdgInterfaceWdgManager。其中WdgDriver分为Externalwatchdogdriver与Internalwatchdriver。其中外部驱动由SBC提供功能,内部驱动由SWT模块提供功能。MPC5746R有三个SWT(SoftWa...

  • WSL2:Windows 亲生的 Linux 子系统

    WSL2:Windows 亲生的 Linux 子系统

    在上一篇文章中,我们主要聊了一下:在Windows系统中,安装WSL子系统。文章在此:WSL:在Windows系统中开发Linux程序的又一神器但是WSL只是长得像Linux而已,虽然在这个子系统中,我们可以执行Linux程序,但是到了底层,WSL调用的还是win32API。也就是说:WSL只是一个适配层。后来,微软终于放出了WSL2这个真正的Linux子系统,这是一个真正的Linux完整内核,与传统的虚拟机VitualBox、VMWare一样,但是它与宿主机的互操作性更好。为了完整性,我们就继续把这个流程给走完。在这个过程中遇到的问题、需要的安装软件等资源,已经上传到网盘,在文末有下载地址。...

  • 作为IT行业过来人,飞哥想对你聊聊我的这六点认知!

    作为IT行业过来人,飞哥想对你聊聊我的这六点认知!

    大家好,我是飞哥!我最近逛知乎的时候浏览到这样一个火热的问题:“作为IT行业的过来人,你有什么话想对后辈说的?”飞哥我本人是2010年硕士毕业,到今天已经工作了十多年了。借这个话题谈几点粗浅的个人想法,供大家在职业发展的道路上借鉴!1.要认识到选择大于努力千万不要相信你的能力能决定一切!在选择面前,能力真的排不上号。大家从学校毕业后会面临各种各样的选择。当时一念之间的选择,可能会导致将来发展空间的巨大差异。比如十五年前,能力最强的计算机应届硕士们一般都是进各种外企,微软,Oracle、诺基亚。至于说阿里腾讯?能力上二流的学生才会去。但是后来呢?当年去腾讯阿里的同学可能已经把当年比他们优秀的同学...

    2021-09-23
  • 用户态 tcpdump 如何实现抓到内核网络包的?

    用户态 tcpdump 如何实现抓到内核网络包的?

    大家好,我是飞哥!今天聊聊大家工作中经常用到的tcpdump。在网络包的发送和接收过程中,绝大部分的工作都是在内核态完成的。那么问题来了,我们常用的运行在用户态的程序tcpdump是那如何实现抓到内核态的包的呢?有的同学知道tcpdump是基于libpcap的,那么libpcap的工作原理又是啥样的呢。如果让你裸写一个抓包程序,你有没有思路?按照飞哥的风格,不搞到最底层的原理咱是不会罢休的。所以我对相关的源码进行了深入分析。通过本文,你将彻底搞清楚了以下这几个问题。tcpdump是如何工作的?netfilter过滤的包tcpdump是否可以抓的到?让你自己写一个抓包程序的话该如何下手?借助这几...

  • 程序员:“懒”推动技术进步

    程序员:“懒”推动技术进步

    好久不见,最近忙着加班,没时间写水文,公众号后台:炸哥你这号是不是废了…….好不容易划两天水分享个工作中遇到的小问题以及如何解决问题来自前端

    2021-09-23
  • 多进程可以监听同一端口吗

    多进程可以监听同一端口吗

    当然可以,只要你使用 SO_REUSEPORT 这个参数。还是先来看下man文档中是怎么说的:SO_REUSEPORT(sinceLinux3.9)PermitsmultipleAF_INETorAF_INET6socketstobeboundtoanidenticalsocketaddress.Thisoptionmustbesetoneachsocket(includingthefirstsocket)priortocallingbind(2)onthesocket.Topreventporthijacking,allofthepro‐cessesbindingtothesameaddre...

    2021-09-23
  • 多处理器下的中断机制

    多处理器下的中断机制

    INTERRUPT中断是硬件和软件交互的一种机制,可以说整个操作系统,整个架构都是由中断来驱动的。中断的机制分为两种,中断和异常,中断通常为设备触发的异步事件,而异常是执行指令时发生的同步事件。本文主要来说明外设触发的中断,总的来说一个中断的起末会经历设备,中断控制器,CPU三个阶段:设备产生中断信号,中断控制器翻译信号,CPU来实际处理信号。本文用的实例来讲解多处理器下的中断机制,从头至尾的来看一看,中断经历的三个过程。其中第一个阶段设备如何产生信号不讲,超过了操作系统的范围,也超过了我的能力范围。各种硬件外设有着自己的执行逻辑,有各种形式的中断触发机制,比如边沿触发,电平触发等等。总的来说...

  • 2倍速的人生

    2倍速的人生

    这个话题的灵感来源于昨天佳佳子在极客时间直播时说自己语速快,被大家称为2倍速生活中这种场景也挺多的刷剧刷综艺大家都体验过2倍速吧,声音和画面都快变形了,仿佛只想快速把该剧追完,那看剧的意义是啥呢?小时候一家人每天守在电视里旁去追电视剧,那时候的电视可不能倍速,期间还有广告呢,我们照样会等广告播完,让现在的我们忍受广告,估计没几个人受得了,索性开个VIP吧但一家人追剧的乐趣那可是无穷的,边看边聊,每天准点等候,这给生活也带来了一些乐趣,每天有个盼头嘛关于学习也想追求2倍速,想速成,商家也抓住了人们速成的心理,才有了《7天入门到精通xx》系列一线城市里每天上下班的打工人大多神色匆匆,戴着耳机,拿着...

    2021-09-18