bc's club

bc's club

操作系统
发表于2023-05-05
一、并发 1 协程、线程、进程 2 进程调度算法 3 阻塞IO、非阻塞IO、多路复用IO。 4 select、poll、epoll 5 进程间通信方式 6 死锁的必要条件 7 进程状态 8 用户态和内核态 二、内存 1 页面置换算法 2 栈上分配内存快还是堆上分配内存快 3 内存分段分页 一、并发#1 协程、线程、进程# 进程是资源分配和拥有的基本单位。运行一个可执行程序会创建一个或多个进程,进程就是运行起来的可执行程序 线程是程序执行的基本单位,是轻量级的进程。每个进程都有唯一的主线程,且只能有一个,主线程和进程是相互依存的关系,主线程结束进程也会结束。 协程是用户态的轻量级线程,是线程内部调度的基本单位。 2 进程调度算法# 先到先服务:FCFS 短作业优先 最短剩余时间优先 时间片轮转 所有进程按到达时间排队,每次分配一个时间片给队首进程,执行完放到队尾。 时间片太小,会导致进程切换得太频繁,在进程切换上就会花过多时间。 时间片太长,实时性不能得到保证 优先级调度 每个进程分配一个优先级,按优先级进行调度。 为了防止饿死,随着时间的推移增加...
设计模式
发表于2023-04-23
设计模式 设计模式简介&分类 各个设计模式解决什么问题 简单工程模式 工厂方法模式 抽象工厂模式 建造者模式 原型模式 单例模式 适配器模式 桥接模式 组合模式 装饰器模式 外观模式 享元模式 代理模式 设计模式#设计模式简介&分类#设计模式是软件开发中常用的一种设计思想,用于解决特定的问题。根据设计模式的分类方式不同,可以有不同的模式数量。 按照常用的分类方式,设计模式可以分为三类: 创建型模式(Creational Patterns):用于创建对象的模式,包括简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式和单例模式等。 结构型模式(Structural Patterns):用于描述如何组合类和对象以形成更大的结构,包括适配器模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式和代理模式等。 行为型模式(Behavioral Patterns):用于描述对象之间的通信方式和职责划分,包括责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式和访问者模式等。...
Golang实现经典数据结构
发表于2023-03-13
avl树 LRU 红黑树 avl树#123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150package mainimport "fmt"type Node struct { key, height int left, right *Node}func height(node *Node) int &#...
Zookeeper常用指南
发表于2023-03-07
ZK简介 zkCli ZK简介#Zookeeper是一个分布式的开源协调服务,可以用于在分布式系统中管理和协调大规模的计算机集群。它提供了一个简单的文件系统接口,可以用于协调分布式应用程序的各个组件,如配置管理、命名服务、集群管理等。 Zookeeper的主要特点是可靠性、高性能、可扩展性和简单性。它通过ZAB协议实现分布式一致性,可以保证在分布式系统中各个节点之间的数据一致性。Zookeeper还可以通过扩展机制来支持自定义协议和功能,使其具有更广泛的适用性。 zkCli# ls:列出指定路径下的子节点列表,命令格式为ls path。 create:创建一个新的znode节点,命令格式为create [-s] path data。其中,-s参数表示创建一个序列化的节点。 delete:删除指定的znode节点,命令格式为delete path [version]。version表示指定删除哪个版本的节点,如果不指定则删除最新版本。 get:获取指定节点的数据内容,命令格式为get path。 set:设置指定节点的数据内容,命令格式为set path dat...
Golang GMP简介
发表于2022-03-02
Goroutine Channel Mutex Package 当我们需要处理大规模数据并发任务时,Golang 是一个不错的选择。Golang 在标准库中提供了一种称为 GMP(Goroutine、Channel、Mutex、Package)的并发编程模型,是 Golang 强大的并发编程能力的核心。本文将为您介绍 Golang 中的 GMP 并发编程模型。 Goroutine#Goroutine 是 Golang 中的轻量级线程,由 Go 运行时(Go runtime)管理。Goroutine 能够并发执行,通过 go 关键字来创建。Goroutine 的启动和销毁开销很小,可以轻松地创建大量的 Goroutine。 以下是一个使用 Goroutine 的例子: 123456789101112131415161718package mainimport ( "fmt" "time")func say(s string) { for i := 0; i < 5; i++ { time.Sle...
hexo使用指南
发表于2022-02-14
Hexo 日常使用指南 简介 安装 Hexo 创建文章 生成静态文件 启动本地服务器 部署博客 清除缓存 安装主题 使用插件 总结 Hexo 日常使用指南#简介#Hexo 是一个快速、简洁且高效的基于 Node.js 的静态博客框架,使用 Hexo,您可以使用 Markdown 等轻量级语言来撰写博客文章,并将其转换为静态页面进行展示,而不需要像传统博客系统那样依赖于数据库和服务器。Hexo 具有快速、简洁、高效等特点,非常适合个人博客、技术博客和文学博客等多种用途。 安装 Hexo#要使用 Hexo,您需要先安装 Node.js 和 Git,然后使用 npm(Node.js 包管理器)来安装 Hexo。以下是安装步骤: 安装 Node.js:在 Node.js 官方网站下载并安装 Node.js。 安装 Git:在 Git 官方网站下载并安装 Git。 安装 Hexo:在命令行中执行以下命令安装 Hexo: 1$ npm install hexo-cli -g 初始化 Hexo:在命令行中执行以下命令初始化 Hexo: 123$ hexo init...
123
avatar
bicheng
文章
26
标签
3
分类
1
Follow Me
公告
This is my Blog
最新文章
计算机网络:自顶向下方法 - Day 15 | 全书总结与面试题精选(收官篇)2026-06-15
计算机网络:自顶向下方法 - Day 14 | 网络安全2026-06-15
计算机网络:自顶向下方法 - Day 13 | 多媒体网络、流媒体、CDN 与 QoS2026-06-15
计算机网络:自顶向下方法 - Day 12 | 无线网络与移动网络2026-06-15
计算机网络:自顶向下方法 - Day 11 | 链路层与以太网2026-06-15
分类
  • 计算机网络15
标签
计算机网络 自顶向下方法 读书笔记
归档
  • 六月 2026 15
  • 五月 2023 6
  • 四月 2023 1
  • 三月 2023 2
  • 三月 2022 1
  • 二月 2022 1
网站信息
文章数目 :
26
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By bicheng框架 Hexo 5.4.0|主题 Butterfly 5.7.0