操作系统学习
6.cs081os学习 感谢: 参考资料: https://www.geeksforgeeks.org/pipe-system-call/ 很好的文章: https://swtch.com/~rsc/thread/ 同步机制:https://zybtree.github.io/2020/08/12/%E5%90%8C%E6%AD%A5%E6%9C%BA%E5%88%B6/ 参考答案: https://github.com/relaxcn/xv6-labs-2022-solutions/blob/main/doc/utils.md 学习链接: https://pdos.csail.mit.edu/6.828/2021/schedule.html 直接从进程与线程入手 进程与线程单独的CPU变换成多个虚拟的CPU 进程当网页请求进入的时候 先查看 网页是否在缓存中 如果不是启动一个磁盘请求用来获取网页 磁盘请求会花费很多时间 等待的过程中会有更多的请求进入每个进程有它自己的虚拟的CPU 真正的CPU在进程之间来回切换需要一些方法例如多个磁盘 模拟控制并发...
20岁生日
生活的意义就是在于享受每一天,有开心,有难过,有惊喜! 享受它,生活就是这样!有了博客可以让时间更具象化,留住每一刻,想看的时候翻一翻 感受真的不一样! 本来不想过生日的,但还是被寝室的兄弟们发现了哈哈哈哈好开心呢上大学的两年都收到了寝室5个兄弟给我送的蛋糕感谢你们啦,尽管离开了家还是有人陪你过生日,非常开心,还是你们陪我走完大学四年上高中的时候也没怎么正经过过生日,到了大学是你们让我的今天变得过呢更有意义,尽管在生活中有磕碰,但那是难以避免的!希望你们每个人以后路越来越好 也是收到家里人的好多红包啊哈哈啊哈好开心! 感谢家人时刻牵挂着我! 2023年的今天 2024年的今天 每年的生日许愿都是很广泛的 我姐说那是没有意义的哈哈哈一定要为自己许个愿望在新的一年实现它! 小彩蛋 11.16日
7_days_golang学习
通过学习项目 7_days_golang搭建各种自己的框架了解一些网络工作原理和知识学习geektutu源代码:https://github.com/geektutu/7days-golang 跟着学习的项目代码已经放在: https://github.com/Whuichenggong/Study_Go 1.gee.go关键代码 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253package geeimport ( "fmt" "net/http")//首先定义了类型HandlerFunc,这是提供给框架用户的,用来定义路由映射的处理方法type HandlerFunc func(http.ResponseWriter, *http.Request)// 在Engine中,添加了一张路由映射表router// key...
计算机网络持续学习中~
记录一下自己在黑皮书中的学习记录下有用的部分 非常好的学习HTTP RESTFUL API 链接链接1: https://www.ruanyifeng.com/blog/2018/10/restful-api-best-practices.html 链接2: https://www.ruanyifeng.com/blog/2016/08/http.html 链接3: https://florimond.dev/en/posts/2018/08/restful-api-design-13-best-practices-to-make-your-users-happy应用层2.1应用层协议原理:Web应用程序中两个互相通讯的不同程序: 运行在用户主机上浏览器程序 运行在Web服务器主机上 网络上的核心设备并不在应用层起作用, 这将应用软件限制在了端系统,这促进了大量网络应用程序的迅速研发与部署 2.1.1网络应用程序体系结构应用层的体系结构 明显...
青训营直播总结
听了前端文杰老哥分享 总结:计算机基础很重要必须要持续学习: 例如:计算机原理,操作系统等,在工作中有些人问题你需要定位到它的问题出在了那里,这个问题的对应着是哪个方面的问题学习ai提示词,提高学习效率,练好基本功,多写代码,多用大模型 前期多学习如何编码而不是太多关于工程化的问题 建议:解决问题:事实是,就业环境中大概率没人把你当学生般保护着,别人没有义务要解决你的问题(不合理,不科学),请务必提升自己解决问题的能力。 学习:工作中,很难找到手把手教你做事的团队,多数时候都是靠自学,没有课本,没有老师,没有标准答案,全凭自己,所以务必提升独立学习能力; 二极化:世界不是非黑即白,代码也是,职业也是,接受、包容多样性吧,多从不同角度思考问题,从不同渠道了解解决问题的方法,学会更体系化地思考; LLM:非常值得花很多时间学习,用好这个工具,提升你个人效率;但它不是魔法,不要幻想着学会了就能怎么这么样; (目前只停留在问题的复制粘贴 效率很低)
Go语言进阶
字节青训营学习一.入门篇学习实战篇: 1.猜数字游戏运用 1234567891011121314151617181920212223242526”math/rand“maxNum := 100调用 Intn(maxNum)//注意这并不能使每一次都用都产生不同的值需要加 时间戳 才能每次产生不同的值应该是:maxNum := 100ran.Seed(time.Now().UnixNano())然后调用 ran.Intn(maxNum) 用 "bufio" 这个特别的包以后可以用到 这里读取一行输入用的是 reader := bufo.NewReader(os.Stdin)//调用这个可以更加灵活 input, err := reader.ReadString('\n') if err != nil{...} input = strings.TrimSuffix(intput,"\n")//去掉换行符 guess,err := strconv.Atoi(input)//转换成数字 菜值逻辑...
后端项目学习
重新开启simplebank学习!!!一.创建数据库表https://dbdiagram.io 可视化数据库工具 1.创建账户表1234567Table accounts as A { //A作为account的别名 id bigserisal [pk] //pk作为主键 自增的id列 owner varchar balance bigint currency varchar created_at timestamp [default: `now()`] //自动获取时间} 2.创建条目表//记录账户余额的变化 123456Table entries { id bigint [pk] // account_id bigint [ref : > A.id] //外键 账户和条目之间是1对多关系 amount bigint [not null note:`可以是负或者正`] //正负取决于取出还是存入 note是添加注释 created_at timestamp [default: `now()`]...
数据结构的实现
双链表的实现基于go语言实现12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485package mainimport "fmt"// Node 定义双链表节点type Node struct { data interface{} prev *Node next *Node}// DoublyLinkedList 定义双链表type DoublyLinkedList struct { head *Node tail *Node size int}// InsertTail 向链表尾部插入节点func (dll *DoublyLinkedList) InsertTail(data...
leet-code之旅
正式开启刷leet-code第225.用两个队列实现栈问题: 请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。 实现 MyStack 类: void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回栈顶元素。int top() 返回栈顶元素。boolean empty() 如果栈是空的,返回 true ;否则,返回 false 。 我的代码:12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849type MyStack struct { list1 := list.New() list2 := list.New()}func Constructor() MyStack { MyStack.Push(x) MyStack.Push(x) MyStack.Push(x) ...
字节关于框架学习
字节内部课程学习一.走进RPC框架1.基本概念本地函数调用 压栈弹出 RPC调用 网上购物 {(付款操作) 远程调用 中间隔着网路 不能用函数指针了 是两个进程 机器id找到函数运行 解决问题 1. 函数映射 数据转换成字节流 (客户端转换成字节流 传送给 服务端) 网络传输(高效稳定传输数据) } 过程:User本地调用 打包参数 -》 RPC -》 对端-》解压-》调用真正业务逻辑 然后在返回 整个流程 IDL文件(接口描述文件) Caller(调用段)和 生成代码 -》 encoder编码 -》字节流 -》打包传送给对端 好处 2.编解码层: 编解码层: 二进制编码 左侧是IDL中写的统一的 -》字节流 有额外的内存开销 多路复用:同一个链接内 可以有多个请求流通过 协议解析: 4.网络通信层: SCOEKT API (ip+端口) 一端关闭套接字 如果另一端如果尝试去读 可能就会返回(End Of File)也就是 EOF 在项目中我好像遇到过这个问题...