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
android系统源码分析
android系统
selinux中添加新属性property
1.定位/android/system/sepolicy/private/property_contexts声明属性开头:persist.charge声明属性类型:u:object_r:system_prop:s0图12.定位到android/system/sepolicy/public/domain.te删除neverallow{domain-init}default_prop:property
辉色投像
·
2024-09-16 10:03
2.2.6 通知类控件 Toast、Menu
Toast也被叫做吐司,是
Android系统
提供的一种非常好的提醒方式,在程序中可以使用它将一些短小的信息通知给用户,它有如下两个特点:Toast是没有焦点的Toast显示的时间有限过一定的时间就会自动消失所以一般来讲
常思行
·
2024-09-16 08:52
JVM
源码分析
之堆外内存完全解读
概述广义的堆外内存说到堆外内存,那大家肯定想到堆内内存,这也是我们大家接触最多的,我们在jvm参数里通常设置-Xmx来指定我们的堆的最大值,不过这还不是我们理解的Java堆,-Xmx的值是新生代和老生代的和的最大值,我们在jvm参数里通常还会加一个参数-XX:MaxPermSize来指定持久代的最大值,那么我们认识的Java堆的最大值其实是-Xmx和-XX:MaxPermSize的总和,在分代算法
HeapDump性能社区
·
2024-09-16 02:18
Golang Channel
Channel解析1.Channel
源码分析
1.1Channel数据结构typehchanstruct{qcountuint//channel的元素数量dataqsizuint//channel循环队列长度
PandaSkr
·
2024-09-15 20:04
golang
Java集合类框架
源码分析
之 RoleList源码解析 【6】
该类继承于ArrayList,针对Role进行了一些扩展。其他方法和ArrayList中基本相同,源码不做针对性分析:看一下类简介:/***代表了一个roles的列表,作为方法setRoles()的参数,去创建一个关联关系,并且尝试在同一个关系中设置多个角色。*ARoleListrepresentsalistofroles(Roleobjects).Itisusedas*parameterwhen
yunzhonghefei
·
2024-09-15 17:46
Java集合类源码分析
RoleList源码解析
【鸿蒙OH-v5.0
源码分析
之 Linux Kernel 部分】004 - Kernel 启动引导代码head.S 源码逐行分析
【鸿蒙OH-v5.0
源码分析
之LinuxKernel部分】004-Kernel启动引导代码head.S源码逐行分析系列文章汇总:《鸿蒙OH-v5.0
源码分析
之Uboot+Kernel部分】000-文章链接汇总
"小夜猫&小懒虫&小财迷"的男人
·
2024-09-15 16:10
鸿蒙OH-v5.0源码分析之
Uboot+Kernel
部分
harmonyos
linux
华为
Java高并发编程详解系列-深入理解Thread构造
这里首先提供一个JDK1.6的ThreadAPI截图线程命名规范 从
源码分析
可以看到在Thread类中默认提供了线程的命名方式,这个
nihui123
·
2024-09-15 02:26
高并发
Java高并发
Java
高并发
【QT教程】QT6硬件图形界面编程 QT硬件编程
QT6硬件图形界面编程使用AI技术辅助生成QT界面美化视频课程QT性能优化视频课程QT原理与
源码分析
视频课程QTQMLC++扩展开发视频课程免费QT视频课程您可以看免费1000+个QT技术视频免费QT视频课程
QT性能优化QT原理源码QT界面美化
·
2024-09-15 02:25
qt
qt6.3
qt5
c++
QT教程
Jetpack LiveData
源码分析
文章目录JetpackLiveData
源码分析
前提
源码分析
注册订阅流程LiveData#observe()LifecycleRegistry#addObserver()ObserverWithState
xiangxiongfly915
·
2024-09-14 21:48
#
Android
Jetpack系列
Jetpack
LiveData
源码分析
ExoPlayer架构详解与
源码分析
(17)——TrackSelector
系列文章目录ExoPlayer架构详解与
源码分析
(1)——前言ExoPlayer架构详解与
源码分析
(2)——PlayerExoPlayer架构详解与
源码分析
(3)——TimelineExoPlayer架构详解与
源码分析
山雨楼
·
2024-09-14 19:02
ExoPlayer
架构
android
音视频
ExoPlayer
Media3
源码
ExoPlayer架构详解与
源码分析
(12)——Cache
系列文章目录ExoPlayer架构详解与
源码分析
(1)——前言ExoPlayer架构详解与
源码分析
(2)——PlayerExoPlayer架构详解与
源码分析
(3)——TimelineExoPlayer架构详解与
源码分析
山雨楼
·
2024-09-14 19:02
ExoPlayer
架构
android
音视频
ExoPlayer
Media3
源码
ExoPlayer架构详解与
源码分析
(7)——SampleQueue(4)
long[]newSourceIds=newlong[newCapacity];long[]newOffsets=newlong[newCapacity];long[]newTimesUs=newlong[newCapacity];int[]newFlags=newint[newCapacity];int[]newSizes=newint[newCapacity];CryptoData[]newC
2401_83740189
·
2024-09-14 19:00
程序员
架构
【HarmonyOS】- 常见算法简单写法
文章目录知识回顾前言
源码分析
1.冒泡排序2.二分法查找拓展知识时间、空间复杂度总结知识回顾前言常见算法简单写法
源码分析
1.冒泡排序functionbubbleSort(arr:number[]):number
数的羊都睡了
·
2024-09-14 12:44
HarmonyOS
ArkTS
鸿蒙
[ docker-ce
源码分析
系列 ] 修改resolv.conf文件被还原的原因
1概述:1.1环境版本信息如下:a、操作系统:centos7.6,amd64b、服务器docker版本:v18.09.22resolv.conf文件被还原的现象:容器中的/etc/resolv.conf文件,是由宿主机/var/lib/docker/containers/xxxx/resolv.conf文件挂载。在dockerrestart容器之前,手动修改了/var/lib/docker/con
nangonghen
·
2024-09-14 07:18
docker
docker
dispatch_once
源码分析
GCD里的单例函数dispatch_once是我们经常会用到的,今天我们来稍做深入分析一下。GCD的源码都在libdispatch.dylib库里,这个库在libSystem_initializer被初始化,可理解为在dyld里被加载和初始化的(之前的文章有分析过)。dispatch_once作为单例的使用入口,通过分析得到它是一个宏定义,_dispatch_once函数在libdispatch.
福伟_Y
·
2024-09-14 02:00
Android系统
启动流程(一)PowerOn
(一)概述1.开机,开机就是给系统开始供电,此时硬件电路会产生一个确定的复位时序,保证CPU是最后一个被复位的器件.为什么CPU要最后被复位呢?因为,如果CPU第一个被复位,则当CPU复位后开始运行时,其他硬件内部的寄存器状态可能还没有准备好,比如磁盘或者内存,那么久可能出现外围硬件初始化错误。2.当正确完成复位后,CPU开始执行第一条指令,该指令所在的内存你地址是固定的,这由CPU的制造者指定。
凯玲之恋
·
2024-09-13 09:29
Android AudioPolicy策略的实现过程分析(二):CarAudioService和自定义音频焦点策略
摘要:
Android系统
中与Automotive相关的代码会被编译成一个名为CarService的apk存在于车机中,CarService中包括了众多和Car功能相关的Service,其中就包括CarAudioService
神奇海螺666
·
2024-09-13 05:34
Android学习
Android音频
android
java
安卓
jQuery Easyui
源码分析
之combo组件
/***jQueryEasyUI1.3.1*该源码完全由压缩码翻译而来,并非网络上放出的源码,请勿索要。*/(function($){functionsetSize(target,width){varopts=$.data(target,"combo").options;varcombo=$.data(target,"combo").combo;varpanel=$.data(target,"co
90后北京程序员
·
2024-09-13 02:38
前端-easyui
easyui之combobox
html5carousel图片轮播,全面解析Bootstrap中Carousel轮播的使用方法
Bootstrap中Carousel的使用方法,供大家参考,具体内容如下源码文件:Carousel.scssCarousel.js实现原理:隐藏所有要显示的元素,然后指定当前要显示的为block,宽、高自适应
源码分析
RemusrickCat
·
2024-09-12 17:40
4-5.Android Camera 之其他方式预览图像编码模板(TextureView)
一、CameraCamera用于捕获图像和视频在Android开发的早期阶段,Android提供android.hardware.CameraAPI,开发者用它来访问和控制设备的摄像头硬件然而,随着
Android
我命由我12345
·
2024-09-12 12:41
Android
-
简化编程
android
java
java-ee
android-studio
android
studio
安卓
Java集合-----List接口及其实现类:ArrayList、LinkedList、Vector
文章目录List接口概述List接口的常用方法List接口的实现类ArrayList
源码分析
类继承关系ArrayList中的属性:ArrayList构造函数:ArrayList中常用方法添加操作:add
Colourful.
·
2024-09-12 09:22
Java集合
java
集合
React Native通讯原理
之前写过一篇文章ReactNativeAndroid
源码分析
,在此文章的基础上分析和总结下RN与Native的通讯流程。本文基于Android代码分析,iOS实现原理类似。
zbl_zbl
·
2024-09-12 09:19
android
ReactNativ
[linux 驱动]增加一个文件节点控制led灯亮灭
目录1修改设备树2修改驱动3驱动源码3.1驱动源码3.2设备树节点3.3驱动
源码分析
3.3.1##解释3.3.2class_create解释3.3.3class_create_file解释3.3.4of_get_named_gpio_flags
嵌入式成长家
·
2024-09-11 23:43
linux内核的系统实战
linux驱动
linux驱动
led灯驱动
【QT教程】QT6对话框编程
QT6对话框编程使用AI技术辅助生成QT界面美化视频课程QT性能优化视频课程QT原理与
源码分析
视频课程QTQMLC++扩展开发视频课程免费QT视频课程您可以看免费1000+个QT技术视频免费QT视频课程
QT性能优化QT原理源码QT界面美化
·
2024-09-11 22:09
qt
qt6.3
qt5
c++
QT教程
鸿蒙轻内核M核
源码分析
系列十二 事件Event
事件(Event)是一种任务间通信的机制,可用于任务间的同步。多任务环境下,任务之间往往需要同步操作,一个等待即是一个同步。事件可以提供一对多、多对多的同步操作。本文通过分析鸿蒙轻内核事件模块的源码,深入掌握事件的使用。本文中所涉及的源码,以OpenHarmonyLiteOS-M内核为例,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m获取
OpenHarmony_小贾
·
2024-09-11 19:44
OpenHarmony
HarmonyOS
鸿蒙开发
harmonyos
openharmony
鸿蒙内核
鸿蒙开发
移动开发
嵌入式硬件
驱动开发
鸿蒙轻内核M核
源码分析
系列四 中断Hwi
在鸿蒙轻内核
源码分析
系列前几篇文章中,剖析了重要的数据结构。本文,我们讲述一下中断,会给读者介绍中断的概念,鸿蒙轻内核的中断模块的源代码。
OpenHarmony_小贾
·
2024-09-11 19:44
鸿蒙开发
OpenHarmony
HarmonyOS
harmonyos
单片机
OpenHarmony
嵌入式硬件
鸿蒙开发
移动开发
鸿蒙内核
鸿蒙轻内核M核
源码分析
系列五 时间管理
在鸿蒙轻内核
源码分析
上一篇文章中,我们剖析了中断的源码,简单提到了Tick中断。本文会继续分析Tick和时间相关的源码,给读者介绍鸿蒙轻内核的时间管理模块。
OpenHarmony_小贾
·
2024-09-11 19:44
HarmonyOS
OpenHarmony
鸿蒙开发
harmonyos
openharmony
鸿蒙开发
NAPI
鸿蒙内核
移动开发
嵌入式
鸿蒙轻内核M核
源码分析
系列六 任务及任务调度(1)任务栈
继续分析鸿蒙轻内核源码,我们本文开始要分析下任务及任务调度模块。首先,我们介绍下任务栈的基础概念。任务栈是高地址向低地址生长的递减栈,栈指针指向即将入栈的元素位置。初始化后未使用过的栈空间初始化的内容为宏OS_TASK_STACK_INIT代表的数值0xCACACACA,栈顶初始化为宏OS_TASK_MAGIC_WORD代表的数值0xCCCCCCCC。一个任务栈的示意图如下,其中,栈底指针是栈的最
OpenHarmony_小贾
·
2024-09-11 19:44
鸿蒙开发
OpenHarmony
HarmonyOS
HarmonyOS
openharmony
鸿蒙开发
移动开发
鸿蒙内核
驱动开发
嵌入式硬件
鸿蒙轻内核M核
源码分析
系列三 数据结构-任务排序链表
在鸿蒙轻内核
源码分析
系列一和系列二,我们分析了双向循环链表、优先级就绪队列的源码。本文会继续给读者介绍鸿蒙轻内核源码中重要的数据结构:任务排序链表TaskSortLinkAttr。
OpenHarmony_小贾
·
2024-09-11 19:43
HarmonyOS
OpenHarmony
鸿蒙开发
数据结构
harmonyos
移动开发
OpenHarmony
鸿蒙内核
鸿蒙开发
嵌入式硬件
鸿蒙轻内核A核
源码分析
系列七 进程管理 (2)
本文先熟悉下进程管理的文件kernel\base\core\los_process.c中的内部接口,读读代码,做些记录。1、LiteOS-A内核进程全局变量⑴是进程池,存放各个进程控制块LosProcessCB的信息。⑵处开始的g_freeProcess是空闲进程链表,挂载各个空闲进程控制块;g_processRecycleList是待回收进程控制块链表,挂载各个等待回收的进程控制块。⑶处开始的g
OpenHarmony_小贾
·
2024-09-11 17:59
HarmonyOS
鸿蒙开发
OpenHarmony
harmonyos
OpenHarmony
移动开发
驱动开发
鸿蒙内核
LiteOS-A内核
进程通信
鸿蒙原生开发——轻内核A核
源码分析
系列三 物理内存(2)
3.1.2.3函数OsVmPhysLargeAlloc当执行到这个函数时,说明空闲链表上的单个内存页节点的大小已经不能满足要求,超过了第9个链表上的内存页节点的大小了。⑴处计算需要申请的内存大小。⑵从最大的链表上进行遍历每一个内存页节点。⑶根据每个内存页的开始内存地址,计算需要的内存的结束地址,如果超过内存段的大小,则继续遍历下一个内存页节点。⑷处此时paStart表示当前内存页的结束地址,接下来
OpenHarmony_小贾
·
2024-09-11 17:29
鸿蒙开发
HarmonyOS
OpenHarmony
harmonyos
openharmony
移动开发
程序人生
鸿蒙开发
Android14音频进阶之高通Elite架构指定通道播放(八十四)
简介:CSDN博客专家、《
Android系统
多媒体进阶实战》一书作者新书发布:《
Android系统
多媒体进阶实战》优质专栏:Audio工程师进阶系列【原创干货持续更新中……】优质专栏:多媒体系统工程师系列
Android系统攻城狮
·
2024-09-11 15:18
Android
Audio工程师进阶系列
Android14音频
高通Elite架构
指定通道
播放音频
Android电源管理基础知识整理
而
Android系统
自身并未出台对应的策略来约束或者限制这类应用行为,当这类
轻口味
·
2024-09-11 10:44
android
android系统
设计模式
Android官方架构组件介绍之LifeCycle,Android架构组件一共包括以下几个:LifeCycle:与Activity和Fragment的生命周期有关LiveData:异步可订阅数据,也是生命周期感知ViewModel:视图数据持有模型,也是生命周期感知Room:SQLite抽象层,用于简化SQLite数据存储官网设计原则Android应用程序的开发使用Java编写,在架构上使用MVC
轻口味
·
2024-09-11 08:25
Android系列
android
设计模式
JsonCpp
源码分析
——Reader
1、与Writer模块功能相反,可以将Reader理解成一个反序列化的工具,Writer的作用主要是将Value对象转成string或者流式的结构,Reader的作用主要是将流式的结构转成Value类型的对象。Reader类的主要职责有3个,解析JSON字符串:将JSON格式的字符串读取并解析成相应的C++数据结构。处理不同的数据类型,支持解析JSON对象、数组、字符串、数字、布尔值和null。处
哎呦,帅小伙哦
·
2024-09-11 06:48
#
jsoncpp
json
Android 性能优化实战:打造流畅体验
优化代码性能是提升用户体验的关键,而这需要我们深入理解
Android系统
的运行机制和性能瓶颈,并采取针对性的优化策略。
斯陀含
·
2024-09-11 06:12
android
性能优化
vue
源码分析
-挂载流程和模板编译
前面几节我们从newVue创建实例开始,介绍了创建实例时执行初始化流程中的重要两步,配置选项的资源合并,以及响应式系统的核心思想,数据代理。在合并章节,我们对Vue丰富的选项合并策略有了基本的认知,在数据代理章节我们又对代理拦截的意义和使用场景有了深入的认识。按照Vue源码的设计思路,初始化过程还会进行很多操作,例如组件之间创建关联,初始化事件中心,初始化数据并建立响应式系统等,并最终将模板和数据
yyzzabc123
·
2024-09-11 05:05
vue.js
Android逆向抓包技巧-不走系统代理
因为
Android系统
设置的代理并不是强制对所有App生效,App可以在网络请求类库中通过自定义代理设置,选择是否要走系统代理。
象野VH
·
2024-09-10 20:33
Android
逆向基础
爬虫
鸿蒙内核解析,鸿蒙内核
源码分析
(内存概念篇)|解读鸿蒙源码
本系列全部文章进入鸿蒙
源码分析
(总目录)查看目录最难讲的章节坦白讲内存是整个系列里面最
刘轩鸿
·
2024-09-10 09:53
鸿蒙内核解析
鸿蒙轻内核A核
源码分析
系列七 进程管理 (3)
本文记录下进程相关的初始化函数,如OsSystemProcessCreate、OsProcessInit、OsProcessCreateInit、OsUserInitProcess、OsDeInitPCB、OsUserInitProcessStart等。1、LiteOS-A内核进程创建初始化通用函数先看看一些内部函数,不管是初始化用户态进程还是内核态进程,都会使用这些函数,包含进程控制块初始化函数
OpenHarmony_小贾
·
2024-09-10 09:20
OpenHarmony
鸿蒙开发
HarmonyOS
harmonyos
嵌入式硬件
OpenHarmony
鸿蒙嵌入式
鸿蒙开发
鸿蒙内核
进程关联
鸿蒙轻内核A核
源码分析
系列五 虚实映射(6)虚拟映射修改转移
6.1映射属性修改函数LOS_ArchMmuChangeProt函数LOS_ArchMmuChangeProt用于修改进程空间虚拟地址区间的映射保护属性,其中参数archMmu为进程空间的MMU结构体,vaddr为虚拟地址,count为映射的页数,flags为映射使用的新标签属性信息。其中函数名称中的Prot是英文Protect的简写。⑴处对参数进行校验,⑵处查询虚拟地址映射的物理地址,如果没有映
OpenHarmony_小贾
·
2024-09-10 09:50
鸿蒙开发
HarmonyOS
OpenHarmony
harmonyos
OpenHarmony
移动开发
驱动开发
鸿蒙内核
鸿蒙轻内核A核
源码分析
系列五 虚实映射(1)基础概念
虚实映射是指系统通过内存管理单元(MemoryManagementUnit,MMU)将进程空间的虚拟地址(VA)与实际的物理地址(PA)做映射,并指定相应的访问权限、缓存属性等。程序执行时,CPU访问的是虚拟内存,通过MMU找到映射的物理内存,并做相应的代码执行或数据读写操作。MMU的映射由页表(PageTable)来描述,页表保存虚拟地址和物理地址的映射关系以及访问权限等。每个进程在创建的时候都
OpenHarmony_小贾
·
2024-09-10 09:20
鸿蒙开发
HarmonyOS
OpenHarmony
harmonyos
嵌入式硬件
鸿蒙开发
OpenHarmony
鸿蒙嵌入式
鸿蒙内核
鸿蒙轻内核A核
源码分析
系列四(3) 虚拟内存
4.2函数LOS_RegionAlloc函数LOS_RegionAlloc用于从地址空间中申请空闲的虚拟地址区间。参数较多,LosVmSpace*vmSpace指定虚拟地址空间,VADDR_Tvaddr指定虚拟地址,当为空时,从映射区申请虚拟地址;当不为空时,使用该虚拟地址。如果该虚拟地址已经被映射,会先相应的解除映射处理等。size_tlen指定要申请的地区区间的长度。UINT32regionF
OpenHarmony_小贾
·
2024-09-10 09:19
OpenHarmony
HarmonyOS
鸿蒙开发
harmonyos
OpenHarmony
鸿蒙内核
移动开发
驱动开发
系统开发
鸿蒙轻内核A核
源码分析
系列四(1)虚拟内存进程空间编号
在熟悉下OpenHarmony鸿蒙轻内核提供的虚拟内存(Virtualmemory)管理模块之前,作为预备基础知识,我们先了解下虚拟内存进程空间编号,进程空间编号功能相对独立,源代码文件单独维护。涉及的头文件和C源代码文件分别为arch/arm/arm/include/los_asid.h和arch/arm/arm/src/los_asid.c。本文先介绍OpenHarmony鸿蒙轻内核LiteO
OpenHarmony_小贾
·
2024-09-10 09:49
OpenHarmony
HarmonyOS
鸿蒙开发
harmonyos
移动开发
鸿蒙内核
鸿蒙开发
OpenHarmony
鸿蒙轻内核A核
源码分析
系列一 数据结构-双向循环链表
在学习OpenHarmony鸿蒙轻内核源代码的时候,常常会遇到一些数据结构的使用。如果没有掌握它们的用法,会导致阅读源代码时很费解、很吃力。本文会给读者介绍源码中重要的数据结构,双向循环链表DoublyLinkedList。在讲解时,会结合数据结构相关绘图,培养读者们的数据结构的平面想象能力,帮助更好的学习和理解这些数据结构的用法。本文中所涉及的源码,以OpenHarmonyLiteOS-A内核为
OpenHarmony_小贾
·
2024-09-10 09:49
OpenHarmony
鸿蒙开发
HarmonyOS
数据结构
harmonyos
链表
OpenHarmony
移动开发
鸿蒙内核
鸿蒙开发
Netty
源码分析
:NioEventLoopGroup
Netty
源码分析
:NioEventLoopGroup在工作之余,看到自己公司的超哥(俞超)关于Netty的系列博文,讲解的很好,因此,自己在学习之余也跟了下源代码,来了解Netty,也做了相关的笔记,
HelloWorld_EE
·
2024-09-10 07:09
netty源码分析
源代码
netty
EventLoop
深度学习部署:Triton(Triton inference server)【旧称:TensorRT serving,专门针对TensorRT设计的服务器框架,后来变为Triton,支持其他推理后端】
本系列讲解重点是结合实际的应用场景以及
源码分析
,以及写一些triton周边的插件、集成等。非速成,适合同样喜欢深入的小
u013250861
·
2024-09-10 03:09
#
LLM/部署
深度学习
人工智能
Tinywebserver数据库连接池
源码分析
day0
Tinywebserver的第一天源自github:GitHub-qinguoyi/TinyWebServer::fire:Linux下C++轻量级WebServer服务器这是项目的数据库连接池一共有两个文件,.h/.cpp先看md文档数据库连接池*单例模式,保证唯一*list实现连接池*连接池为静态大小*互斥锁实现线程安全直接看sql_connection_pool.cpp,在代码里看看具体是怎
winsons_lu
·
2024-09-10 02:02
数据库
oracle
AS高版本SDK编译生成的apk放入低版本android源码中集成编译错误
android系统
中内置app:LOCAL_PATH:=$(callmy-dir)include$(CLEAR_VARS)#ModulenameshouldmatchapknametobeinstalledLOCAL_MODULE
辉色投像
·
2024-09-09 20:24
【HarmonyOS】- HAR与HSP区别及使用原则
文章目录知识回顾前言
源码分析
1.2.3.拓展知识总结知识回顾前言HAR与HSP
源码分析
1.2.3.拓展知识总结系统提供了两种共享包,HAR静态共享包和HSP动态共享包。
数的羊都睡了
·
2024-09-09 20:41
HarmonyOS
harmonyos
华为
鸿蒙
ArkTS
上一页
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
其他