自我学习:
一.线程安全日期格式化操作的几种方式:
1.每次new一个新对象:
public static Date parse(String date) throws ParseException {
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(date);
}

2.通过ThreadLocal进行处理
private static final ThreadLocal<DateFormat> LOCAL_DATE_FORMAT = new ThreadLocal<DateFormat>(){
@Override
protected DateFormat initialValue() {
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
}
}

3.java8 通过 DateTimeFormatter 进行处理:
private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime dateTime = LocalDateTime.parse(date, DATE_TIME_FORMATTER);
LOCAL_DATE_FORMAT.get().parse(date);
二.ConcurrentHahsMap ---1.7和1.8区别:
三.AtomicInteger学习
四.Thread.yield();// 将当前线程从 running->runnable 可能无效果,因为进入等待队列,可能瞬间抢到cpu资源
五.计算机存储分类:
寄存器(register)
高速缓冲存储器(cache),即缓存
主存储器(main memory),即内存
快闪存储器(flash memory),即闪存
磁盘存储器(magnetic-disk storage),即硬盘、磁盘
光学存储器(optical storage)
磁带存储器(tape storage)

寄存器:是CPU一部分,离CPU最近,访问数据最快的存储介质,用来做一些最基本的指令和地址看查询。一般先对缓存查询,查询不到查询内存,然后取数据给 CPU,CPU处理完暂时放在寄存器中,再从寄存器存到内存中。
寄存器可以不需要很大容量 但要匹配CPU数据传输速度 ----高性能,高耗电

高速缓冲存储器(缓存):CPU频繁访问的数据 放到缓存中------防止在寄存器中无数据 需要到内存中取。耗时过多。------相比较 从缓存和内存。周期相差50-200周期
缓存使用的 比一般的RAM(Random Access Memory)存取速度更快SRAM(Static Random Access Memory)。RAM一般分为静态RAM(static RAM, SRAM)和动态RAM(dynamic RAM, DRAM)。SRAM的速度虽然比DRAM快,但成本高得多,所以不可能将DRAM全部替换成SRAM。但是为了扩大缓存容量,工程师增加了多个高速动态RAM,将原来的SRAM叫做一级缓存,新增的DRAM叫做二级缓存。CPU访问数据先是在一级缓存中找,找不到再到二级缓存中找,再没有就去内存中找。

主存储器:就是我们常说的(狭义的)“内存”。使用的是DRAM。
它之所以叫动态,是因为将数据写入DRAM后,一段时间过后数据会丢失,需要一个额外的电路不断对其进行刷新操作才行。因为DRAM储存数据利用的是电容中是否有电荷,有代表1,无代表0。但是电容会放电或吸电,刷新操作会对其进行检查。如果电量大于满电量的1/2,则将电充满,否则将电全部放掉
SRAM虽然不需要刷新操作,但是断电后仍会丢失数据。所以RAM都要在有电源时工作。
内存和缓存在广义上整体被称为内存储器(简称内存)或主存储器,而其他外部不依赖电存储数据的设备(如磁盘、光盘等)统称外存储器或辅助存储器。内存是CPU和外部存储设备之间的桥梁,用来存放那些将要被CPU处理的数据,以及与外部设备交换数据。
除了RAM,还有一种内存被称为ROM(Read Only Memory)。ROM的速度要远远慢于RAM,只能读取,不能写入,可在断电后保存数据。ROM一般用来存储一些固定的系统软件或字库,PC的BIOS芯片就是ROM。由于ROM不能改写、不能升级,现在已经很少使用。早期的游戏卡带也是ROM。
需要指出的是,由于ROM断电后可存储数据,很多人将ROM和硬盘混为一谈,实际上两者完全不同。ROM是内存储器,硬盘是外存储器。

快闪存储器即是我们常说的”闪存“。不同于内存,它在电源关闭时(或故障时)数据可保存下来。
它是一种外部存储器,多用于照相机、音乐播放器、手机等设备(如SD卡,Secure Digital Memory Card)。现在的游戏卡一般都是闪存。U盘用的也是快闪技术。另外,快闪存储器也在作为磁盘存储器的替代品越来越多地被使用,即所谓的”固态硬盘(ssd,solid state disk)“。

磁盘存储器:
磁盘存储器就是”磁盘“、”硬盘“或”机械硬盘“。
是长期联机存储数据的主要介质。为了能够访问数据,系统必须将数据从磁盘移到内存。完成处理后,数据要写回磁盘。由于访问磁盘非常耗时,而且频繁操作磁盘也会造成磁盘损伤,所以有了”磁盘缓存“这一设计。
移动硬盘是机械硬盘还是固态硬盘?
都有。固态的移动硬盘一般较贵,容量较小。

光学存储器
光学存储器最流行的形式就是光盘(Compact Disk, CD)。CD一般容量较小,数字视频光盘(Digital Video Disk, DVD)容量较大一些,可以存储任何数字数据。蓝光DVD拥有更高的容量。

磁带存储器
磁带存储器主要用于备份数据和归档数据,个人一般很少用到。
磁带存储器比磁盘便宜,访问数据比磁盘更慢,容量更大。
最快的存储介质,如缓存和内存,被成为基本存储;磁盘被称为辅助存储或联机存储;磁带、光盘等被称为三级存储或脱机存储。

CPU,寄存器,一缓二缓.... RAM ROM 外部存储器等简介的更多相关文章

  1. go语言调度器源代码情景分析之二:CPU寄存器

    本文是<go调度器源代码情景分析>系列 第一章 预备知识的第1小节. 寄存器是CPU内部的存储单元,用于存放从内存读取而来的数据(包括指令)和CPU运算的中间结果,之所以要使用寄存器来临时 ...

  2. 程序如何在RAM ROM运行,内存分配与分区

    关于RAM ROM RAM与ROM就是具体的存储空间,统称为存储器 RAM(random access memory):运行内存,CPU可以直接访问,读写速度非常快,但是不能掉电存储.它又分为: 动态 ...

  3. 8086 CPU 寄存器简介

    转载:http://www.cnblogs.com/BoyXiao/archive/2010/11/20/1882716.html 引子 打算写几篇稍近底层或者说是基础的博文,浅要介绍或者说是回顾一些 ...

  4. [转帖]8086 CPU 寄存器简介

    8086 CPU 寄存器简介 https://www.cnblogs.com/BoyXiao/archive/2010/11/20/1882716.html 哎 没看完 感觉好复杂. 引子 打算写几篇 ...

  5. 三角函数与缓入缓出动画及C#实现(图文讲解)

    日常经常能看到缓入缓出的动画效果,如: 1,带缓入缓出效果的滚动条: 2,带缓入缓出效果的呼吸灯: 像上面这种效果,就是用到了三角函数相关的知识,下面将从头开始一步步去讲解如何实现这种效果. 一.基础 ...

  6. CPU寄存器

    CPU寄存器主要的有 CS:IP这是代码段,主要是执行代码的: SS:SP这是栈段,很多时候数据都要用它, ds:si,这是一个数据段, 还有一个标志寄存器flag,中断的时候要保存它的信息,以便中断 ...

  7. RAM,SRAM,DRAM,SDRAM,DDR RAM,ROM,PROM,EPROM,EEPROM,NAND FLASH,NOR FLASH的区别

    RAM:由字面意思就可以理解,SDRAM SRAM DRAM(下面蓝色字体的这几种)都可以统称RAM,random access memory(随机存取存储器)的缩写,下面是51hei.com为大家整 ...

  8. 2.计算机组成-数字逻辑电路 门电路与半加器 异或运算半加器 全加器组成 全加器结构 反馈电路 振荡器 存储 D T 触发器 循环移位 计数器 寄存器 传输门电路 译码器 晶体管 sram rom 微处理 计算机

    现代计算机的各个部件到底是如何通过逻辑电路构成的呢   半加器 我们说过了门电路 看似简单的三种门电路却是组成了整个逻辑电路的根基 真值表--其实就是根据输入输出状态枚举罗列出来的所有可能 比如有一台 ...

  9. 自己动手写CPU——寄存器堆、数据存储器(基于FPGA与Verilog)

    上一篇写的是基本的设计方案,由于考研复习很忙,不知道下一次什么时候才能打开博客,今天就再写一篇.写一写CPU中涉及到RAM的部件,如寄存器堆.数据存储器等. 大家应该在大一刚接触到计算机的时候就知道R ...

随机推荐

  1. Windows Server2008 R2性能优化方法

    经常使用的是Windows 2008R2企业版的服务器,简单总结一下性能优化的方法 ========================================================== ...

  2. linux下普通用户无法使用sudo命令问题

    今天在新装的linux虚拟机中使用sudo命令时,报错如下 We trust you have received the usual lecture from the local System Adm ...

  3. es6语法快速上手(转载)

    一.相关背景介绍 我们现在大多数人用的语法javascript 其实版本是ecmscript5,也是就es5.这个版本己经很多年了,且完美被各大浏览器所支持.所以很多学js的朋友可以一直分不清楚es5 ...

  4. python安装途中遇到的问题和解决方法

    一.setuptools安装错误:RuntimeError: Compression requires the (missing) zlib module 1. 描述 搞了个腾讯云的服务器,闲在手上没 ...

  5. nyoj 最小公倍数

    最小公倍数 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 为什么1小时有60分钟,而不是100分钟呢?这是历史上的习惯导致. 但也并非纯粹的偶然:60是个优秀的数字 ...

  6. BLE 4.1 和 BLE 4.2

    BLE 4.2 比 BLE4.1 多了一些新的特性. Low-power IP (IPv6/6LoWPAN) Bluetooth Smart Internet Gateways (GATT) http ...

  7. linq to sql 项目移植后,数据库实体类需要重新创建?

    项目中,使用LINQ to SQL 访问数据库,代码移植到其他机器上,每次需要重新生成dbml文件,有无方法只要更改app.config呢? 经过试验是可行的: 1.引用system.configur ...

  8. hdu 6305 RMQ Similar Sequence——概率方面的思路+笛卡尔树

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=6305 看题解,得知: 0~1内随机取实数,取到两个相同的数的概率是0,所以认为 b 序列是一个排列. 两个 ...

  9. 洛谷2014选课(树型dp)

    题目:https://www.luogu.org/problemnew/show/P2014 千万注意遍历 j 和 k 的边界! 0点很好用. siz很好用. #include<iostream ...

  10. 【转】深入理解java异常处理机制

    深入理解java异常处理机制 ; int c; for (int i = 2; i >= -2; i--) { c = b / i; System.out.println("i=&qu ...