Type Boom - 笔记本
type: channel
link: https://www.typeboom.com/tag/%E7%AC%94%E8%AE%B0%E6%9C%AC/
items: U盘格式设置什么好？
items: 新笔记本到货必看的几大注意事项
items: 电脑键盘工作原理 ﻿﻿
items: 内存工作原理
items: SSD固态硬盘的结构和基本工作原理概述

U盘格式设置什么好？
type: item
date: 2020-12-05T18:21:00+08:00
description: 目前硬盘主流的格式有 Fat32、NTFS、exFat 这几种，而更早的 Fat16 则是“上古时代”的产物已淘汰多年。Fat32 格式支持最大 4TB 硬盘，但是存储的单个文件不能超过 4GB，分区大小不能超过 32GB；而 NTFS 则没有这个限制，单个文件可以超过 4GB，分区最大支持 2TB。exFat 则是一种较新的格式，单个文件和支持的硬盘容量理论值都到了 16EB。有人在使用移动固态硬盘时，会发现设备不识别，这种情况就有可能是移动固态硬盘的格式不对。例如 PS4 只支持 Fat32, exFat，且容量要大于 320G，否则移动固态硬盘插上去会识别不了；XBOX360 则只支持 FAT32 格式，而且电影格式支持最好的是 WMV 格式；Nintendo Switch 在优（pò）化（jiě）后可以接移动固态硬盘，支持 exFat 格式；苹果台式/笔记本电脑能读取 HFS+ 以及 FAT32 / exFAT，HFS+ 是苹果电脑专用的格式（垄断就是不一样），Windows 平台下无法识别这种格式；Windows 平台的电脑可以识别 Fat32、NTFS、exFat 等硬盘格式；Linux 系统目前则支持几乎所有的 Unix 类的文件系统，除了我们在安装 Linux 操作系统时所要选择的 ext3、reiserfs 和 ext2 外，还支持苹果 Mac OS 的 HFS+，也支持其它Unix 操作系统的文件系统，比如 XFS、JFS、Minix FS 及UFS等，也支持Windows文件系统 NTFS 和 Fat32。从上可以看出，exFat格式的通用性更高，所以移动固态硬盘格式化成 exFat 适配的设备会更多。但是exFAT就真的无敌了吗？根据市场调查机构NetMarketShare提供的数据在2014年4月份Windows XP的系统占比为26.29%，在2014年10月份系统占比从23.87%下降到17.18%，随后又有阶段性的起伏，最终系统占比不断下降，截止2016年3月份，Windows XP的系统占比为10.9%。尽管从上面数据来看Windows XP在最近两年呈现了很大的萎缩，但是XP在桌面系统的占比依然比OS X版本和Linux系统要多。然而，XP对exFAT有奇奇怪怪的兼容性问题，经常无法识别而你望向了明天就要去提交资料的公司那清一色的XP......下面是ReFS、exFAT、NTFS、FAT32分区的比较可以看出ReFS最好，但是这玩意不能用到U盘或者移动硬盘上，再者就是NTFS了，完美兼容XP，虽然它是“日志式”文件系统，有大量的读写，但是这都0202年了，你的U盘还顶不住吗？？？？(新主题对markdown表格的支持依旧拉跨）

新笔记本到货必看的几大注意事项
type: item
date: 2020-10-03T20:43:00+08:00
description: 1>先观察先观察一下笔记本是否未拆封，封条是否有被撕开或者被改动的痕迹，还需要留意一下笔记本包装底部是否被拆开过。在笔记本的侧面的标签纸上可以查看笔记本型号，大致配置，是否与你要的型号与配置一致，还看看出厂日期，如果超过一年可能是库存的原因。2>先不插电，按下电源键，如果不能开机就代表正常，如果能开机就代表你这是二手虽然笔记本电池里面有电，甚至满电，但是厂家为了防止二手当全新，故意做成这样3>检查笔记本外观认真检查笔记本外壳是否有划伤、掉漆的现象，并确保外壳完好无损，毕竟无论在实体还是网上购买笔记本都是需要运输的可能。（我这台G5-5590到手的时候连包装都没有一点划痕）4>检查A，D面对机身底部脚垫、锁孔、电池的金手指是否有划痕重点检查，是否是样机，明显可以看出。我们还可以检查下笔记本背面风扇散热口是否有灰尘，底部螺丝是否有拧过痕迹。5>开机先不要联网，到了连 WiFi 这一步注意要点跳过进入系统后检查序列号是否一致我们检查笔记本机身序列号与包装盒上序列号，甚至是BiOS中的序列号（(使用“AIDA64软件” -> 计算机 -> 系统概述 -> DMI -> 主板序列号)、Windows系统 -> 关于 -> 序列号），要完全一致才行，如果是序列号完全一致，那么笔记本货源是没有问题的，如果有一个不一致，说明肯定是有问题的，这种笔记本万一不能要，唯一解决这个问题就是重新更换一台笔记本。6>笔记本屏幕检测使用DisplayX软件来检测屏幕是否存在坏点、亮点、漏光严重的问题，我们使用DisplayX工具来显示黑、红、绿、蓝、黄、白、黑等几种颜色，仔细观察即可。 我们打开DisplayX软件，我们点击“常规单项测试”--“纯色”，最容易识别“亮点”与坏点。7>确认硬件正确无误8>联网联网后windows会自动激活（此时你就失去7天无理由了，保修正式开始）9>等待此时电脑正在疯狂打驱动，给它30分钟，期间风扇可能会狂转，整个电脑特别卡10>enjoy

电脑键盘工作原理 ﻿﻿
type: item
date: 2020-10-03T20:14:00+08:00
description: 随着IBM PC机的发展，键盘也分为XT, AT, PS/2键盘以至于后来的USB键盘. PC系列机使用的键盘有83键、84键、101键、102键和104键等多种。XT和AT机的标准键盘分别为83键和84键，而286机以上微机的键盘则 普遍使用101键、102键或104键。83键键盘是最早使用的一种PC机键盘，其键号与扫描码是一致的。这个扫描码被直接发送到主机箱并转换为 ASCII码；随着高档PC机的出现，键盘功能和按键数目得到了扩充，键盘排列也发生了变化，产生的扫描码与83键键盘的扫描码不同。为了保持PC系列微 机的向上兼容性，需将84/101/102/104键键盘的扫描码转换为83键键盘的扫描码，一般将前者叫作行列位置扫描码，而将后者称为系统扫描码。显 然，对于83键键盘，这两种扫描码是相同的。键盘是由一组排列成矩阵方式的按键开关组成，通常有编码键盘和非编码键盘两种类型，IBM系列个人微型计算机的键盘属于非编码类型。微机键盘主要由单片 机、译码器和键开关矩阵三大部分组成。其中单片机采用了INTEL8048单片微处理器控制，这是一个40引脚的芯片，内部集成了8位 CPU、1024×8位的ROM、64×8位的RAM、8位的定时器／计数器等器件。由于键盘排列成矩阵格式，被按键的识别和行列位置扫描码的产生，是由 键盘内部的单片机通过译码器来实现的。单片机在周期性扫描行、列的同时，读回扫描信号线结果，判断是否有键按下，并计算按键的位置以获得扫描码。当有键按 下时，键盘分两次将位置扫描码发送到键盘接口；按下一次，叫接通扫描码；释放时再发一次，叫断开扫描码。因此可以用硬件或软件的方法对键盘的行、列分别进 行扫视，去查找按下的键，输出扫描位置码，通过查表转换为ASCII码返回。键盘是与主机箱分开的一个独立装置，通过一根5芯电缆与主机箱连接，系统主板上的键盘接口按照键盘代码串行传送的应答约定，接受键盘发送来的扫描码；键盘 在扫描过程中，7位计数器循环计数。当高5位(D6一D2)状态为全“0”时，经译码器在O列线上输出一个“0”,其余均为“1”；而计数器的低二位 (D1D0)通过4选1多路选择器控制0—3行的扫描。计数器计一个数则扫描一行，计4个数全部行线扫描一遍，同时由计数器内部向D2进位，使另一列线1 变低，行线再扫描一遍。只要没有键按下，多路选择器就一直输出高电平，则时钟一直使计数器循环计数，对键盘轮番扫描。当有一个键被按下时，若扫描到该键所 在的行和列时，多路选择器就会输出一个低电平，去封锁时钟门，使计数器停止计数。这时计数器输出的数据就是被按键的位置码(即扫描码)。8048利用程序 读取这个键码后，在最高位添上一个“O”，组成一个字节的数据，然后从P22引脚以串行方式输出。在8048检测到键按下后，还要继续对键盘扫描检测，以 发现该键是否释放。当检测到释放时，8048在刚才读出的7位位置码的前面(最高位)加上一个“1”，作为“释放扫描码”，也从 P22引脚串行送出去，以便和“按下扫描码”相区别。送出“释放扫描码”的目的是为识别组合键和上、下档键提供条件。同时，主机还向键盘发送控制信号，主机CPU响应键盘中断请求时，通过外围接口芯片8255A一5的PA口读取键盘扫描码并进行相应转换处理和暂存；通过PB口的PB6和PB7来控制键盘接口工作。从用途上看，键盘可分为台式机键盘、笔记本电脑键盘和工控机键盘三大类；其中台式机键盘从按键结构上又可分为两类，即机械键盘和电容键盘（又称有触点键盘 和无触点键盘）。机械键盘存在着开关容易损坏、易污染、易老化的缺点，现已基本淘汰。电容键盘在可靠性上比前者有质的飞跃，使用寿命较长，目前大多为电容 键盘。早期的键盘是由美国IBM公司推出的，当时采用的计算机键盘为83键键盘。不久IBM又推出了84键的键盘设计标准，将键盘分为三个区，即功能区、打字键 区及负责光标控制和编辑的副键盘区，这种键盘主要区域的划分标准一直沿用至今。随着微软Windows视窗操作系统的广泛应用，IBM公司于1986年首 次推出了101键的标准键盘，除添加了F11、F12两个功能键之外，还在键盘的中部多加了一组专用的光标控制和编辑的键，使键盘功能得到了进一步扩充， 成为当时业界的标准键盘。后来，为与微软的Win95操作系统相配合，IBM又推出了104键键盘，新增了3个功能键（亦称Windows快捷键或热键 ），使以前需要打开好几个窗口才能完成的某些功能，通过快捷键的设定直接启动菜单完成，而不必再点击鼠标，这样就使计算机的 操作更加便易。目前，这种104键的键盘（亦称Win95键盘）的设计已成为业界和市场上最为普遍、最为流行的一种标准，业界通称为标准键盘。实际上，所 谓的标准键盘并没有标准，只因其应用较为广泛而被业界通称为标准键盘。由于软件的…

内存工作原理
type: item
date: 2020-10-03T19:58:00+08:00
description: 内存内存主要用来存储系统和应用程序的指令、数据、缓存等。内存映射通常所说的内存容量，比如笔记本电脑的8GB内存，其实指的是物理内存。物理内存也称为主存，大多数计算机用的主存都是动态随机访问内存（DRAM）。只有内核才可以直接访问物理内存。Linux 内核给每个进程都提供了一个独立的虚拟地址空间，并且这个地址空间是连续的。这样，进程就可以很方便地访问内存，更确切地说是访问虚拟内存。虚拟地址空间的内部又被分为内核空间和用户空间两部分，不同字长（也就是单个CPU指令可以处理数据的最大长度）的处理器，地址空间的范围也不同。比如最常见的 32 位和 64 位系统，它们的虚拟地址空间，如下所示：通过这里可以看出，32位系统的内核空间占用 1G，位于最高处，剩下的3G是用户空间。而 64 位系统的内核空间和用户空间都是 128T，分别占据整个内存空间的最高和最低处，剩下的中间部分是未定义的。进程在用户态时，只能访问用户空间内存；只有进入内核态后，才可以访问内核空间内存。虽然每个进程的地址空间都包含了内核空间，但这些内核空间，其实关联的都是相同的物理内存。这样，进程切换到内核态后，就可以很方便地访问内核空间内存。既然每个进程都有一个这么大的地址空间，那么所有进程的虚拟内存加起来，自然要比实际的物理内存大得多。所以，并不是所有的虚拟内存都会分配物理内存，只有那些实际使用的虚拟内存才分配物理内存，并且分配后的物理内存，是通过内存映射来管理的。内存映射，其实就是将虚拟内存地址映射到物理内存地址。为了完成内存映射，内核为每个进程都维护了一张页表，记录虚拟地址与物理地址的映射关系，如下图所示：页表实际上存储在 CPU 的内存管理单元 MMU中，这样，正常情况下，处理器就可以直接通过硬件，找出要访问的内存。而当进程访问的虚拟地址在页表中查不到时，系统会产生一个缺页异常，进入内核空间分配物理内存、更新进程页表，最后再返回用户空间，恢复进程的运行。另外，TLB（Translation Lookaside Buffer，转译后备缓冲器）会影响 CPU 的内存访问性能，TLB 其实就是 MMU 中页表的高速缓存。由于进程的虚拟地址空间是独立的，而 TLB 的访问速度又比 MMU 快得多，所以，通过减少进程的上下文切换，减少TLB的刷新次数，就可以提高TLB 缓存的使用率，进而提高CPU的内存访问性能。不过要注意，MMU 并不以字节为单位来管理内存，而是规定了一个内存映射的最小单位，也就是页，通常是 4 KB大小。这样，每一次内存映射，都需要关联 4 KB 或者 4KB 整数倍的内存空间。页的大小只有4 KB ，导致的另一个问题就是，整个页表会变得非常大。比方说，仅 32 位系统就需要 100 多万个页表项（4GB/4KB），才可以实现整个地址空间的映射。为了解决页表项过多的问题，Linux 提供了两种机制，也就是多级页表和大页（HugePage）。多级页表就是把内存分成区块来管理，将原来的映射关系改成区块索引和区块内的偏移。由于虚拟内存空间通常只用了很少一部分，那么，多级页表就只保存这些使用中的区块，这样就可以大大地减少页表的项数。Linux用的正是四级页表来管理内存页，如下图所示，虚拟地址被分为5个部分，前4个表项用于选择页，而最后一个索引表示页内偏移。大页，就是比普通页更大的内存块，常见的大小有 2MB 和 1GB。大页通常用在使用大量内存的进程上，比如 Oracle、DPDK等。通过这些机制，在页表的映射下，进程就可以通过虚拟地址来访问物理内存了。虚拟内存空间分布最上方的内核空间不用多讲，下方的用户空间内存，其实又被分成了多个不同的段。以32 位系统为例，如下图：通过这张图可以看到，用户空间内存，从低到高分别是五种不同的内存段。只读段，包括代码和常量等。数据段，包括全局变量等。堆，包括动态分配的内存，从低地址开始向上增长。文件映射段，包括动态库、共享内存等，从高地址开始向下增长。栈，包括局部变量和函数调用的上下文等。栈的大小是固定的，一般是 8 MB。在这五个内存段中，堆和文件映射段的内存是动态分配的。比如说，使用 C 标准库的 malloc() 或者 mmap() ，就可以分别在堆和文件映射段动态分配内存。其实64位系统的内存分布也类似，只不过内存空间要大得多。内存分配与回收malloc() 是 C 标准库提供的内存分配函数，对应到系统调用上，有两种实现方式，即 brk() 和 mmap()。对小块内存（小于128K），C 标准库使用 brk()来分配，也就是通过移动堆顶的位置来分配内存。这些内存释放后并不会立刻归还系统，而是被缓存起来，这样就可以重复使用。而大块内存（大于128K），则直接使用内存映射 mmap() 来分配，也就是在文件映射段找一块空闲…

SSD固态硬盘的结构和基本工作原理概述
type: item
date: 2020-10-03T11:19:00+08:00
description: 我们都知道，早期的电脑CPU是可以直接从硬盘上面读取数据进行处理的，随着科技的进步，时代的发展，计算机硬件的发展速度也是极其迅猛。CPU主频的不断提升，从单核到双核，再到多核；CPU的处理速度越来越快，而硬盘的的读写速度已经远远跟不上CPU的读写速度，后来增加了内存这个读写速度相对较快的缓存，而内存也是蓬勃到发展，从SDRAM到DDR，从DDR到DDR2再到DDR3，但是无论怎样，内存缓存速度还是跟不上CPU的运算处理速度，后来便在CPU中增加了快速缓存机制！而硬盘这个持久化存储器呢？之前的文章，聊到了机械硬盘的结构和工作原理，今天就来聊一聊SSD固态硬盘的结构和基本工作原理，如理解有所变差，或文章有所不足，皆因水平所限！硬盘的发展在不断的科技进步中快速提升，从容量以及速度再到接口方面。从早期的PATA变成SATA，SCSI变到SAS，以及垂直记录技术在容量上的突破，但这些进步亦未能改变磁盘的记录方式。随着人们对数据需求增多，存储系统的瓶颈越来越明显。而在嵌入式领域移动设备和工业自动化控制等恶劣环境下，传统硬盘机械结构已经无法满足要求，而所有这一切随着固态存储(SSD)的到来而发生了改变。传统的机械硬盘(HDD)运行主要是靠机械驱动头，包括马达、盘片、磁头摇臂等必需的机械部件，它必须在快速旋转的磁盘上移动至访问位置，至少95%的时间都消耗在机械部件的动作上。SSD却不同机械构造，无需移动的部件，主要由主控与闪存芯片组成的SSD可以以更快速度和准确性访问驱动器到任何位置。传统机械硬盘必须得依靠主轴主机、磁头和磁头臂来找到位置，而SSD用集成的电路代替了物理旋转磁盘，访问数据的时间及延迟远远超过了机械硬盘。SSD有如此的“神速”，完全得益于内部的组成部件：主控--闪存--固件算法。主控、闪存及固件算法三者的关系：SSD最重要的三个组件就是NAND闪存，控制器及固件。NAND闪存负责重要的存储任务，控制器和固件需要协作来完成复杂且同样重要的任务，即管理数据存储、维护SSD性能和使用寿命等。主控：控制器是一种嵌入式微芯片(如电脑中CPU)，其功能就像命令中心，发出SSD的所有操作请求----从实际读取和写入数据到执行垃圾回收和耗损均衡算法等，以保证SSD的速度及整洁度，可以说主控是SSD的大脑中枢。目前主流的控制器有Marvell、SandForce、Samsung、Indilinx等。像Marvell各方面都很强劲，代表型号为Marvell 88SS9187/89/90主控，运用在浦科特、闪迪、英睿达等品牌的SSD上。SandForce的性能也不错，它的特点是支持压缩数据，比如一个10M的可压缩数据可能被他压成5M的写入硬盘，但还是占用10M的空间，可以提高点速度，最大的特点是会延长SSD的寿命，但是CPU占用会高点而且速度会随着硬盘的使用逐渐小幅度降低。代表型号为SF-2281，运用在包括Intel、金士顿、威刚等品牌的SSD上。Samsung主控一般只有自家的SSD上使用，性能上也是很强悍的，不会比Marvell差多少。目前三星主控已经发展到第五代MEX，主要运用在三星850EVO、850PRO上。固件算法：SSD的固件是确保SSD性能的最重要组件，用于驱动控制器。主控将使用SSD中固件算法中的控制程序，去执行自动信号处理，耗损平衡，错误校正码(ECC)，坏块管理、垃圾回收算法、与主机设备(如电脑)通信，以及执行数据加密等任务。由于固件冗余存储至NAND闪存中，因此当SSD制造商发布一个更新时，需要手动更新固件来改进和扩大SSD的功能。开发高品质的固件不仅需要精密的工程技术，而且需要在NAND闪存、控制器和其他SSD组件间实现完美整合。此外，还必须掌握NADN特征、半导体工艺和控制器特征等领域的最先进的技术。固件的品质越好，整个SSD就越精确，越高效，目前具备独立固件研发的SSD厂商并不多，仅有Intel/英睿达/浦科特/OCZ/三星等厂商，希望我国能早日解决。NAND闪存：SSD用户的数据全部存储于NAND闪存里，它是SSD的存储媒介。SSD最主要的成本就集中在NAND闪存上。NAND闪存不仅决定了SSD的使用寿命，而且对SSD的性能影响也非常大。NAND闪存颗粒结构及工作原理都很复杂，接下来我们会继续推出系列文章来重点介绍闪存，这里主要来了解一下大家平常选购SSD经常接触到的SLC、MLC及TLC闪存。SLC/MLC/TLC闪存：三种闪存状态这几年NAND闪存的技术发展迅猛同，从企业级标准的SLC闪存到被广泛运用在消费级SSD上的MLC闪存再到目前正在兴起的TLC闪存，短短时间里，我们看到NAND技术显著进步。对SLC、MLC及TLC闪存怎么理解呢？简单来说，NAND闪存中存储的数据是以电荷的方式存储在每个NAND存储单元内…