[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-72710":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":10,"languages":10,"totalLinesOfCode":10,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":33,"readmeContent":34,"aiSummary":35,"trendingCount":15,"starSnapshotCount":15,"syncStatus":36,"lastSyncTime":37,"discoverSource":38},72710,"CS-Base","xiaolincoder\u002FCS-Base","xiaolincoder","图解计算机网络、操作系统、计算机组成、数据库，共 1000 张图 + 50 万字，破除晦涩难懂的计算机基础知识，让天下没有难懂的八股文！🚀 在线阅读：https:\u002F\u002Fxiaolincoding.com  ","",null,18012,2115,101,94,0,4,22,160,12,44.98,false,"main",true,[25,26,27,28,29,30,31,32],"c","cpp","golang","java","linux","network","python","tcp","2026-06-12 02:03:07","# 小林 x 图解计算机基础\n\n![](https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fxiaolincoder\u002FImageHost4@main\u002F网站封面.png)\n\n👉 **点击**：[图解计算机基础在线阅读](https:\u002F\u002Fxiaolincoding.com\u002F)\n\n本站所有文章都是我[公众号：小林 coding](https:\u002F\u002Fmp.weixin.qq.com\u002Fs\u002FFYH1I8CRsuXDSybSGY_AFA)的原创文章，内容包含图解计算机网络、操作系统、计算机组成、数据库，共 1000 张图 + 50 万字，破除晦涩难懂的计算机基础知识，让天下没有难懂的八股文（口嗨一下，大家不要当真哈哈）！🚀\n\n曾经我也苦恼于那些晦涩难弄的计算机基础知识，但在我啃了一本又一本的书，看了一个又一个的视频后，终于对这些“家伙”有了认识。我想着，这世界上肯定有一些朋友也跟我有一样的苦恼，为此下决心，用图解 + 通熟易懂的讲解来帮助大家理解，利用工作之余，坚持输出图解文章两年之久，这才有了今天的网站！\n\n\n\n## :open_book:《图解网络》\n- **介绍**:point_down:：\n  - [图解网络介绍](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F)\n- **网络基础篇** :point_down:\n  - [TCP\u002FIP 网络模型有哪几层？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F1_base\u002Ftcp_ip_model.html) \n  - [键入网址到网页显示，期间发生了什么？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F1_base\u002Fwhat_happen_url.html) \n  - [Linux 系统是如何收发网络包的？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F1_base\u002Fhow_os_deal_network_package.html) \n- **HTTP 篇** :point_down:\n  - [HTTP 常见面试题](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttp_interview.html) \n  - [HTTP\u002F1.1 如何优化？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttp_optimize.html) \n  - [HTTPS RSA 握手解析](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttps_rsa.html) \n  - [HTTPS ECDHE 握手解析](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttps_ecdhe.html) \n  - [HTTPS 如何优化？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttps_optimize.html) \n  - [HTTP\u002F2 牛逼在哪？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttp2.html) \n  - [HTTP\u002F3 强势来袭](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttp3.html) \n  - [既然有 HTTP 协议，为什么还要有 RPC？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttp_rpc.html) \n  - [既然有 HTTP 协议，为什么还要有 WebSocket？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F2_http\u002Fhttp_websocket.html) \n- **TCP 篇** :point_down:\n  - [TCP 三次握手与四次挥手面试题](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_interview.html) \n  - [TCP 重传、滑动窗口、流量控制、拥塞控制](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_feature.html) \n  - [TCP 实战抓包分析](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_tcpdump.html) \n  - [TCP 半连接队列和全连接队列](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_queue.html) \n  - [如何优化 TCP?](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_optimize.html) \n  - [如何理解是 TCP 面向字节流协议？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_stream.html) \n  - [为什么 TCP 每次建立连接时，初始化序列号都要不一样呢？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Fisn_deff.html) \n  - [SYN 报文什么时候情况下会被丢弃？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Fsyn_drop.html) \n  - [四次挥手中收到乱序的 FIN 包会如何处理？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Fout_of_order_fin.html) \n  - [在 TIME_WAIT 状态的 TCP 连接，收到 SYN 后会发生什么？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftime_wait_recv_syn.html) \n  - [TCP 连接，一端断电和进程崩溃有什么区别？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_down_and_crash.html) \n  - [拔掉网线后，原本的 TCP 连接还存在吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_unplug_the_network_cable.html) \n  - [tcp_tw_reuse 为什么默认是关闭的？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_tw_reuse_close.html) \n  - [HTTPS 中 TLS 和 TCP 能同时握手吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_tls.html) \n  - [TCP Keepalive 和 HTTP Keep-Alive 是一个东西吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_http_keepalive.html) \n  - [TCP 协议有什么缺陷？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_problem.html)\n  - [如何基于 UDP 协议实现可靠传输？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Fquic.html)\n  - [TCP 和 UDP 可以使用同一个端口吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Fport.html)\n  - [服务端没有 listen，客户端发起连接建立，会发生什么？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_no_listen.html)\n  - [没有 accept，可以建立 TCP 连接吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_no_accpet.html) \n  - [用了 TCP 协议，数据一定不会丢吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_drop.html)\n  - [TCP 四次挥手，可以变成三次吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_three_fin.html)\n  - [TCP 序列号和确认号是如何变化的？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F3_tcp\u002Ftcp_seq_ack.html)\n- **IP 篇** :point_down:\n  - [IP 基础知识全家桶](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F4_ip\u002Fip_base.html) \t\n  - [ping 的工作原理](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F4_ip\u002Fping.html) \t\n  - [断网了，还能 ping 通 127.0.0.1 吗？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F4_ip\u002Fping_lo.html)\n- **学习心得** :point_down:\n  - [计算机网络怎么学？](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F5_learn\u002Flearn_network.html) \t\n  - [画图经验分享](https:\u002F\u002Fxiaolincoding.com\u002Fnetwork\u002F5_learn\u002Fdraw.html) \t\n\n## :open_book:《图解系统》\n- **介绍**:point_down:：\n  - [图解系统介绍](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F)\n- **硬件结构** :point_down:\n  - [CPU 是如何执行程序的？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Fhow_cpu_run.html) \n  - [磁盘比内存慢几万倍？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Fstorage.html) \n  - [如何写出让 CPU 跑得更快的代码？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Fhow_to_make_cpu_run_faster.html) \n  - [CPU 缓存一致性](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Fcpu_mesi.html) \n  - [CPU 是如何执行任务的？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Fhow_cpu_deal_task.html) \n  - [什么是软中断？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Fsoft_interrupt.html) \n  - [为什么 0.1 + 0.2 不等于 0.3？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F1_hardware\u002Ffloat.html) \n- **操作系统结构** :point_down:\n  - [Linux 内核 vs Windows 内核](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F2_os_structure\u002Flinux_vs_windows.html) \n- **内存管理** :point_down:\n  - [为什么要有虚拟内存？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Fvmem.html) \n  - [malloc 是如何分配内存的？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Fmalloc.html)\n  - [内存满了，会发生什么？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Fmem_reclaim.html)\n  - [在 4GB 物理内存的机器上，申请 8G 内存会怎么样？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Falloc_mem.html)\n  - [如何避免预读失效和缓存污染的问题？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Fcache_lru.html)\n  - [深入理解 Linux 虚拟内存管理](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Flinux_mem.html)\n  - [深入理解 Linux 物理内存管理](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F3_memory\u002Flinux_mem2.html)\n- **进程管理** :point_down:\n  - [进程、线程基础知识](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fprocess_base.html) \n  - [进程间有哪些通信方式？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fprocess_commu.html) \n  - [多线程冲突了怎么办？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fmultithread_sync.html) \n  - [怎么避免死锁？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fdeadlock.html) \n  - [什么是悲观锁、乐观锁？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fpessim_and_optimi_lock.html) \n  - [一个进程最多可以创建多少个线程？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fcreate_thread_max.html) \n  - [线程崩溃了，进程也会崩溃吗？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F4_process\u002Fthread_crash.html)\n- **调度算法** :point_down:\n  - [进程调度\u002F页面置换\u002F磁盘调度算法](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F5_schedule\u002Fschedule.html)\n- **文件系统** :point_down:\n  - [文件系统全家桶](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F6_file_system\u002Ffile_system.html) \t\n  - [进程写文件时，进程发生了崩溃，已写入的数据会丢失吗？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F6_file_system\u002Fpagecache.html)\n- **设备管理** :point_down:\n  - [键盘敲入 A 字母时，操作系统期间发生了什么？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F7_device\u002Fdevice.html) \n- **网络系统** :point_down:\n  - [什么是零拷贝？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F8_network_system\u002Fzero_copy.html) \n  - [I\u002FO 多路复用：select\u002Fpoll\u002Fepoll](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F8_network_system\u002Fselete_poll_epoll.html) \n  - [高性能网络模式：Reactor 和 Proactor](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F8_network_system\u002Freactor.html) \n  - [什么是一致性哈希？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F8_network_system\u002Fhash.html) \n- **学习心得** :point_down:\n  - [如何查看网络的性能指标？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F9_linux_chtml\u002Flinux_network.html) \t\n  - [画图经验分享](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F9_linux_chtml\u002Fpv_uv.html) \t\n- **学习心得** :point_down:\n  - [计算机网络怎么学？](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F10_learn\u002Flearn_os.html) \t\n  - [画图经验分享](https:\u002F\u002Fxiaolincoding.com\u002Fos\u002F10_learn\u002Fdraw.html) \n\n## :open_book:《图解 MySQL》\n- **介绍**:point_down:：\n  - [图解 MySQL 介绍](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002F)\n- **基础篇**:point_down:：\n  - [执行一条 select 语句，期间发生了什么？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Fbase\u002Fhow_select.html)\n  - [MySQL 一行记录是怎么存储的？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Fbase\u002Frow_format.html)\n- **索引篇** :point_down:\n  - [索引常见面试题](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002Findex_interview.html)\n  - [从数据页的角度看 B+ 树](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002Fpage.html)\n  - [为什么 MySQL 采用 B+ 树作为索引？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002Fwhy_index_chose_bpuls_tree.html)\n  - [MySQL 单表不要超过 2000W 行，靠谱吗？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002F2000w.html)\n  - [索引失效有哪些？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002Findex_lose.html)\n  - [MySQL 使用 like“%x“，索引一定会失效吗？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002Findex_issue.html)\n  - [count(\\*) 和 count(1) 有什么区别？哪个性能最好？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Findex\u002Fcount.html)\n- **事务篇** :point_down:\n  - [事务隔离级别是怎么实现的？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Ftransaction\u002Fmvcc.html)\n  - [MySQL 可重复读隔离级别，完全解决幻读了吗？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Ftransaction\u002Fphantom.html) \t\t\n- **锁篇** :point_down:\n  - [MySQL 有哪些锁？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Flock\u002Fmysql_lock.html) \t\n  - [MySQL 是怎么加锁的？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Flock\u002Fhow_to_lock.html) \t\n  - [update 没加索引会锁全表](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Flock\u002Fupdate_index.html) \t\n  - [MySQL 死锁了，怎么办？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Flock\u002Fdeadlock.html) \n  - [字节面试：加了什么锁，导致死锁的？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Flock\u002Fshow_lock.html)\n- **日志篇** :point_down:\n  - [MySQL 日志：undo log、redo log、binlog 有什么用？](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Flog\u002Fhow_update.html)\n- **内存篇** :point_down:\n  - [揭开 Buffer Pool 的面纱](https:\u002F\u002Fxiaolincoding.com\u002Fmysql\u002Fbuffer_pool\u002Fbuffer_pool.html) \t\n\n##  :open_book: 《图解 Redis》\n\n- **面试篇** :point_down:\n   - [Redis 常见面试题](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fbase\u002Fredis_interview.html)\n- **数据类型篇** :point_down:\n   - [Redis 数据类型和应用场景](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fdata_struct\u002Fcommand.html)\n   - [图解 Redis 数据结构](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fdata_struct\u002Fdata_struct.html)\n- **持久化篇** :point_down:\n  - [AOF 持久化是怎么实现的？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fstorage\u002Faof.html) \t\n  - [RDB 快照是怎么实现的？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fstorage\u002Frdb.html) \n- **功能篇**:point_down:\n   - [Redis 过期删除策略和内存淘汰策略有什么区别？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fmodule\u002Fstrategy.html) \n- **高可用篇** :point_down:\n   - [主从复制是怎么实现的？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fcluster\u002Fmaster_slave_replication.html) \t\n   - [为什么要有哨兵？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fcluster\u002Fsentinel.html)\n- **缓存篇** :point_down:\n   - [什么是缓存雪崩、击穿、穿透？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Fcluster\u002Fcache_problem.html) \t\n   - [数据库和缓存如何保证一致性？](https:\u002F\u002Fxiaolincoding.com\u002Fredis\u002Farchitecture\u002Fmysql_redis_consistency.html) \n\n\n## :muscle: 学习心得\n\n- [计算机基础学习路线](https:\u002F\u002Fxiaolincoding.com\u002Fcs_learn\u002F) ：计算机基础学习书籍 + 视频推荐，全面且清晰。\n- [互联网校招心得](https:\u002F\u002Fxiaolincoding.com\u002Freader_nb\u002F) ：小林神仙读者们的校招和学习心得，值得学习。\n\n##  :books:  图解系列 PDF 下载\n\n- [图解网络 + 图解系统 PDF 下载](https:\u002F\u002Fmp.weixin.qq.com\u002Fs\u002F02036z-FMOCLpZ_otwMwBg)\n\n## 勘误及提问\n如果有疑问或者发现错误，可以在相应的 Issues 进行提问或勘误，也可以在[图解计算机基础网站](https:\u002F\u002Fxiaolincoding.com\u002F)对应的文章底部留言。\n\n如果喜欢或者有所启发，欢迎 Star，对作者也是一种鼓励。\n\n\n## 公众号\n\n\n最新的图解文章都在公众号首发，强烈推荐关注！如果你想加入百人技术交流群，扫码下方二维码回复「加群」。\n\n![](https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fxiaolincoder\u002FImageHost3@main\u002F其他\u002F公众号介绍.png)\n\n \n","小林 x 图解计算机基础项目通过1000张图和50万字的内容，旨在以直观易懂的方式解析计算机网络、操作系统、计算机组成原理及数据库等基础知识。该项目采用图文并茂的形式，结合实际案例与常见面试题解析，覆盖了从TCP\u002FIP模型到HTTP协议优化、TCP连接管理等多个主题，使得复杂的技术概念变得易于理解。适合正在学习计算机科学基础知识的学生、准备技术面试的求职者以及希望巩固或扩展相关领域知识的从业者使用。",2,"2026-06-11 03:43:17","high_star"]