摘要: 每次回家开灯时你有没有想过,用你按的开关实际上能打造出 复杂的 CPU来,只不过需要的数量可能比较多,也就几十亿个吧。 伟大的发明 过去200年人类最重要的发明是什么?蒸汽机?电灯?火箭?这些可能都不是,最重要的也许是这个小东西: 这个小东西就叫晶体管,你可能会问,晶体管有什么用呢? 实际上晶体管的 阅读全文
posted @ 2021-05-11 10:35 码农的荒岛求生 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 有趣! CPU 空闲时在干嘛? 人在空闲时会发呆会无聊,计算机呢? 假设你正在用计算机浏览网页,当网页加载完成后你开始阅读,此时你没有移动鼠标,没有敲击键盘,也没有网络通信,那么你的计算机此时在干嘛? 有的同学可能会觉得这个问题很简单,但实际上,这个问题涉及从硬件到软件、从 CPU 到操作系统等一系 阅读全文
posted @ 2021-04-20 15:03 码农的荒岛求生 阅读(616) 评论(0) 推荐(1) 编辑
摘要: 进程和线程这两个话题是程序员绕不开的,操作系统提供的这两个抽象概念实在是太重要了。 关于进程和线程有一个极其经典的问题,那就是进程和线程的区别是什么?相信很多同学对答案似懂非懂。 记住了不一定真懂 有的同学可能已经“背得”滚瓜烂熟了:“进程是操作系统分配资源的单位,线程是调度的基本单位,线程之间共享 阅读全文
posted @ 2021-02-24 21:42 码农的荒岛求生 阅读(608) 评论(0) 推荐(1) 编辑
摘要: 作为程序员,想必你多多少少听过协程这个词,这项技术近年来越来越多的出现在程序员的视野当中,尤其高性能高并发领域。当你的同学、同事提到协程时如果你的大脑一片空白,对其毫无概念。。。 as-seen-on-tv-celebutard-emoticons-irl-reaction-guys-sham-wo 阅读全文
posted @ 2021-02-23 21:57 码农的荒岛求生 阅读(509) 评论(2) 推荐(2) 编辑
摘要: 在这篇文章中我们来讨论一下到底什么是同步,什么是异步,以及在编程中这两个概念到底意味着什么,这些是进一步掌握高性能、高并发技术的基础,因此非常关键。 相信很多同学遇到同步异步这两个词的时候大脑瞬间就像红绿灯失灵的十字路口一样陷入一片懵逼的状态: mengbi 是的,这两个看上去很像实际上也很像的词汇 阅读全文
posted @ 2021-02-02 21:26 码农的荒岛求生 阅读(571) 评论(0) 推荐(1) 编辑
摘要: 不知你是不是也有这样的疑惑,我们为什么需要回调函数这个概念呢?直接调用函数不就可以了?回调函数到底有什么作用?程序员到底该如何理解回调函数? 这篇文章就来为你解答这些问题,读完这篇文章后你的武器库将新增一件功能强大的利器。 一切要从这样的需求说起 假设你们公司要开发下一代国民App“明日油条”,一款 阅读全文
posted @ 2021-02-01 21:25 码农的荒岛求生 阅读(1340) 评论(0) 推荐(3) 编辑
摘要: 当在读这篇文章的时候,你想过没有,服务器是怎么把这篇文章发送给你的呢? 说简单也简单,不就是一个用户请求吗?服务器根据请求从数据库中捞出这篇文章,然后通过网络发回去。 说复杂也复杂,服务器是如何并行处理成千上万个用户请求呢?这里面涉及到哪些技术呢? 这篇文章就来为你解答这个问题。 多进程 历史上最早 阅读全文
posted @ 2021-01-31 21:25 码农的荒岛求生 阅读(504) 评论(0) 推荐(1) 编辑
摘要: 在开始本篇的内容前,我们先来思考几个问题。 我们先来看一段简单的代码: void func(int a) { if (a > 100000000) return; int arr[100] = {0}; func(a + 1);} 你能看出这段代码会有什么问题吗? 我们在之前的文章《高性能高并发服务 阅读全文
posted @ 2021-01-31 08:54 码农的荒岛求生 阅读(434) 评论(1) 推荐(3) 编辑
摘要: 注意这个题目问的是进程切换与线程切换的区别,不是进程与线程的区别。当然这里的线程指的是同一个进程中的线程。 这个问题能很好的考察面试者对进程和线程的理解深度,有比较高的区分度。 要想正确回答这个问题,面试者需要理解虚拟内存。 虚拟内存解放生产力 对于程序员来说,我们在编程时实际上是不怎么操心内存问题 阅读全文
posted @ 2021-01-12 21:47 码农的荒岛求生 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 在讲解IO多路复用之前,我们需要预习一下文件以及文件描述符。 什么是文件 程序员使用I/O最终都逃不过文件。 因为这篇同属于高性能、高并发系列,讲到高性能、高并发就离不开Linux/Unix,因此这里就来讨论一下Linux世界中的文件。 实际上对于程序员来说文件是一个很简单的概念,我们只需要将其理解 阅读全文
posted @ 2021-01-08 22:26 码农的荒岛求生 阅读(523) 评论(0) 推荐(0) 编辑