
计算机
文章平均质量分 81
sicaujh
这个作者很懒,什么都没留下…
展开
-
为什么要模1000000007
刷力扣时,经常会遇到要模1000000007。转载 2023-02-18 20:26:51 · 283 阅读 · 0 评论 -
位运算符汇总整理
1、按位与 & 规则:如果两个数相应的二进制都为1,则该位的按位与值为1,否则为0(全1为1)。 举例:12&14 12的二进制数是1 1 0 0 14的二进制数是1 1 1 0 12&14的结果为 1 1 0 0 = 12 2、按位或 | 规则:如果两个数相应的二进制只要有一个为1,则该位的按位与值为1,否则为0(有1为1)。 举例:12&14 12的二进制数是1 1 0 0 14的二进制数是1 1 1 0 12&14的结果为 ...原创 2021-12-06 15:21:30 · 1070 阅读 · 0 评论 -
分布式系统GFS
正文 本文是典型分布式系统分析系列的第二篇,关注的是GFS,一个分布式文件存储系统。在前面介绍MapReduce的时候也提到,MapReduce的原始输入文件和最终输出都是存放在GFS上的,GFS保证了数据的可用性与可靠性,那么本文具体看看GFS是怎么做到的。 GFS(Google File System)是Google研发的可伸缩、高可用、高可靠的分布式文件系统,提供了类似POSIX的API,按层级目录来组织文件。在网络上,有很多对该轮文的翻译和解读,尤其是经典论文翻译...转载 2021-10-08 15:03:21 · 306 阅读 · 0 评论 -
Java NIO底层原理
1.1. JavaIO读写原理 无论是Socket的读写还是文件的读写,在Java层面的应用开发或者是linux系统底层开发,都属于输入input和输出output的处理,简称为IO读写。在原理上和处理流程上,都是一致的。区别在于参数的不同。 用户程序进行IO的读写,基本上会用到read&write两大系统调用。可能不同操作系统,名称不完全一样,但是功能是一样的。 先强调一个基础知识:read系统调用,并不是把数据直接从物理设备,读数据到内存。write系统调用,也不是直接把数据,写入到物理.转载 2021-02-14 09:40:57 · 298 阅读 · 1 评论 -
虚拟内存与物理内存的联系与区别
操作系统有虚拟内存与物理内存的概念。在很久以前,还没有虚拟内存概念的时候,程序寻址用的都是物理地址。程序能寻址的范围是有限的,这取决于CPU的地址线条数。比如在32位平台下,寻址的范围是2^32也就是4G。并且这是固定的,如果没有虚拟内存,且每次开启一个进程都给4G的物理内存,就可能会出现很多问题: 因为我的物理内存时有限的,当有多个进程要执行的时候,都要给4G内存,很显然你内存小一点,这很快就分配完了,于是没有得到分配资源的进程就只能等待。当一个进程执行完了以后,再将等待的进程装入内存。这种频繁的装入内转载 2021-02-12 21:13:47 · 235 阅读 · 0 评论 -
计算机内存和磁盘的关系
计算机内存和磁盘的关系 前言 上篇文章详细讲了计算机内存的物理结构,逻辑结构以及在内存的基础上理解几种常见的数据结构。但是,计算机系统出了内存之外,还有一个非常重要的硬件,那就是磁盘。他们都是用于计算机存储,但是内存是利用电流来实现存储,而磁盘是利用磁效应来实现存储,并且,从存储容量来看,内存是高速高价,而磁盘则是低速廉价。在计算机这个系统中,高速小容量的内存与低速高容量的磁盘进行协同作业。本文详解内存与磁盘之间的那些事儿。 一、首先要明确一个前提 我们知道计算机是利用CPU进行数据的运算的,但C.转载 2021-02-12 21:10:43 · 676 阅读 · 0 评论