👆点击“博文视点Broadview”,获取更多书讯 转眼间,2022年马上就要过去了一半…… 这半年,可能很多小伙伴都在居家的过程中过得很不容易~~ 但,生活还是要继续,梦想还是要有的! 在这个暗潮涌动的魔幻时代,裸身打怪升级的是青铜,王者得先有一套硬核装备。 所以,趁着618,赶紧给大家分享几本外挂级图书,让我们的下半年可以坐上“成长飞轮”,然后去享受开挂的风花雪月。 NO.1 21世纪之初的那些年,言辞之争不绝于耳。身在软件行业,我们见证了这些争议。其中,“匠人”(craftsman)一词常被认为太
👆点击“博文视点Broadview”,获取更多书讯 互联网大厂是很多开发人员所向往的公司,但大家应该都听过关于大厂面试候选人的一句调侃的话,“面试造火箭,工作拧螺丝”。这虽然有一点儿夸张的成分,不过也确实描述得比较形象。 在面试中,尤其是顶级互联网大厂的面试,对技术的考查往往都很深。但是到了工作中,可能确实又需要花不少时间在写各种各样的重复 CRUD 上。 那为啥会出现这种情况,是大厂闲得没事非得为难候选人吗? 其实不是,这是因为扎实的底层功力确实对大厂来说很重要。 互联网大厂区别于小公司的一个业务特点
现在回首看看,接触Linux已经很长时间了。 在大三的时候开始学习Java, 但是一直学Java的话, 感觉有点腻, 就尝试找点其他东西来学习。 所以当时就选择学习了Linux。 至于为什么要学习Linux, 有以下三个原因。
经常收到后台读者发过来同样的问题,看完「开发内功修炼」以后觉得写的不错。问:“飞哥你平时是怎么样磨炼自己的技术能力,并写出这些文章的?另外可否帮推荐几本书更系统地学习一下”。今天干脆就写一篇文章统一回复一下。
讲者:Chris Hoge,开发者倡导者 @Project Calico,和Shaun Crampton,核心开发者 @Project Calico
近年来,操作系统领域新闻频出,CentOS 8已经停止维护、HarmonyOS 3正式发布;深度(deepin)告别debian,打造自己的linux根社区…… 面对ePBF、ftrace等技术带来的变革汹涌袭来,面向未来的智能座舱、智能家居等设备也对操作系统提出了新的要求。操作系统技术与国产操作系统生态进入飞速发展期,那么: 操作系统方向的技术变革、产业发展和就业前景如何? 操作系统对于程序员来说究竟意味着什么? 是不是只有杰出的程序员才应该研究操作系统? 性能问题究竟有多重要? 领域大神们推荐大家读什么
有读者反馈,单看零碎的知识点,自己心中没底。还是看书更有框架一些,所以今天给大家推荐一些经典书籍,书籍电子版我已经发到百度网盘群。
我买的大部分是技术书,也有一些非技术书,比如《明朝那些事儿》、《平凡的世界》之类的。
根据我的经验来谈一谈,先介绍一下我的情况,坐标上海,后台开发(也带团队了),某知名互联网公司。 目前主流的有C++和JAVA,C++我的经验稍微多一点。我就说说我关于C++方面的学习经验。如果您是学生,临近毕业,没有那么多时间读许多书,可以按下面列举的重要程度来参考。 首先,我觉得你应该好好准备算法和数据结构,做到常见的算法和数据结构知识点都能非常熟悉,这样的话你毕业求职的时候可以轻松拿一些大厂(BAT等)的offer。我本人非科班出身,一毕业之后各种摸爬滚打。一毕业去大厂个人觉得有两个好处,第一,你的收入
https://www.100ask.net/detail/p_5f0fc9e9e4b0ee0b8872c2c3/6
《操作系统与存储:解析Linux内核全新异步IO引擎——io_uring设计与实现》(一)
原来明尼苏达大学华人教授K.J Lu带领的团队在向Linux内核提交补丁时,故意引入新的Bug,然后以此写论文。
本文讲解系统的进程管理相关内容,系统的进程管理是有关系统的所有进程的调度、排序、分配资源、创建、销毁等,是比较重要的内容。
很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。 如果你是一下这三类人中,不妨看下此文,相信会对你有所帮助: 在工作中会用到 SQL 但是对它并不完全了解的人; 能够熟练使用 SQL 但是并不了解其语法逻辑的人; 想要教别人 SQL 的人。 以下为10个简单步骤,可完全理解SQL: SQL 是一种声明式语言——SQL 语言声明的是结果集的属性,计算机会
为了彻底理解是什么使得Linux能正常运行以及其为何能在各种不同的系统中运行良好,你需要深入研究内核最本质的部分。内核处理CPU与外界间的所有交互,并且决定哪些程序将以什么顺序共享处理器时间。它如此有效地管理有限的内存,以至成百上千的进程能高效地共享系统。它熟练地统筹数据传输,这样CPU 不用为等待速度相对较慢的硬盘而消耗比正常耗时更长的时间。
世界悲结束了,章鱼哥也退役了,连非诚勿扰中的拜金女也突然的少了很多。这本《Linux内核修炼之道》在卓越、当当、china-pub上也已经开卖了,虽然是严肃文学,但为了保证流畅性,大部分文字我还都是斟词灼句,反复的念几遍才写上去的,尽量考虑到写上去的每段话能够让读者产生什么疑惑,然后也都会紧接着尽量的去进行解释清楚,中间的很多概念也有反复纠结过怎么解释能够更容易的理解,力求即使对于初学者也可以有很少阻碍的一气读完。同时我也把书中一部分自己的感悟抽出来整理了精华版,share出来。当然水平有限,错漏之处有发现而修订时遗漏的,也有尚没有发现的。这本书如果对您有用,乃我之幸事,如果无用,就在此先诚惶诚恐的向大家拜个不是了。
很早就想整理下自己读过的一些书了,想把感觉还不错的分享和推荐给大家。然而,写这篇文前面的一个月一直在忙着公司的项目和另一本技术书的阅读。感觉需要做一点事情来定下心,然后就有了这篇文章。
本篇介绍如何编译及下载uboot到ARM板子上。对于初学者有这么三个名词,分别是uboot、kernel和rootfs。这三个名词我刚开始接触是非常的困惑,现在随着使用增多稍微有一点点感觉。大家刚开始学不用太纠结这个问题,等实际操作一段时间就会理解了。uboot的主要作用是用来启动linux内核,因为CPU不能直接从块设备(如NAND/EMMC/SD卡)中执行代码,需要把块设备中的程序复制到内存中,而复制之前还需要进行很多初始化工作,如时钟、串口等;要想让CPU启动linux内核,只能通过另外的程序,进行必要的初始化工作,再把linux内核中代码复制到内存中,并执行这块内存中的代码,即可启动linux内核;一般情况下,我们把linux镜像储存在块设备中如SD卡、Nandflash等块设备中,首先执行uboot代码,在uboot中把块设备中的内核代码复制到某内存地址处,然后再执行这个地址,即可启动内核。
汇编的语法风格分为两种,一种是intel风格,一种是at&t风格,intel风格主要用于windows平台,at&t风格主要用于unix平台。
大家好,又见面了,我是你们的朋友全栈君。 openwrt更换原有Linux内核版本 1;将openwrt14.07 中的内核版本从3.10.49 更换成 3.10.102 a;更改文件includ
Linux内核是现代历史上最大的软件项目之一,已经拥有超过2800万行代码,来自世界各地和不同领域的贡献者每天都会向Linux内核维护者提交大量补丁,以便他们在正式合并到Linux内核树之前得到审查。这些补丁可以帮助修复内核中的bug或小问题,或者引入新特性。
最近需要开发一些内核模块,进行探究linux内核的一些特征,现在把一些遇到的比较好的文章和知识点,进行简要记录和备忘;
本文为IBM RedBook的Linux Performanceand Tuning Guidelines的1.2节的翻译 原文地址:http://www.redbooks.ibm.com/redpapers/pdfs/redp4285.pdf 原文作者:Eduardo Ciliendo, Takechika Kunimasa, Byron Braswell 1.2 Linux内存架构 为了执行一个进程,Linux内核为请求的进程分配一部分内存区域。该进程使用该内存区域作为其工作区并执行请求的工作。它与你的
你在Windows/MacOS的登录Linux的SSH终端上很容易输入中文并且获得中文输出,比如下面这样:
但凡懂Linux内核的,都知道Linux内核的CFS进程调度算法,无论是从2.6.23将其初引入时的论文,还是各类源码分析,文章,以及Linux内核专门的图书,都给人这样一种感觉,即 CFS调度器是革命性的,它将彻底改变进程调度算法。 预期中,人们期待它会带来令人惊艳的效果。
使用过Linux或是MacOS的程序员,都应该熟悉SHELL,而支持SHELL的其实有不同的实现,著名的比如Bash Shell以及Z Shell
我见过许多人对进程与线程概念张口就来,问他Linux里进程和线程是怎么实现的,却浑然不知。
在上篇《IPv6技术详解:基本概念、应用现状、技术实践(上篇)》,我们讲解了IPV6的基本概念。
我大学的专业是软件工程。那个时候(我09年毕业),ACM等各类算法竞赛在大学还不是特别地流行。专门搞算法的同学不多,我也没有特地去训练和参加算法竞赛,所以我有很多的时间。然后这些时间都被我花在了自娱自乐的项目和看各种系统的源代码上了。
这个最新被发现的英特尔CPU漏洞,让攻击者直接通过监视功耗的变化,便可以轻松获取你的CPU数据。
在这魔幻且艰难的一年里, 有人见尘埃,也有人见星辰。 无论是意料之中的成长或失败, 还是意料之外的惊喜或惊吓, 一切都将画上句号! 一定有很多人和博文菌一样, 在阅读中度过了这不平凡的一年。 这一年,我们坚守初心,为大家带来了众多业内佳作, 这其中不乏一些领域内优秀的开山之作, 它们的存在,为推动行业发展带来了积极影响! 踩在2020年的尾巴尖, 博文菌与你来一同回顾2020年出版的这些 “大咖之作”~ No.1 程序员修炼之道 《程序员修炼之道:通向务实的最高境界(第2版)》 【美】David Thom
https://docs.nvidia.com/doca/sdk/erasure-coding-programming-guide/index.html
彭浩:大家好,我是彭浩,一位腾讯云专家工程师,在Linux内核以及虚拟化领域有10年+的工作经验,主要从事kvm虚拟化的开发,性能优化以及fuchsia 微内核的虚拟化开发工作。在Linux社区以及fuchsia社区都有不少补丁贡献,目前从事腾讯云操作系统和OpenCloudOS的研发工作。
9月17日,在2021中国信通院主办的2021 OSCAR开源产业大会上,腾讯云虚拟化资深研发专家李万鹏凭借在Linux内核KVM子系统的长期及突出贡献,荣获“开源先锋人物”奖。腾源会也第一时间采访了李万鹏,以求向开源爱好者们传递这位开源达人成长背后的感悟及点滴。 2019年8月9号,对于李万鹏来说,是一个不同寻常的日子。 那天早上,来自Paolo Zonzini(KVM总体维护者)的一封邮件让他久久不能平静。邮件中赫然写着的,“Formalize this by listing them as r
随着越来越多的企业开始上“云”,开始容器化,云安全问题已经成为企业防护的重中之重。
我自己总结的Java学习的系统知识点以及面试问题,目前已经开源,会一直完善下去,欢迎建议和指导欢迎Star: https://github.com/Snailclimb/Java-Guide
操作系统(OS)本身就是面试的必考知识,尤其是面试后端开发、嵌入式开发等岗位,更是如此。
这个版本主要是对 const fn 的提升: https://github.com/rust-lang/rust/pull/72437/
在 Linux 系统中的 /proc/stat 文件中存储了CPU 活动的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。不同内核版本中该文件的格式可能不大一致,以下通过实例来说明数据该文件中各字段的含义。
这种话听听就行了,起码不是真正程序员说过的话,每个编程语言都有其存在的必然性,很难直接通过数据直接比较谁更加厉害,语言没有谁更加厉害这种概念,只能是谁更加合适。
伯克利数据包过滤器(BPF)机制自2014年被重写和扩展(eBPF)以来,一直在各种内核子系统中发挥作用。事实证明,通过在内核虚拟机,允许在不编写内核自身代码的情况下实现任意策略的方式,存在着巨大的价值。最近一个将BPF推向网络驱动程序的补丁集显示了这种机制的一些潜力—以及集成一种经得起时间考验的方式的设计难度。如果成功的话,它可能会改变Linux系统上的实现高性能网络方式。
1. 技术站点 Hacker News:非常棒的针对编程的链接聚合网站 MSDN:微软相关的官方技术集中地,主要是文档类 infoQ:企业级应用,关注软件开发领域 OSChina:开源技术社区,开源方面做的不错哦 博客园、51CTO、CSDN:常见的技术社区,各有专长 stackoverflow:IT技术问答网站 GitHub:全球最大的源代码管理平台,很多知名开源项目都在上面,如Linux内核, OpenStack等免费的it电子书:http://it-ebooks.info/ 2. 不错的书籍 人月
核心思想:把自己像产品一样打造,就像张一鸣经典语录:run company as a product
往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 本周更新视频: BSP
随着微服务的盛行、自动化运维技术的发展,我们测试管理测试环境的能力似乎在逐渐降低,而整个IT行业对于“W”型人才的需求确越来越高。作为一个有追求的测试,我们是时候补一补我们的运维知识~
资料中,难免会有一些错误,有任何问题,都可以在github向我提交issue。文中的勘误,我都会更新在github中。点击阅读原文可以直达github。
lustre调优思路概览 lustre调优目前有两个方向,一个是Linux内核方向的调整;另外一个是Lustre内部的参数调整。 Lustre参数是按照层级划分,至少有3层。通过lctl list_param *.*.*这样的方式可以查询出来,如果想要查询更深层的参数,可以通过lctl list_param *.*.*.*这样方式进行查询 lustre的参数设置分为临时性和永久性设置,永久性的设置参数可以通过lctl set_param -P {lustre_param} {value for luste
MASM 6.11,MASM 11(Windows):http://www.masm32.com/
iOS的系统架构分为四个层次:核心操作系统层(CoreOS layer)、核心服务层(Core Services layer)、媒体层(Medialayer)和可触摸层(Cocoa Touch layer)。图1-1展示了Mac OS X和iOS系统架构层次的一个对比。
领取专属 10元无门槛券
手把手带您无忧上云