OPS
文章平均质量分 92
K. Bob
多读书,多睡觉;少吃零食,多运动。
展开
-
PageCache
目录buffers和cached的区别:操作系统层提供了page cache,为什么还要在应用层加缓存? page cache是针对文件系统的文件的缓存,在文件层面上的数据会缓存到page cache。文件的逻辑层需要映射到实际的物理磁盘,这种映射关系由文件系统来完成。当page cache的数据需要刷新时,page cache中的数据交给buffer cache来完成。 那么,buffer cache是对磁盘块的缓存,也就是在没有文件系统的情况下,直接对磁盘进行操作的数据会缓存到buffer ca原创 2021-09-04 15:12:03 · 507 阅读 · 0 评论 -
select、poll、epoll
select(1)使用copy_from_user从用户空间拷贝fd_set到内核空间(2)注册回调函数__pollwait(3)遍历所有fd,调用其对应的poll方法(对于socket,这个poll方法是sock_poll,sock_poll根据情况会调用到tcp_poll,udp_poll或者datagram_poll)(4)以tcp_poll为例,其核心实现就是__pollwait...原创 2020-04-29 19:13:17 · 902 阅读 · 0 评论 -
OPS and So on.
目录malloc是如何分配内存Linux下发信号用命令行怎么实现malloc是如何分配内存 malloc分配内存空间实际上并不是我们想的直接到内核中拿一块内存过来用。也不一定访问内核空间。malloc是在userspace的C库函数,它的工作基本在userspace中完成。它只是向glibc请求内存空间(虚拟地址空间),相当于glibc帮助进程来管理已经分配的内存地址空间。即glibc持有一定量的属于进程的内存地址空间(注意不是实际的物理内存空间)。主要是初始分配或者通过brk和sbrk或者mmap向原创 2021-03-13 19:59:39 · 293 阅读 · 0 评论 -
共享内存
共享内存允许两个不相关的进程访问同一个逻辑内存,共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一段物理内存连接到自己的地址空间中,所有的进程都可以访问共享内存中的地址。如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内存的任何其他进程。 共享内存并未提供同步机制,即在第一个进程结束对共享内存的写操作之前,并无自动机制可以阻止第二个进程开始对它进行读取,所以通常需要用其他的机制来同步对共享内存的访问,原创 2020-09-14 20:10:46 · 744 阅读 · 0 评论 -
虚拟内存和物理内存
操作系统有虚拟内存与物理内存的概念。在还没有虚拟内存概念的时候,程序寻址用的都是物理地址。程序能寻址的范围是有限的,这取决于CPU的地址线条数。比如在32位平台下,寻址的范围是2^32(即4G)并且这是固定的,如果没有虚拟内存,且每次开启一个进程都给4G的物理内存,就可能会出现很多问题:因为物理内存是有限的,当有多个进程要执行的时候,都要给4G内存,很显然内存小一点,很快就分配完了,于是没...原创 2020-05-03 21:44:07 · 360 阅读 · 0 评论 -
页面置换算法
FIFO FIFO先进先出页面置换算法:置换出当前已经待在内存里时间最长的那个页。FIFO算法实现 通过维护一个链表结构去存储当前调入的页面;将最先进入的页面维护在链表的最前,最后进入的页面维护在链表的最后;这样,当发生缺页中断时,需要进行置换的时候,淘汰表头的页面并将新调入的页面加到链表的尾部;除了链表以外还可以采用数组或者队列等来进行实现。FIFO算法特点FIFO算法实现简单,易于理解易于编程FIFO算法可能会出现Belady现象。也就是在FIFO算法中,如果未分配够一个进程所要求的页原创 2020-09-28 20:19:28 · 421 阅读 · 0 评论 -
进程的用户栈和内核栈
登录界面前言实现过程三次登录不成功输入验证码账号密码验证二次加密三天内自动登录邮箱及其他登录前言登录界面实现了以下功能:1)三次登录不成功输入验证码2)账号密码验证二次加密3)三天内自动登录4)邮箱及其他登录实现效果:图一为正常登陆;图二为输入验证码登陆实现过程<div class="login-box business-login"> <d...原创 2019-08-06 16:20:00 · 2091 阅读 · 0 评论 -
操作系统内存管理 页式、段式、段页式存储
Hadoop学习过程中的小结Hadoop概念HDFSMapReduce(分而治之)RPC框架Hadoop概念Hadoop是一个开源的、分布式存储和分布式计算平台,Hadoop的组成包括两个核心部分: HDFS:分布式文件系统,存储海量的数据 MapReduce:并行处理框架,实现任务分解和调度HDFS【1】HDFS基本概念 HDFS是通过分布式集群来存储文件,为客户端提供一个虚...原创 2019-04-19 21:31:01 · 3743 阅读 · 0 评论