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-驱动开发
pytest-bdd快速示例和问题解决
BDD与pytest-bddBDD即Behavior-drivendevelopment,行为
驱动开发
。BDD行为驱动是一种敏捷开发模式,重点在于消除开发/测试对需求了解的歧义及用户场景的验证。
oscar999
·
2023-11-14 17:33
pytest
pytest-bdd
行为驱动开发
字符设备
驱动开发
在Linux系统中,用户空间和内核空间之间是相互隔离开的。驱动程序运行在内核空间中,给出的地址也是在内核空间中的地址,运行在用户空间下的用户程序即使拿到这个地址,也不能访问内核空间。这时,我们需要使用到copy_to_user()函数,将要传递的内容从内核空间拷贝到用户空间,用户程序再访问用户空间中的该内容即可。copy_to_user函数的原型如下。unsignedlongcopy_to_use
一技旁身
·
2023-11-14 11:27
驱动开发
2.4 Windows
驱动开发
:内核字符串拷贝与比较
在上一篇文章《内核字符串转换方法》中简单介绍了内核是如何使用字符串以及字符串之间的转换方法,本章将继续探索字符串的拷贝与比较,与应用层不同内核字符串拷贝与比较也需要使用内核专用的API函数,字符串的拷贝往往伴随有内核内存分配,我们将首先简单介绍内核如何分配堆空间,然后再以此为契机简介字符串的拷贝与比较。2.4.1内核中的空间分配首先内核中的堆栈分配可以使用ExAllocatePool()这个内核函
微软技术分享
·
2023-11-14 10:38
《灰帽黑客:攻守道》
windows
驱动开发
字符串拷贝
字符串比较
正点原子嵌入式linux
驱动开发
——Linux ADC驱动
在之前的笔记中,学习了如何给ICM20608编写IIO驱动,ICM20608本质就是ADC,因此纯粹的ADC驱动也是IIO驱动框架的。本章就学习一下如何使用STM32MP1内部的ADC,并且在学习巩固一下IIO驱动。ADC简介ADCADC,AnalogtoDigitalConverter的缩写,中文名称模数转换器。它可以将外部的模拟信号转化成数字信号。对于GPIO口来说高于某个电压值,它读出来的只
努力自学的小夏
·
2023-11-14 06:33
linux学习
linux
驱动开发
stm32
笔记
学习
正点原子嵌入式linux
驱动开发
——Linux IIO驱动
工业场合里面也有大量的模拟量和数字量之间的转换,也就是常说的ADC和DAC。而且随着手机、物联网、工业物联网和可穿戴设备的爆发,传感器的需求只持续增强。比如手机或者手环里面的加速度计、光传感器、陀螺仪、气压计、磁力计等,这些传感器本质上都是ADC,注意查看这些传感器的手册,会发现他们内部都会有个ADC,传感器对外提供IIC或者SPI接口,SOC可以通过IIC或者SPI接口来获取到传感器内部的ADC
努力自学的小夏
·
2023-11-14 06:33
linux学习
linux
驱动开发
stm32
学习
笔记
正点原子嵌入式linux
驱动开发
——Linux DAC驱动
上一篇笔记中学习了ADC驱动,STM32MP157也有DAC外设,DAC也使用的IIO驱动框架。本章就来学习一下如下在Linux下使用STM32MP157上的DAC。DAC简介ADC是模数转换器,负责将外界的模拟信号转换为数字信号。DAC刚好相反,是数模转换器,负责将SOC的数字信号转换为模拟信号。STM32MP157的DAC模块(数字/模拟转换模块)是12位数字输入,电压输出型的DAC。DAC可
努力自学的小夏
·
2023-11-14 06:00
linux学习
linux
驱动开发
学习
笔记
stm32
64位
驱动开发
中结构体8字节对齐
在写枚举文件驱动的过程发现获取到的系统句柄总数是正确的,但是在判断句柄类型为28,即文件句柄的时候发生了严重的错误,导致很多进程中的打开的句柄无法获取,找了很多原因,最后发现是因为驱动在定义结构体的时候按1字节对齐,导致发生了错误。驱动中的结构在64位WIN7下应该是8字节对齐,32位下为4字节对齐。切记!status=ZwQuerySystemInformation(SystemHandleIn
yufengly1984
·
2023-11-14 02:38
嵌入式(
驱动开发
)(I2C总线式
驱动开发
)
一、I2C总线背景知识SOC芯片平台的外设分为:一级外设:外设控制器集成在SOC芯片内部二级外设:外设控制器由另一块芯片负责,通过一些通讯总线与SOC芯片相连Inter-IntegratedCircuit:字面意思是用于“集成电路之间”的通信总线,简写:IIC(或者I2C)i2c传输的要点就是:传输一个字节后面必然紧跟一个"响应"信号----应答信号.这个响应信号可能来自主机,或者是从机,具体是谁
嵌入式学习者。
·
2023-11-13 22:12
Linux
驱动以及裸机
驱动开发
单片机
嵌入式硬件
linux驱动之等待队列
阻塞和非阻塞IO是Linux
驱动开发
里面很常见的两种设备访问模式,在编写驱动的时候一定要考虑到阻塞和非阻塞。
我来挖坑啦
·
2023-11-13 22:51
java
开发语言
2.1 Windows
驱动开发
:内核链表与结构体
在Windows内核中,为了实现高效的数据结构操作,通常会使用链表和结构体相结合的方式进行数据存储和操作。内核提供了一个专门用于链表操作的数据结构LIST_ENTRY,可以用来描述一个链表中的每一个节点。使用链表来存储结构体时,需要在结构体中嵌入一个LIST_ENTRY类型的成员变量,用来连接相邻的节点。通过一些列链表操作函数,如InitializeListHead、InsertHeadList、
微软技术分享
·
2023-11-13 18:25
《灰帽黑客:攻守道》
windows
驱动开发
链表
2.2 Windows
驱动开发
:内核自旋锁结构
提到自旋锁那就必须要说链表,在上一篇《内核中的链表与结构体》文章中简单实用链表结构来存储进程信息列表,相信读者应该已经理解了内核链表的基本使用,本篇文章将讲解自旋锁的简单应用,自旋锁是为了解决内核链表读写时存在线程同步问题,解决多线程同步问题必须要用锁,通常使用自旋锁,自旋锁是内核中提供的一种高IRQL锁,用同步以及独占的方式访问某个资源。在了解自旋锁之前需简单介绍一下内核中如何分配内存,一般而言
微软技术分享
·
2023-11-13 17:35
《灰帽黑客:攻守道》
windows
驱动开发
linux驱动程序的好书,好书推荐----Linux
驱动开发
入门与实战
内容简介本书由浅入深,全面、系统地介绍了linux
驱动开发
技术,提供了大量实例供读者实战演练。另外,作者在实例讲解中详细分析了各种重要的理论知识,让读者能够举一反三。本书共分3篇。
AU茄子
·
2023-11-13 09:10
linux驱动程序的好书
Linux内核驱动的学习方法
学习方法学习Linux内核
驱动开发
需要掌握一定的操作系统和编程知识,以及深入了解Linux内核的工作原理。
代码改变世界ctw
·
2023-11-13 07:43
学习方法
linux
内核
驱动
嵌入式
arm
001-从LINUX系统开发转为内核开发的思想转变
工作思路上的差异系统开发:理解业务抽象业务逻辑和对象设计程序流程和算法编码:基本上业务逻辑代码需要从0开始构建内核
驱动开发
理解硬件原理图(硬件的数量和连接方式)必要时需要了解芯片手册和各种bus协议(如
EniacCheng
·
2023-11-13 05:01
linux
《linux设备
驱动开发
详解》插图汇总
目录说明:第一章linux设备驱动概述及开发环境构建图1.1无操作系统时硬件、设备驱动和应用软件的关系图1.4硬件、驱动、操作系统和应用程序的关系图1.5Linux设备驱动与整个软硬件系统的关系第二章驱动设计的硬件基础图2.2冯·诺依曼结构与哈佛结构编辑图2.3改进的哈佛结构图2.4处理器分类图2.5典型的类SRAM接口图2.6双端口RAM图2.8存储器分类图2.9RS-232C串口电路原理图2.
小可嵌入式
·
2023-11-13 04:55
Linux驱动编程
驱动开发
linux
网络协议
linux
驱动开发
—— 6、linux 设备驱动模型
来自朱有鹏老师的课堂笔记,如有侵权,马上删参考博文:设备驱动模型底层架构LINUX设备驱动模型底层架构及组织方式设备驱动模型一、linux设备驱动模型简介二、设备驱动模型的底层架构1、kobject结构体2、kobj_type结构体3、kset三、总线式设备驱动组织方式1、总线2、设备3、驱动4、类5、设备驱动模型和设备驱动框架的关系一、linux设备驱动模型简介1、什么是设备驱动模型设备驱动模型
想文艺一点的程序员
·
2023-11-13 04:55
#
5.linux驱动开发
内核
Linux
驱动开发
——PCI设备驱动
目录一、PCI协议简介二、PCI和PCI-e三、LinuxPCI驱动四、PCI设备驱动实例五、总线类设备
驱动开发
习题一、PCI协议简介PCI(PeripheralComponentInterconnect
宇努力学习
·
2023-11-13 03:23
驱动开发
linux
驱动开发
总线驱动开发
PCI
bootcmd 和 bootargs 环境变量
内容来自《【正点原子】I.MX6U嵌入式Linux
驱动开发
指南V1.5.2.pdf》uboot中有两个非常重要的环境变量bootcmd和bootargs,接下来看一下这两个环境变量。
【ql君】qlexcel
·
2023-11-12 17:05
嵌入式Linux
驱动开发
bootcmd
bootargs
uboot
U-Boot
linux
驱动开发
篇(一)—— Linux 内核模块介绍
linux系列目录:linux基础篇(一)——GCC和Makefile编译过程linux基础篇(二)——静态和动态链接ARM裸机篇(一)——i.MX6ULL介绍ARM裸机篇(二)——i.MX6ULL启动过程ARM裸机篇(三)——i.MX6ULL第一个裸机程序ARM裸机篇(四)——重定位和地址无关码ARM裸机篇(五)——异常和中断linux系统移植篇(一)——linux系统组成linux系统移植篇(
Aladdin_KK
·
2023-11-12 12:09
linux
linux
驱动开发
arm开发
Linux 嵌入式
驱动开发
异步通知
文章目录1.概念2.通知流程3.驱动4.APP1.概念信号类似于硬件层面的中断,相当于软件层次上的中断不同的信号相当于中断号,分别需要实现一个信号处理函数不可被忽略信号:SIGKILL(9)和SIGSTOP(19)2.通知流程应用程序实现并注册一个信号处理函数应用程序将current进程号告知内核应用程序获取当前进程状态并开启当前进程异步通知驱动程序初始化fasync结构体满足通知条件,如:中断发
Embd点灯小萌新_tao
·
2023-11-12 08:55
arm
嵌入式硬件
stm32
c语言
linux
驱动开发
学习笔记二十一:异步通知
一、异步通知简介我们首先来回顾一下“中断”,中断是处理器提供的一种异步机制,我们配置好中断以后就可以让处理器去处理其他的事情了,当中断发生以后会触发我们事先设置好的中断服务函数,在中断服务函数中做具体的处理。比如我们在裸机篇里面编写的GPIO按键中断实验,我们通过按键去开关蜂鸣器,采用中断以后处理器就不需要时刻的去查看按键有没有被按下,因为按键按下以后会自动触发中断。同样的,Linux应用程序可以
耐心的小黑
·
2023-11-12 08:25
#
Linux驱动开发学习笔记
linux
嵌入式
DevOps:定义汽车软件新开发模式
汽车的系统开发以模型
驱动开发
为主(Model-basedsystemsengi
迪捷软件
·
2023-11-12 07:41
SkyEye
devops
汽车
敏捷开发实践经验分享
目录敏捷开发是什么敏捷开发是什么-核心思想敏捷开发怎么做敏捷开发怎么做——Scrum敏捷开发怎么做——用户故事(需求表示方法)敏捷开发怎么做——测试
驱动开发
敏捷开发怎么做——Backlog(任务板)敏捷开发怎么做
chenxy02
·
2023-11-12 03:42
项目管理
scrum
经验分享
驱动开发
Linux-
系统调优-常见命令
目录1、uptime2、/proc/loadavg文件:获取平均负载的信息3、free命令:查看内存使用的详细情况基础信息buffer/cache介绍4、SWAP交换分区基础信息如何定义使用SWAP交换分区5、vmstat:性能监控工具
不会编程的猫星人
·
2023-11-11 18:50
数据库运维
linux
运维
服务器
uboot -
驱动开发
- dw watchdog
说明公司SOC使用的watchdog模块是新思(Synopsys)的IP。需求用户有时会在uboot/kernel中做些开发,新增一些功能(OTA升级等),可能会出现uboot/kernel启动崩溃甚至设备死机等问题,需要在uboot启动阶段开启watchdog监控设备运行实现异常后复位。实现前提:dtswatchdog节点配置ok。由于历史原因,根据是否支持DM(Drivermodel),ubo
leon.liao
·
2023-11-11 08:09
uboot
驱动开发
uboot
linux 阻塞IO
1.阻塞和非阻塞IO是Linux
驱动开发
里面很常见的两种设备访问模式,在编写驱动的时候一定要考虑到阻塞和非阻塞。这里的“IO”并不是单片机的的“GPIO”(引脚)。
_十年饮冰难凉热血
·
2023-11-11 07:17
linux驱动
linux
驱动开发
运维
Linux之阻塞与非阻塞IO
①select②poll③epoll三、驱动程序阻塞与非阻塞1.等待队列(阻塞)①等待队列头②等待队列项③添加/删除队列④等待唤醒⑤等待事件2.poll(非阻塞)四、结尾一、阻塞与非阻塞IO简介阻塞和非阻塞IO是Linux
驱动开发
里面很常见的两种设备访问模式
风间琉璃•
·
2023-11-11 07:43
#
Linux驱动开发
驱动开发
Linux-
用户与用户组,权限
1.用户组管理(以下命令需root用户执行)①创建用户组groupadd用户组名②删除用户组groupdel用户组名2.用户管理(以下命令需root用户执行)①创建用户useradd[-g-d]用户名>-g:指定用户的组,不指定-g,会创建一个同名组并自动加入>-d:指定用户HOME路径,不指定,HOME目录默认在:/home/用户名②删除用户userdel[-r]用户名>-r:删除用户的HOME
单行梦想家
·
2023-11-11 06:58
linux
linux
运维
服务器
Linux-
命令行命令
注:[]的内容说明是可选的1.lsls[-a-l-h][Linux路径]>如果没有参数,就展示当前工作目录的内容>-a:all的意思,即列出所有文件(包含隐藏文件/文件夹)>-l:以列表形式展示内容,并显示更多信息>-h(必须与-l同时使用):以易于阅读的形式,列出文件大小,如:K,M,G2.cd(changedirectory)cd[Linux路径]>cd+参数:表示切换到哪个目录>cd不加参数
单行梦想家
·
2023-11-11 06:58
linux
linux
运维
服务器
RV1126 led
驱动开发
一、前言如何VSCode搭建Linux
驱动开发
环境参考:VisualStudioCode搭建linux
驱动开发
环境_vscodelinuxdriver驱动配置-CSDN博客Linux
驱动开发
入门(二)VScode
ju太郎
·
2023-11-11 06:39
驱动开发
1024程序员节
UVC
驱动开发
目录什么是UVCUVC规范UVC设备的枚举过程什么是UVCUSBVIDEOCLASS现在即插即用,不需要安装驱动的usb摄像头,基本上都符合这个标准。windowslinuxandroid主流系统都包含了对UVC的支持。UVC规范是USB规范的一部分。目前USB文档网站上是1,5https://www.usb.org/documents?search=uvc&type%5B%5D=55&items
内归因
·
2023-11-11 02:45
uvc
驱动开发
基础
1、Hello驱动我们应用程序使用open函数的时候,会调用内核的sys_open函数,然后接下来1、然后打开普通文件的话会使用文件系统操作硬件,2、要是打开驱动文件,会使用驱动程序对应的drv_open函数怎么写驱动程序我们驱动对应的drv_open等函数写好了,存放在file_operation结构体中将结构体告诉内核,也就是将结构体通过一个函数注册到内核中(注册的时候会设定主设备号,可自己设
(ノへ ̄、)。
·
2023-11-10 18:55
linux驱动开发
物联网
【I.mx6ull】之-----代码的编译过程
本博文记录【I.mx6ull】之-----代码的编译过程文章目录1.I.mx6ull启动分析2.汇编语言
驱动开发
板代码编译过程2.1将汇编语言依次编译为.bin文件的过程2.2Makefile文件的必要性
Intoxicated_Rookie
·
2023-11-10 10:20
STM系列
嵌入式C
单片机
c语言
【软件测试】自动化测试战零基础教程——Python自动化从入门到实战(完结)
整理不易,希望对各位学习软件测试能带来帮助软件测试知识持续更新第十章行为
驱动开发
BDD框架lettuce入门第一节、安装与例子安装例子(阶乘)第二节、lettuce解析第三节、添加测试场景第四节、lettuce
测试-码
·
2023-11-10 01:47
自动化测试
基础
软件测试
python
自动化
ruby
selenium
功能测试
正点原子嵌入式linux
驱动开发
——Linux Regmap驱动
在前面学习I2C和SPI驱动的时候,针对I2C和SPI设备寄存器的操作都是通过相关的API函数进行操作的。这样Linux内核中就会充斥着大量的重复、冗余代码,但是这些本质上都是对寄存器的操作,所以为了方便内核开发人员统一访问I2C/SPI设备的时候,为此引入了Regmap子系统,本章就来学习一下如何使用RegmapAPI函数来读写I2C/SPI设备寄存器。RegmapAPI简介RegmapLinu
努力自学的小夏
·
2023-11-09 19:31
linux学习
linux
驱动开发
stm32
学习
笔记
Linux
驱动开发
——USB设备驱动
目录一、USB协议简介二、LinuxUSB驱动三、USB设备驱动实例一、USB协议简介USB(UniversalSerialBus,通用串行总线)正如它的名字一样,是用来连接PC外设的一种通用串行总线,即插即用和易扩展是它最大的特点。所谓即插即用,是PC不需要断电就可以连接外设,并且不需要在硬件上通过跳线来配置设备。易扩展则是它可以很容易扩展出更多的接口来连接更多的外设。USB的协议主要经过了US
宇努力学习
·
2023-11-09 19:01
驱动开发
linux
驱动开发
嵌入式
USB
vue-cli 项目集成 Jest 单元测试
②、Jasmine是Jest的底层库,助攻BDD(即行为
驱动开发
)断言库与异步测试的自动化测试框架,没有外部依赖。运行在node.js上,没有外部库,所以可以兼容所有的框架和库,但配置过程更加繁琐,使
倔强的小绵羊
·
2023-11-09 14:08
Jest
单元测试
Vue
Test
Utils
cortex-A7核 中断实验(按键中断实验)
1.选择按键触发方式下降沿2.解决消抖的方法1)ARM中:延时消抖2)linux
驱动开发
:定时器函数3.框图内部流程框图:需要RCCGPIOEXTIGIC章节中断触发流程:4.RCC章节1)使能GPIOF
林黛玉倒拔垂杨柳~
·
2023-11-09 09:10
linux
ubuntu
单片机
Linux - 实现一个简单的 shell
前言之前我们对进程的替换,进程地址空间等等的概念进行了说明,本篇博客会基于这些知识点来实现一个简单的shell,如有疑问,可以参考下述博客:
Linux-
进程程序替换-C/C++如何实现与各个语言之间的相互调用
chihiro1122
·
2023-11-09 07:49
linux
服务器
Linux-
文件远程拷贝命令scp、sftp的使用
文章目录scpsftp总结scpscp:远程拷贝,底层通过ssh协议远程连接到其他的机器上,复制文件scp用法:scp源文件目标文件示例1拷贝远程机器/lianxi2目录下的所有文件到本地/tmp目录下拷贝文件夹要接-r表示递归拷贝
[email protected]
:/lianxi2/tmp示例2拷贝本地/lianxi/0721目录下的所有文件到远程机器/lianxi2目录下scp/li
失眠大艺术家
·
2023-11-09 03:09
Linux
linux
服务器
ssh
关于“tdd”和“bdd”
一.定义TDD(Test-DrivenDevelopment):测试
驱动开发
是敏捷开发中一项核心的实践和技术,是一种设计方法论。
网友小宋
·
2023-11-09 00:10
TDD 与 BDD 仅仅是语言描述上的区别么?
ATDD:AcceptanceTestDrivenDevelopment(验收测试
驱动开发
)这是一种在编码开始之前将客户带入测试设计过程的技术。
weixin_34010949
·
2023-11-09 00:38
测试
驱动开发
对ATDD的理解
对ATDD的理解ATDD:英文全称是:AcceptanceTestDrivenDevelopment,也就是常常听到的验收测试
驱动开发
。那么,究竟什么才是ATDD呢?
uestcylg
·
2023-11-09 00:07
浅谈TDD、BDD、ATDD、DDD的区别
四个开发模式意思:TDD:测试
驱动开发
(Test-DrivenDevelopment)BDD:行为
驱动开发
(BehaviorDrivenDevelopment)ATDD:验收测试
驱动开发
(AcceptanceTestDrivenDevelopment
人生苦短,python陪伴
·
2023-11-09 00:00
框架和设计模式
TDD
BDD
ATDD
DDD
说起BDD,你会想到什么?
在刚接触BDD(BehaviorDrivenDevelopment,行为
驱动开发
)的时候,我以为就是用Cucumber这样的工具来编写场景用例,从而实现自动化测试,甚至很长时间分不清BDD和ATDD(Acceptancetestdrivendevelopment
BY林子
·
2023-11-08 23:24
java
编程语言
大数据
项目管理
python
Linux-
安装Jenkins 超细讲解
目录1.安装SUNJDK2.添加Jenkins库到yum库,添加完成后将从这里下载安装。3.Jenkins相关配置:3.1Jenkins端口配置,改成自己需要的端口:3.2Jenkinsjavabin命令路径配置3.3设置Jenkins堆内存3.4设置插件更新中心镜像4.启动Jenkins1.安装SUNJDK参见我的博客:LinuxCentOS-安装Java2.添加Jenkins库到yum库,添加
LeoSong121
·
2023-11-08 19:36
Linux
CI/CD
linux
驱动开发
接口
内核共提供了三个函数来注册一组字符设备编号,这三个函数分别是register_chrdev_region()、alloc_chrdev_region()和register_chrdev()。register_chrdev是老接口,动态注册和静态注册都是这一个接口,通过判断给定的主设备号是否为0来进行区别,0表示动态注册,否则静态注册register_chrdev_region/alloc_chrd
l-coder-dd
·
2023-11-08 17:46
linux
linux-
(from_timer)-定时器的升级
查看linux版本:catproc/version使用旧主板型号(SSD202D)4.9.84使用新主板型号(RV1126)4.19.111============================================================================移植yaffs驱动时发现内核对定时器进行了升级,很扯淡啊!多亲切多易懂啊!你看这个回调函数,看不懂啊,花里胡
旋风旋风
·
2023-11-08 10:25
rv1126-rv1109
linux
rv1126-rv1109
linux-
网络基础概念与socket编程
文章目录学习目标1网络基础概念1.1协议1.2分层模型1.3数据通信过程1.4网络应用程序的设计模式1.5以太网帧格式1.6网络名词术语解析(自行阅读扫盲)2SOCKET编程2.1socket编程预备知识2.2socket编程主要的API函数介绍2.2.1intsocket(intdomain,inttype,intprotocol);2.2.2intbind(intsockfd,conststr
琰婧
·
2023-11-08 07:46
#
linux-网络编程
Linux-
基础了解-03-Shell 教程/Shell 变量/Shell 传递参数/Shell 数组/Shell 基本运算符/Shell echo命令
@Shell教程/Shell变量/Shell传递参数/Shell数组/Shell基本运算符/Shellecho命令一、Shell教程Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。KenThompson的sh是第一种UnixShell,
Xiaowu2048
·
2023-11-07 23:55
linux
bash
服务器
上一页
8
9
10
11
12
13
14
15
下一页
按字母分类:
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
其他