E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux内存管理
Linux内存管理
--系列文章柒——硬件架构
一、引子之前文章讲解的是系统的虚拟内存,本章讲述这些硬件的架构和系统怎样统一管理这些硬件的。二、物理内存模型物理内存模型描述了计算机系统中的物理内存如何由操作系统组织和管理。它定义了物理内存如何划分为单元,如何寻址这些单元以及如何将它们映射到虚拟内存地址。物理内存模型对于确保高效和可靠的内存管理至关重要。物理内存模型对操作系统管理内存分配、虚拟内存映射和内存访问模式产生重大影响。它会影响内存碎片化
csdn_dyq111
·
2024-09-06 01:52
Linux
linux
硬件架构
Linux内存管理
--系列文章八——内存管理架构
一、引子上篇文章讲述了目前内存的硬件架构,本篇阐述内核中是怎么表示不同架构的物理内存页。二、平坦内存模型(FlatMemoryModel)在该模型下,物理内存是连续的,所以物理地址也是连续的。这时内核使用structpage*mem_map的全局数组来统一管理整个物理内存,page结构体代表的是每一个内存页的具体属性。如图:structpage{unsignedlongflags;/*Atomic
csdn_dyq111
·
2024-09-06 01:50
Linux
linux
架构
【Linux内存】Linux的内存管理机制
Linux内存管理
机制不管是在用户空间还是在内核空间,程序代码一律不能直接访问物理地址。用户空间和内核空间访问必须要访问虚拟地址,只是各个空间对应的虚拟地址是不一样的。
Stay_Hun_forward
·
2024-09-03 03:21
linux
驱动开发
RK3568平台(内存篇)
Linux内存管理
一.什么是内存最直观的,我们买手机,电脑,内存条,都会标明内存是多大,例如途中的8G,16G,128G都指的内存大小。我们应该都听说过RAM存储器,它是一种半导体存储器件。RAM是英文单词Random的缩写,即“随机”的意思。所以RAM存储器也称为“随机存储器”。那么RAM存储器和内存有什么关系呢?内存就是许多RAM存储器的集合,就是将许多RAM存储器集成在一起的电路板。RAM存储器的优点是存取速
嵌入式_笔记
·
2024-09-03 01:08
瑞芯微
linux
Linux内存管理
:CMA(连续内存分配)(DMA)
目录什么是CMA数据结构CMA区域cma_areas的创建dts方式commandline方式将CMA区域添加到BuddySystemCMA分配《
Linux内存管理
:什么是CMA(contiguousmemoryallocation
rtoax
·
2024-02-14 07:03
【Linux内核】
lv14 内核内存管理、动态分频及IO访问 12
一、内核内存管理框架内核将物理内存等分成N块4KB,称之为一页,每页都用一个structpage来表示,采用伙伴关系算法维护补充:
Linux内存管理
采用了虚拟内存机制,这个机制可以在内存有限的情况下提供更多可用的内存空间
4IOT
·
2024-02-12 04:10
嵌入式开发
linux
arm开发
Linux内存管理
:(十一)页面分配之慢速路径
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.水位管理和分配优先级页面分配器是按照zone的水位来管理的,zone的水位分成3个等级,分别是高水位(WMARK_HIGH)、低水位(WMARK_LOW)以及
显微镜下的内核
·
2024-02-04 22:16
Linux内存管理篇
linux
Linux内存管理
:(十二)Linux 5.0内核新增的反碎片优化
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)外碎片化发生时,页面分配器还是会认为系统可以分配出内存,因为__zone_watermark_ok()函数会返回TRUE,但是我们认为系统应该及时采取一些补救措施
显微镜下的内核
·
2024-02-04 22:16
Linux内存管理篇
linux
linux的子系统
)、网络接口(NET)和进程间通信(IPC)5个子系统组成:进程调度进程调度控制系统中的多个进程对CPU的访问内存管理主要作用是控制多个进程安全地共享主内存区域(当CPU提供内存管理单元(MMU)时,
Linux
跟 屁 虫
·
2024-02-01 04:57
Linux使用
arm
linux
运维
Linux内存管理
的Markdown我真的服了,以后我会把笔记源码上传到其他地方,大家可以下载后用Typora看,我感觉这个软件不错6个段寄存器CSSSDSES/FS/GS保护模式下,16位的寄存器无法存放32位的段基地址段寄存器中存放的不是某个段的基地址,而是某个段的选择子(Selector)段基地址存放在段描述符表中状态和控制寄存器标志寄存器EFLAGS指令指针EIP4个控制寄存器CR0/1/2/3[图片上传失
YAOPRINCESS
·
2024-01-29 11:25
gitbook
linux内存管理
,附录一:常见问题总结
常见问题总结镜像相关如何批量清理临时镜像文件?答:可以使用dockerimageprune命令。如何查看镜像支持的环境变量?答:可以使用dockerrunIMAGEenv命令。本地的镜像文件都存放在哪里?答:与Docker相关的本地资源默认存放在/var/lib/docker/目录下,以overlay2文件系统为例,其中containers目录存放容器信息,image目录存放镜像信息,overla
意呆
·
2024-01-28 12:36
gitbook
linux内存管理
linux -- 内存管理 -- 页面分配器
linux内存管理
为什么要了解
linux内存管理
分配并使用内存,是内核程序与驱动程序中非常重要的一环。内存分配函数都依赖于内核中一个非常复杂而重要的组件-内存管理。
三境界
·
2024-01-27 06:17
操作系统
嵌入式Linux
linux
arm开发
kernel
一口气搞懂【
Linux内存管理
】,就靠这60张图、59个问题了
按:基于x86处理器上,以系统启动过程中内存管理的逐步构建为主轴,分析内存的管理方式与其相关的安全防护功能。1、如何知道计算机内存布局?内存空间有多少?春江水暖鸭先知,计算机上电启动的时候,BIOS会检测并计算物理内存大小。比方说现在通用的内存都是DIMM针脚插槽类型的,它的PIN针脚有两百多个,各个针脚各有自己的定义,BIOS就是通过对不同针脚的高低电平设置,由内存反馈其规格信息给BIOS,然后
linux大本营
·
2024-01-24 12:56
linux
内存管理
linux内核
malloc
内存
linux内存管理
(十三)-内存规整过程分析
现在看看内存规整迁移再分配函数,__alloc_pages_direct_compact,函数在mm/page_alloc.c文件中:/*Trymemorycompactionforhigh-orderallocationsbeforereclaim*/staticstructpage*__alloc_pages_direct_compact(gfp_tgfp_mask,unsignedintor
小坚学Linux
·
2024-01-21 21:47
Linux
kernel
linux内存管理
linux
内存管理
Linux内存管理
:(八)页面迁移
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.可迁移页面页面迁移机制支持两大类内存页面:传统LRU页面,如匿名页面和文件映射页面非LRU页面,如zsmalloc或者virtio-balloon页面,以vi
显微镜下的内核
·
2024-01-21 21:16
Linux内存管理篇
linux
Linux内存管理
:(九)内存规整
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.引言伙伴系统以页面为单位来管理内存,内存碎片也是基于页面的,即由大量离散且不连续的页面组成的。从内核角度来看,出现内存碎片不是好事情,有些情况下物理设备需要大
显微镜下的内核
·
2024-01-21 21:16
Linux内存管理篇
linux
中移(苏州)软件技术有限公司面试问题与解答(2)—— Linux内核内存初始化的完整流程1
接前一篇文章:中移(苏州)软件技术有限公司面试问题与解答(1)——可信计算国密标准本文参考以下文章:启动期间的内存管理之初始化过程概述----
Linux内存管理
(九)Linux初始化特此致谢!
蓝天居士
·
2024-01-20 00:58
面试
面试
程序员必备知识(操作系统篇3-内存管理)
(ૢ˃ꌂ˂⁎)本篇为大家介绍的是内存管理部分,涉及的知识点有:虚拟内存,内存分段,内存分页,简单分页,多级页表,页表缓存,
Linux内存管理
。本篇篇幅很长,共五千多字,16张图表。
程序员耶耶
·
2024-01-19 18:22
linux内存访问和页表建立,
linux内存管理
笔记(十二)----准备页表
Linux是为通用的操作系统而设计,为了便于移植需要抽象出一些硬件细节,在驱动代码中看到大量的抽象层的思想。内核中只有和硬件相关的代码才会单独实现,这样做便于移植和添加新硬件。内核里所有进程和内核线程都共享1GB的地址空间,而每个应用程序对应的进程都有独立的3GB的地址空间,相互不干扰用户空间:在Linux中,每个用户进程都可以访问4GB的线性地址空间,从0到3GB的虚拟地址空间是用户空间,每个用
李一雷
·
2024-01-17 12:57
linux内存访问和页表建立
Linux内存管理
:(七)页面回收机制
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.触发页面回收Linux内核中触发页面回收的机制大致有3个:直接页面回收机制。在内核态里调用页面分配接口函数alloc_pages()分配物理页面时,由于系统内
显微镜下的内核
·
2024-01-10 10:51
Linux内存管理篇
linux
linux内存管理
内存分布1.代码区(text):可执行指令、字面值常量、具有常属性的全局和静态局部变量。只读。2.数据区(data):初始化的全局和静态局部变量。3.BSS区:未初始化的全局和静态局部变量。进程一经加载此区即被清0。数据区和BSS区有时被合称为全局区或静态区。4.堆区(heap):动态内存分配。从低地址向高地址扩展。5.栈区(stack):非静态局部变量,包括函数的参数和返回值。从高地址向低地址扩
一天开始了
·
2024-01-06 23:08
c
4g内存
深入理解Linux虚拟内存管理
虚拟内存管理是
Linux内存管理
的关键组成部分,它通过抽象化的层次将物理内存转换成为应用程序所见的虚拟内存。
许愿offer多多
·
2024-01-06 06:19
linux
java
服务器
前端
运维
ubuntu
Linux内存管理
(8):页回收和反向映射
一、内存回收内存回收指的是物理内存紧缺以致可能无法满足新的内存分配请求时,内核想办法腾挪出一些空闲页面的处理机制,也叫页帧回收算法(PageFrameReclaimingAlgrithom,PFRA)。内存回收分为直接回收和周期性回收二种:前者在内存分配函数得不到满足时直接触发,后者是内核线程kswapd的周期性扫描和评估。高优先级的分配请求会忽略WMARK_MIN水位线而动用保留页面,高阶连续的
张帅峰_
·
2024-01-05 09:33
Linux内核/驱动
linux
Linux内存管理
:(四)缺页异常处理
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)malloc()和mmap()只是建立了进程地址空间,没有建立虚拟内存和物理内存之间的映射关系,当进程访问这些还没有建立映射关系的虚拟内存时,处理器自动触发一个缺
显微镜下的内核
·
2024-01-05 09:31
Linux内存管理篇
linux
Linux内存管理
:(六)页交换算法
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.引言在Linux操作系统中,当内存充足时,内核会尽量多地使用内存作为文件缓存(pagecache),从而提高系统的性能。文件缓存页面会添加到文件类型的LRU链
显微镜下的内核
·
2024-01-05 09:31
Linux内存管理篇
linux
linux内存管理
-反向映射
反向映射的需求正向映射是通过虚拟地址根据页表找到物理内存,反向映射就是通过物理地址找到哪些虚拟地址使用它。什么时候需要进行反向映射呢?在页面回收的时候,在还没有修改完所有引用该页帧的页表项之前是不可以将页帧swap到硬盘上。没有修改页表项但是物理页已经swapout了并且再次分配给其他申请者了,此时再次访问那访问的可能是其他上下文的数据,如果仅仅是脏数据也还好,但是如果访问到的是内核的数据或者其他
wjx5210
·
2024-01-05 09:59
linux
Linux内存管理
:(五)反向映射RMAP
文章说明:Linux内核版本:5.0架构:ARM64参考资料及图片来源:《奔跑吧Linux内核》Linux5.0内核源码注释仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.前置知识:page数据结构中的相关字段本文主要对反向映射RMAP进行讲解,在讲解之前,我们先了解下page数据结构中与RMAP相关的几个字段:mapping:
显微镜下的内核
·
2024-01-05 09:57
Linux内存管理篇
linux
Linux内存管理
-简述
linux性能四大相关子系统,cpu,内存,磁盘io,网络。内存的使用贯彻系统,任何活的东西都是活在内存中。内存的管理:段式管理+页式管理。段式管理,Linux中将段基址设为0,即兼容了intel的段的要求,又可以让不支持分段的架构能够绕过分段。这使得逻辑地址=线性地址。页式管理,是将物理内存分成固定大小的frame,然后通过mmu,在虚拟空间中页设成为同样大小page,一般是4K。随着物理内存越
心远气自静
·
2024-01-01 04:26
一步一图带你深入理解 Linux 物理内存管理(上)
所以本文的目的是在深入理解虚拟内存管理的基础之上继续带大家向前奋进,一举击破物理内存管理的知识盲区,使大家能够俯瞰整个
Linux内存管理
子系统的整体
bin的技术小屋
·
2023-12-27 04:16
一步一图带你深入理解 Linux 物理内存管理(上)
所以本文的目的是在深入理解虚拟内存管理的基础之上继续带大家向前奋进,一举击破物理内存管理的知识盲区,使大家能够俯瞰整个
Linux内存管理
子系统的整体
bin的技术小屋
·
2023-12-27 04:16
Linux内存管理
:(三)kmalloc、vmalloc、malloc、mmap
文章说明:Linux内核版本:5.0架构:ARM64参考资料:《奔跑吧Linux内核》Linux5.0内核源码注释及学习笔记仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.kmalloc内核中常用的kmalloc()函数的核心实现是slab机制。类似于伙伴系统机制,在内存块中按照2的order次方字节来创建多个slab描述符,如
显微镜下的内核
·
2023-12-25 17:53
Linux内存管理篇
linux
Linux内存管理
:(二)slab分配器
文章说明:Linux内核版本:5.0架构:ARM64参考资料:《奔跑吧Linux内核》Linux5.0内核源码注释及学习笔记仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.slab分配器产生的背景伙伴系统在分配内存时是以物理页面为单位的,在实际中有很多内存需求是以字节为单位的,那么如果我们需要分配以字节为单位的小内存块,该如何分
显微镜下的内核
·
2023-12-25 17:53
Linux内存管理篇
linux
Linux内存管理
:(一)伙伴系统
文章说明:Linux内核版本:5.0架构:ARM64参考资料:《奔跑吧Linux内核》Linux5.0内核源码注释及学习笔记仓库地址:zhangzihengya/LinuxSourceCode_v5.0_study(github.com)1.内存碎片化问题内存碎片化是内存管理中一个比较难以解决的问题。Linux内核在采用伙伴系统算法时考虑了如何减少内存碎片化。在伙伴系统算法中,两个什么样的内存块可
显微镜下的内核
·
2023-12-25 17:22
Linux内存管理篇
linux
【纯干货】
Linux内存管理
(最透彻的一篇)
在本章最后,我们给出一个内存映射的实例,帮助网友们理解内核内存管理与用户内存管理之间的关系,希望大家最终能驾驭
Linux内存管理
。
极致Linux内核
·
2023-12-23 00:11
C++经典面试题(万字总结版)
一.编译链接运行1.虚拟地址空间的内存布局
Linux内存管理
|二、虚拟地址空间布局-知乎(zhihu.com)3G的用户空间和1G的内核空间。
Better Sally
·
2023-12-16 07:51
面经
C++
c++
面试
数据结构
c语言
linux内核源码分析之伙伴系统(一)
目录一、重要结构体二、数据结构之间的关系1、分配数量2、区域类型3,备用区域列表4、区域水位5、min_free_kbytes三、分配页面1、ac参数获取值2,快速分配3,慢速分配伙伴系统是
linux内存管理
的方法
为了维护世界和平_
·
2023-11-27 05:01
linux内核分析
伙伴系统
linux内核
详细讲解Linux内核源码内存管理(值得收藏)
内核的内存管理是
Linux内存管理
的核心,所以我们先对内核的内存管理进行简介。
Linux加油站
·
2023-11-26 13:55
linux
运维
服务器
万字整理,肝翻
Linux内存管理
所有知识点【Linux内核开发人员必学】都是精髓
有人问网上有很多
Linux内存管理
的内容,为什么还要看你这一篇,这正是我写此文的原因,网上碎片化的相关知识点大都是东拼西凑,先不说正确性与否,就连基本的逻辑都没有搞清楚,我可以负责任的说
Linux内存管理
只需要看此文一篇就可以让你入
Linux服务器开发
·
2023-11-23 03:59
内核操作系统
内存管理
Linux内核
网络协议
驱动开发
Linux内核
内存管理
内核操作系统
Linux内核管理之分配掩码(三)
Linux内核管理之分配掩码(三)分配掩码是
linux内存管理
中非常重要的一个参数,它影响着页面分配的整个流程。
水生| 如水人生
·
2023-11-22 17:59
Linux内存管理
linux
内存管理
linux内存管理
机制--学习整理汇总(2)
Linux内存分配算法内存管理算法——对讨厌自己管理内存的人来说是天赐的礼物1、内存碎片1)基本原理产生原因:内存分配较小,并且分配的这些小的内存生存周期又较长,反复申请后将产生内存碎片的出现优点:提高分配速度,便于内存管理,防止内存泄露缺点:大量的内存碎片会使系统缓慢,内存使用率低,浪费大2)如何避免内存碎片少用动态内存分配的函数(尽量使用栈空间)分配内存和释放的内存尽量在同一个函数中尽量一次性
junwua
·
2023-11-22 17:23
手机移动开发
安全芯片
学习
linux内存管理
机制--学习整理汇总 dma-buf(3)
目录内存映射mmap总介一、用户进程访问内存分析二、dma_buf关键代码解读三、内核处理器访问dma-buf缓冲区对象四、引入dma-buf机制的原因五、dma-buf实现内存映射mmap总介内存映射mmap是Linux内核的一个重要机制,它和虚拟内存管理以及文件IO都有直接的关系,这篇细说一下mmap的一些要点。Linux的虚拟内存管理是基于mmap来实现的。vm_area_struct是在m
junwua
·
2023-11-22 17:23
手机移动开发
linux
学习
运维
Linux-内存管理机制、内存监控、buffer/cache异同
这是
Linux内存管理
的一个优秀特性,主要特点是,无论物理内存有多大,Linux都将其充份利用,将一些程序调用过的硬盘数据读入内存(buffer/cache),利用内存读写的高速特性来提高Linux系统的数据访问性能
liyuxia_1991
·
2023-11-22 17:53
Linux
内存管理
buffer
cached
linux内存管理
机制--学习整理汇总(1)
linux内核几种内存管理的方法,内存使用场景以及内存使用的那些坑2、内存地址——用户态&内核态用户态:Ring3运行于用户态的代码则要受到处理器的诸多内核态:Ring0在处理器的存储保护中,核心态用户态切换到内核态的3种方式:系统调用、异常、外设中断区别:每个进程都有完全属于自己的,独立的,不被干扰的内存空间;用户态的程序就不能随意操作内核地址空间,具有一定的安全保护作用;内核态线程共享内核地址
junwua
·
2023-11-22 17:53
linux
学习
运维
Linux源码剖析机构,
Linux内存管理
源码剖析(一)
本篇为基础,讲解内存管理部分的基本原理与进程虚拟空间布局文章目录1.独占空间的原理2.虚拟内存的划分方式3.Linux虚拟地址与物理地址的转换4.从mm_struct结构开始讨论进程虚拟空间布局(1)用户态空间的布局(2)内核态空间的布局5.sys_brk系统调用源码剖析1.独占空间的原理对于每一个进程都应该有自己看起来独占的内存空间,以实现不同进程之间的隔离,保证安全性。而之所以提出这种巧妙的机
weixin_39943000
·
2023-11-21 09:31
Linux源码剖析机构
Linux内存管理
之mmap
目录一.mmap系统调用1.mmap系统调用2.系统调用munmap()3.系统调用msync()二.系统调用mmap()用于共享内存的两种方式:三.mmap进行内存映射的原理一.mmap系统调用1.mmap系统调用mmap将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。munmap执行相反的操作,删除特定地址区域的对象
咸鱼弟
·
2023-11-20 16:11
Linux
linux
mmap
【操作系统原理】——
Linux内存管理
系列文章目录【操作系统原理】——进程管理【操作系统原理】——进程调度【操作系统原理】——线程同步【操作系统原理】——信号量与PV操作实现【操作系统原理】——
Linux内存管理
【操作系统原理】——文件系统编程
ZShiJ
·
2023-11-19 08:43
操作系统原理
linux
服务器
c++
ubuntu
【操作系统原理】—— 文件系统编程
系列文章目录【操作系统原理】——进程管理【操作系统原理】——进程调度【操作系统原理】——线程同步【操作系统原理】——信号量与PV操作实现【操作系统原理】——
Linux内存管理
【操作系统原理】——文件系统编程文件系统编程系列文章目录实验相关知识文件系统编程打开文件
ZShiJ
·
2023-11-19 08:43
操作系统原理
linux
ubuntu
c++
linux内存管理
--linux内核高端内存
Linux内核地址映射模型x86CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存。段页式机制如下图。Linux内核地址空间划分通常32位Linux内核地址空间划分0~3G为用户空间,3~4G为内核空间。注意这里是32位内核地址空间划分,64位内核地址空间划分是不同的。Linux内核高端内存的由来当内核模块代码或线程访问内存时,代码中的内存地址都为
鱼思故渊
·
2023-11-16 13:24
linux内核设计与实现
linux
内存管理
内核
2023-11-13
今天搞实验报告搞到了下午4点多.然后把
linux内存管理
的虚拟内存与物理内存方面的东西重新看了一遍.然后就没干嘛了.明日计划:还是继续把物理内存这一块看完,然后看安排吧.
XiaozaYa
·
2023-11-15 09:58
日记
笔记
【无标题】
—详解虚拟内存如何与物理内存进行映射笔者之前在自己的专栏《聊聊Linux内核》里通过大量的篇幅写了一个系列关于内存管理相关的文章,在这个系列文章中,笔者分别通过虚拟内存管理和物理内存管理两个角度算是把
Linux
Robin.Su
·
2023-11-13 17:42
单片机
linux
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他