首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Manu
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
9
文章 9
沸点 0
赞
9
返回
|
搜索文章
Manu
赞了这篇文章
小白debug
公众号【小白debug】 @字节
·
2年前
关注
既然有HTTP协议,为什么还要有RPC
我想起了我刚工作的时候,第一次接触RPC协议,当时就很懵,我HTTP协议用的好好的,为什么还要用RPC协议?于是就到网上去搜。不少解释显得非常官方,我相信大家在各种平台上也...
524
55
分享
Manu
赞了这篇文章
bojiangzhou
攻城狮 @HAND
·
3年前
关注
Netty 系列(3) — Netty 处理TCP 粘包/拆包
TCP 粘包/拆包 问题分析 TCP 是个“流”协议,所谓流,就是没有界限的一串数据。TCP 底层并不了解上层业务数据的具体含义,它会根据 TCP 缓冲区的实际情况进行包的...
23
2
分享
Manu
赞了这篇文章
CRMEB技术团队
开发工程师 @西安众邦网络科技有限公司
·
2年前
关注
Git 不要只会 pull 和 push,学学这 5 条提高效率的命令
使用 git 作为代码版本管理,早已是现在开发者必备的技能,但是大多数的开发者还是只会最基本的保存,拉去,推送,遇到一些 commit 管理的问题就束手无策,或者用一些不优...
157
9
分享
Manu
赞了这篇文章
捡田螺的小男孩
公众号:捡田螺的小男孩
·
3年前
关注
设计好接口的36个锦囊
前言 大家好,我是捡田螺的小男孩。作为后端开发,不管是什么语言,Java、Go还是C++,其背后的后端思想都是类似的。后面打算出一个后端思想的技术专栏,主要包括后端的一些设...
441
39
分享
Manu
3年前
关注
MIT6.S081 Lab5:Lazy allocation
对于页表硬件,O/S可以使用许多巧妙的技巧之一是用户空间堆内存的懒分配。xv6应用程序使用sbrk()系统调用向内核请求堆内存。 在给出的内核中,sbrk()分配物理内存并...
1
评论
分享
Manu
3年前
关注
MIT6.S081 Lab4:Traps
开始Lab4前,需要阅读Chap4,以及相关代码: kernel/trampoline.S:从用户空间转换到内核空间再转换回来所涉及到的汇编代码 kernel/trap.c...
0
评论
分享
Manu
3年前
关注
MIT6.S081 Chap4:陷入与系统调用
有三种事件会让CPU停止指令的正常执行,并强制将控制权转移给处理事件的特殊代码。下面是这三种事件: 系统调用,这时用户程序执行ecall指令,来让内核为它做一些事情 异常,...
0
评论
分享
Manu
3年前
关注
MIT6.S081 Lab3:Page tables
进行Lab3之前,需要阅读Chap3,和相关文件: kernel/memlayout.h:体现了内存布局 kernel/vm.c:包括了大部分虚拟内存代码 kernel/k...
1
1
分享
Manu
3年前
关注
MIT6.S081 Chap3:页表
Chap3:页表 操作系统通过页表为每个进程提供了自己私有的地址空间和内存。页表决定了内存地址表示什么,也决定了哪部分物理内存可以被访问。它们允许xv6隔离不同进程的地址空...
0
评论
分享
Manu
3年前
关注
MIT6.S081 Lab2:System Calls
进行此Lab之前,首先需要阅读Chapter2 和 Chapter4 的 4.3 和 4.4 节,包括部分源文件: 用户空间代码(关于系统调用) user/user.h a...
0
评论
分享
Manu
3年前
关注
MIT6.S081 Chap2:操作系统组织
操作系统组织 对操作系统的一个关键要求,是同时执行不同的活动。比如通过系统调用接口 fork来启动新的进程。操作系统必须在不同的进程之间对计算机的资源进行分时共享。即使进程...
0
评论
分享
Manu
3年前
关注
MIT6.S081 Chap1:操作系统接口
操作系统接口 操作系统的工作是: 将计算机的资源在多个程序间共享,并且给程序提供一系列比硬件本身更有用的服务。 管理并抽象底层硬件(eg:word软件不用关心自己使用的是何...
0
评论
分享
Manu
赞了这篇文章
心城以北
Java 架构师 @某软件公司
·
3年前
关注
Redis 缓存淘汰策略
「这是我参与2022首次更文挑战的第27天,活动详情查看:2022首次更文挑战」。 本文主要讲解了 redis 缓存过期淘汰策略, 以及我们结合 LeetCode 的 LR...
126
12
分享
Manu
赞了这篇文章
敖丙
🏆掘金签约作者 @微信搜:敖丙
·
3年前
关注
一看就懂 详解redis的bitmap(面试加分项)
在上文《面试杀手锏:Redis源码之SDS》中我们深入分析了 SDS 的实现,本次介绍的位图(BitMap)就是借助 SDS 实现的。 本文在最后讲解了BitMap对腾讯面...
71
2
分享
Manu
3年前
关注
MIT6.S081 Lab1:Xv6 and Unix utilities
Lab1:Xv6 and Unix utilities 这个Lab会让你熟悉xv6和它的系统调用。 Boot xv6(通过qemu模拟) 下载xv6源码(配环境时已经下载过...
0
评论
分享
Manu
3年前
关注
网络编程学习21--Reactor/Proactor
回调函数 编程可以分为系统编程和应用编程。系统编程可以看作是编写库,而应用编程是利用写好的库来编写具有某种功能的程序,即应用。库通常会留下一些接口,即API,供应用程序员使...
0
评论
分享
Manu
3年前
关注
网络编程学习20--阻塞I/O + 多线程模型
阻塞I/O + 多线程模型 由于进程的上下文切换代价较高,所以可以使用更轻量级的线程来代替进程。 操作系统中允许在单个进程内运行多个线程。线程由操作系统内核管理,每个线程都...
0
评论
分享
Manu
3年前
关注
POSIX条件变量
条件变量 互斥锁可以用来同步线程对共享数据的访问,条件变量则是用于在线程之间同步共享数据的值。条件变量提供了一种线程间的通知机制:当某个共享数据达到某个值的时候,唤醒等待这...
0
评论
分享
Manu
3年前
关注
POSIX互斥锁
互斥锁 互斥锁(也称互斥量)可以用于保护关键代码段,以确保其独占式的访问。当进入关键代码段时,需要获得互斥锁并将其加锁,这等价于二进制信号量的P操作;当离开关键代码段时,需...
0
评论
分享
Manu
3年前
关注
网络编程学习19--阻塞I/O + 多进程模型
阻塞I/O + 多进程模型 阻塞I/O + 进程模型是最简单的解决C10K问题的方法,它是通过为每个连接创建一个独立的进程(子进程)去服务的。 fork 函数 函数原型 一...
0
评论
分享
下一页
个人成就
文章被点赞
40
文章被阅读
23,315
掘力值
752
关注了
0
关注者
12
收藏集
1
关注标签
5
加入于
2021-11-21