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驱动入门笔记
【百问网智能家居】学习嵌入式,了解裸机与RTOS的开发模式
裸机方向的难度较低,岗位多,待遇一般;RTOS难度上升,程序复杂而且要求多,岗位也多,待遇高点;
linux驱动
比较底层一点,需要一定的知识储备,知道如何移植和编写驱动,理解l
pupuhetu
·
2023-04-02 19:40
操作系统
freedos
stm32
arm
arm裸机与嵌入式
linux驱动
开发,如何编写基于ARM的裸机程序和基于Linux的驱动程序?...
在嵌入式开发中,ADC应用比较频繁,本文主要讲解ADC的基本原理以及如何编写基于ARM的裸机程序和基于Linux的驱动程序。ARM架构:Cortex-A9Linux内核:3.14在讲述ADC之前,我们需要先了解什么是模拟信号和数字信号。模拟信号主要是与离散的数字信号相对的连续的信号。模拟信号分布于自然界的各个角落,如每天温度的变化,而数字信号是人为的抽象出来的在时间上不连续的信号。电学上的模拟信号
带刺的花仙子
·
2023-04-02 18:35
Linux驱动
开发与裸机的区别
裸机驱动开发回顾底层,跟寄存器打交道,有些MCU提供了库
Linux驱动
开发思维Linux下驱动开发直接操作寄存器不现实。根据Linux下的各种驱动框架进行开发。
“逛丢一只鞋”
·
2023-04-02 18:57
i.MX6
内核
linux
嵌入式
第四期
Linux驱动
开发篇 第一讲
Linux驱动
开发和裸机开发的区别 第二讲 字符设备驱动开发基础实验
第一讲
Linux驱动
开发和裸机开发的区别一、裸机驱动开发回顾1、底层,跟寄存器打交道,有些MCU提供了库。2、二、
Linux驱动
开发思维1、Linux下驱动开发直接操作寄存器不现实。
m0_63005993
·
2023-04-02 18:14
驱动开发
linux
运维
linux驱动
开发(2)开发流程
1.驱动驱动其实就是获取外设数据或者控制外设,将数据给应用层,应用层进行处理,显示等等操作。驱动写好了,注入到内核之后,我们还需要去写简单的测试应用程序去检测程序是否正确。裸机开发,驱动和测试是写在一起的,这里有可以体现出驱动开发和裸机开发的不同之处了。驱动程序表现为就是一个/dev/xx文件,这个文件就是控制外设的文件。比如led,通过write写入1,点亮,写0关闭。1.1.开发流程在Linu
@seven@
·
2023-04-02 18:42
嵌入式开发
linux驱动开发
驱动开发
什么是裸机编程,
linux驱动
开发,linux应用编程
就拿嵌入式Linux硬件平台下(常见的有可以跑linux的arm开发板)的软件开发来说,我们大可将编程分为三种,分别为裸机编程、
Linux驱动
编程以及Linux应用编程。
岁月神偷656
·
2023-04-02 18:32
驱动开发
linux
arm开发
Linux驱动
开发与裸机开发区别
Linux驱动
开发与裸机开发区别裸机驱动开发回顾
Linux驱动
开发思维
Linux驱动
开发分类裸机驱动开发回顾1、底层。
奶茶拌火锅
·
2023-04-02 18:20
Linux
驱动开发
linux
运维
区块链基础
入门笔记
一
比特币用了密码学的两个功能,一个是哈希,一个是签名哈希碰撞:例有两个数,x和y,若x!=y,但h(x)==h(y),则称为哈希碰撞,哈希碰撞是无法避免的,因为输入空间是大于输出空间的哈希函数具有的重要性质:collisionresistance(抗碰撞性):即没有什么人为高效的方法去制造碰撞,只能穷举输入空间所有数通过抗碰撞性质,即可证明可以通过hash函数判断数是否被篡改,例h(m),当m被人为
gronkie
·
2023-04-02 15:08
区块链
区块链
【正点原子Linux连载】第七十一章 Linux 4G通信实验 -摘自【正点原子】I.MX6U嵌入式
Linux驱动
开发指南V1.0
1)实验平台:正点原子阿尔法Linux开发板2)平台购买地址:https://item.taobao.com/item.htm?id=6036727444342)全套实验源码+手册+视频下载地址:http://www.openedv.com/thread-300792-1-1.html3)对正点原子Linux感兴趣的同学可以加群讨论:9354467414)关注正点原子公众号,获取最新资料更新第七十
正点原子
·
2023-04-02 14:31
LINUX
linux
android
KC705E 增强版 基于FMC接口的 Kintex-7 XC7K325T PCIeX8 接口卡解决方案
2FFG900芯片,pin_to_pin兼容FPGAXC7K410T-2FFG900,支持PCIeX8、64bitDDR3容量2GByte,HPC的FMC连接器,板卡支持各种接口输入,软件支持windows,
Linux
hexiaoyan827
·
2023-04-02 12:01
2019
XC7K325T
FPGAXC7K325T
FPGA板卡
XC7K325T板卡
FPGAXC7K410T
国产化7K325T板卡学习资料: 基于国产化Ch-7K325T 的 FMC接口PCIe卡 国产化板卡
pin_to_pin兼容FPGAXC7K410T-2FFG900,支持PCIeX8、64bitDDR3容量2GByte,HPC的FMC连接器,板卡支持各种接口输入,并配有千兆以太网接口,软件具有windows,
Linux
hexiaoyan827
·
2023-04-02 12:30
2021
国产化板卡
软件无线电处理平台
图形图像硬件加速器
Net
FPGA
国产化7K325T板卡
kubernetes快速
入门笔记
01
kubernetes快速
入门笔记
01第一章Kubernetes简介本质上说Kubernetes是云原生微服务(cloud-nativemicroservice)应用的编排器(orchestrator)1.1
AnalogElectronic
·
2023-04-02 07:52
kubernetes
java
容器
Linux 驱动之内核相关基础知识学习
知识图Linux内核模块一.初识Linux设备驱动什么是
Linux驱动
并认识Linux源码二.编写第一个驱动helloworl最简单的
Linux驱动
结构三.如何编写驱动程序1.将驱动编译成内核模块1.Makefile
weixin_45767368
·
2023-04-02 06:36
linux
linux
学习
驱动开发
linux驱动
开发,vscode环境配置
背景在windows下使用VScode编辑器,源码存放在远程Linux服务器中,编译也在Linux中进行,windows下只编辑+查看。1ssh远程登录先安装ssh插件:Remote-ssh,点击右下角箭头,输入账号密码后ssh登录。注意:首次连接极大可能出现连接失败,报timeout的错误,修改下ssh的timeout参数即可2ssh免密码登录把ssh的公钥和私钥放在C:\Users\用户名.s
寒暄12233
·
2023-04-02 06:23
vscode
linux
驱动开发
嵌入式
编辑器
Windows端通过Vscode 在远程服务器开发
Linux驱动
下载与安装官网下载安装同意此协议选择安装位置勾选“创建桌面快捷方式”,“code注册为受支持的文件类型的编辑器”,“添加到PATH(重启后生效)”使用配置中文快捷键Ctrl+Shift+P,然后输入"ConfigureDisplayLanguage",然后选择“中文简体”安装插件Remote-SSH:允许您使用任何带有SSH服务器的远程机器作为开发环境。IncludeAutocomplete:当键
weixin_45767368
·
2023-04-02 06:39
linux
Tool
linux
服务器
windows
RIFFA之
LINUX驱动
学习之二:riffa.c文件
因为riffa.c包含进来了riffa.h和riffa_driver.h,我们分别贴出来这三个文件:riffa_driver.h//----------------------------------------------------------------------//Copyright(c)2016,TheRegentsoftheUniversityofCaliforniaAll//rig
mcupro
·
2023-04-01 22:29
FPGA
嵌入式硬件
fpga开发
硬件工程
RIFFA之
LINUX驱动
学习之三:riffa_driver.c文件
上面分析到基本的读写操作通过ioctrl来调用对应的driver驱动的实现。riffa_driver.c比较大,52K,这里补贴全部源码,分析哪一段就截图哪一段。里面内容比较多,很多是linux套路化的代码,我们通过ioctrl传递的参数来搜索,直奔主题.我们搜索IOCTL_SEND,找到处理ioctrl的分支程序段:在处理IOCTL_SEND的时候我们看到实现用户数据拷贝到内核空间之后调用了ch
mcupro
·
2023-04-01 22:29
OpenOFDM_RX
嵌入式硬件
fpga开发
硬件工程
黑马python
入门笔记
(部分)
综合应用—名片管理系统框架搭建新建main.py文件保存主程序代码:程序入口新建tools.py文件所以功能函数:对名片的增删改查TODO注释:用于标记需要去做的工作#TODO(名字)显示功能菜单importcard_tooswhileTrue:#TODO显示功能菜单card_toos.show_menu()action_str=input("请选择操作:")print("您选择的操作是【%s】"
贝塔/
·
2023-04-01 19:30
python
pycharm
开发语言
迅为iTOP-RK3568开发板使用手册目录
降低学习门槛02深入浅出、通俗易懂03思路清晰、语言风趣04配套视频+详细文档+QQ群答疑全方位保证学习质量05基础知识+思路引导的教学方式授之以鱼更授之以渔06本教程包括入门篇、Linux系统/编程篇、
Linux
mucheni
·
2023-04-01 19:15
RK3568开发板
3568开发板
微信小程序
入门笔记
4(回顾app.josn)
app.josn一、页面配制二、全局配置三、代码汇总一、页面配制二、全局配置三、代码汇总{"pages":["pages/index/index","pages/logs/logs","pages/index2/index2"],"window":{"backgroundTextStyle":"dark","navigationBarBackgroundColor":"#0094ff","navi
晨沉宸辰
·
2023-04-01 10:10
微信小程序
js
app
小程序
Linux驱动
开发——内核模块
目录内核模块的由来第一个内核模块程序内核模块工具将多个源文件编译生成一个内核模块内核模块参数内核模块依赖关于内核模块的进一步讨论习题内核模块的由来最近一直在玩那些其它的技术,眼看快暑假了,我决定夯实一下我的驱动方面的技能,迎接我的实习,找了一本书,接下来就跟着这本书学了先来看第二章,内核模块Linux是宏内核(或单内核)的操作系统的典型代表,它和微内核(典型的代表是Windows操作系统)的最大区
宇努力学习
·
2023-04-01 05:09
驱动开发
Linux
内核
嵌入式
SSM模式学习路线-----[Spring
入门笔记
]
在学习之前要知道啥是SSM,他是Spring,SpringMVC跟Mybatis的简称;按照字母顺序我们应该先学习SpringSpring框架体系本次笔记内容主要是核心框架,AOP,ASPECT以及transactionSSM模式Spring什么是Spring?控制反转---IOC依赖注入---DIIOC与DI给开发带来的好处--->IOC/DI的实现Spring中Bean详解bean的配置bea
CodeMartain
·
2023-04-01 04:42
spring
mybatis
maven
java
intellij-idea
Makefile从入门到....
本文参考正点原子的I.MX6U嵌入式
Linux驱动
开发指南原子哥在线教学:www.yuanzige.com论坛:www.openedv.com文章目录Makefile的引入Makefile语法Makefile
埋头干饭ing
·
2023-03-31 23:29
驱动开发
驱动开发
python数学表达式_Python
入门笔记
——(1)数字与表达式
一、算术运算整除://取余:%乘方:**(a**b=pow(a,b))十六进制表示:0x...,八进制表示0...round(x[,n]):对x从小数点第n位取四舍五入结果,默认n为0。>>>printround(50.268)50>>>printround(50.268,2)50.27在python2中,‘/’为一般除法,即当除数和被除数都是整数时相当于‘//’,当除数和被除数至少有一个是浮点数
weixin_39998998
·
2023-03-31 23:58
python数学表达式
linux驱动
之中断
但最近系统地对中断的硬件及软件做了一个梳理后,对中断的认识提升了不少,而这也有助于理解
linux驱动
中的中断处理,提高驱动编程能力。
wipping的技术小栈
·
2023-03-31 22:20
linux c 嵌入式软件工程师面试笔试,嵌入式软件工程师笔试面试指南-C/C++
其中,八股文又分成了C/C++,数据结构与算法分析,Arm体系与架构,
Linux驱动
开发,操作系统,网络编程,名企笔试真题等七个部分。本次更新,对于部分不合适的内容进行了删减,新增了C++相关内容。
Dextear
·
2023-03-31 20:06
linux
c
嵌入式软件工程师面试笔试
Python3
入门笔记
(1) —— windows安装与运行
亲测可用,若有疑问请私信Python的设计哲学是“优雅”、“明确”、“简单”。这也是我喜欢Python的理由之一Python的安装:1.进入Python官方网站下载安装包点击导航栏的Downloads会自动识别你的windows系统你会看到Python3.6.2和Python2.7.13(32位系统)的安装包注:Python3以后版本不再向Python2进行兼容,所有如果你是单纯为了学新东西建议直
PrinciplesMan
·
2023-03-31 13:46
#
Python
python
开发语言
[Android]Audio 架构 解析
blog.csdn.net/marshal_zsx/article/details/81012137Android多媒体系统纵向跨越了Android系统的所有4个层次:Java应用程序层、Java框架层、本地代码层、
Linux
As新晋小白
·
2023-03-31 12:48
linux驱动
包括centos吗,centOS搭建
linux驱动
开发环境
更改软件的默认安装路径1、win+R,启动管理器,输入regedit2、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion3、ProgramFilesDir右击,修改,数值数据:D:\ProgramFileslinux常用命令及使用技巧01、date-printorsetthesystemdateandtime02、stty-c
歡瑜
·
2023-03-31 10:19
mongodb
入门笔记
MongoDB官方文档:https://docs.mongodb.com/中文文档:https://www.mongodb.org.cn/操作文档:https://www.qikegu.com/docs/3283mongoDB的生态、理念非常先进而且成熟、但是mongoDB不仅有开源版本,还有企业版本。所以有部分公司比较担心,哪天无法使用mongoDB了。所以也会产生一些替代产品。DynamoDB
生而为虫
·
2023-03-31 02:21
python
数据库
database
mongodb
skynet
入门笔记
入门观看博客笔记:博客笔记:第五篇关于服务别名别名注册与查询接口:在skynet中,服务别名可以分为两种:一种是本地别名,本地别名只能在当前skynet节点使用,本地别名必须使用.开头,例如:.testalias一种是全局别名,全局别名可以在所有skynet中使用,全局别名不能以.开头,例如:testalias取别名:1、给当前服务定一个别名可以是全局别名也可以是本地别名skynet.regist
原来只是一阵风
·
2023-03-30 20:17
lua
开发语言
游戏
2021-11-26 SQL学习3
课程资料网盘链接:https://pan.baidu.com/s/1-jOwaXWArtv8h21B0-uWGg提取码:wsraSQL零基础
入门笔记
:https://www.mubucm.com/doc
OD张
·
2023-03-30 16:54
Linux驱动
开发之并发与竞争实验【完整教程】
Linux系统是个多任务操作系统,会有多个任务同时存在的可能性,这些任务的内存可能相互覆盖,导致内存数据混乱,并发访问带来的问题就是竞争,会有以下问题导致Linux系统并发产生:①多线程并发访问,这是Linux系统最基本的。②抢占式并发访问,Linux2.6版本后支持抢占。③中断程序并发访问④SMP(多核)核间并发访问1.保护的是什么 一开始写驱动的时候就要考虑并发与竞争,否则写完驱动后不容
拼个世界给自己
·
2023-03-30 12:44
linux
驱动开发
c#
运维
centos
Linux并发与竞争
在
Linux驱动
编写过程中对于并发控制的管理非常重要。一
留小乙
·
2023-03-30 12:06
Linux操作系统
嵌入式
linux
linux驱动
自旋锁
嵌入式
linux驱动
之并发与竞态
并发指的是多个执行单元同时、并行被执行,而并发的执行单元对共享资源(硬件资源和软件上的全局变量、静态变量等)的访问则很容易导致竞态。一,linux系统并发产生的原因很复杂,主要下面几个原因:1、多线程并发访问,linux是多任务(线程)的系统,所以多线程访问是最基本的原因。2、抢占式并发访问,从内核2.6版本开始,linux内核支持抢占,也就是说调度程序可以在任意时刻抢占正在运行的线程,从而运行其
寒听雪落
·
2023-03-30 12:27
驱动_移植_网络
linux
嵌入式硬件
linux驱动
——并发控制
今天的内容回顾的是
linux驱动
开发中,并发控制的使用,那么问题来了,为什么我们需要进行并发控制?想要了解并发控制的话,那么我们先来认识一下什么是并发。什么是并发呢?
河南智学未来
·
2023-03-30 12:24
驱动
驱动
linux驱动开发
并发控制
信号量
原子操作
Linux驱动
_并发与竞争
目录前言一、原子操作1、原子操作函数原子操作API函数:原子位操作API函数:二、自旋锁自旋锁API函数:自旋锁中断API函数:下半部竞争处理函数:三、信号量信号量的API函数:四、互斥体互斥体API函数:前言Linux是一个多任务操作系统,肯定会存在多个任务共同操作同一段内存或者设备的情况,多个任务甚至中断都能访问的资源叫做共享资源。在驱动开发中要注意对共享资源的保护,也就是要处理对共享资源的并
anieoo
·
2023-03-30 12:18
linux驱动
#
IMX6ULL
linux
嵌入式
c语言
linux驱动
概念学习笔记
8,
linux驱动
开发中i2c的开发流程.9,怎么调试
linux驱动
程序?如调试i2c的驱动程序10,
linux驱动
代码中schedule()函数的作用
未燃机智鱼
·
2023-03-30 12:17
嵌入式
linux驱动
arm开发
驱动开发
arm
Linux驱动
学习记录 cpu主频
以imx6ull芯片为例imx6ull芯片主频是792MHz查看cpu信息cat/proc/cpuinfoproc/cpuinfoprocessor:0modelname:ARMv7Processorrev5(v7l)BogoMIPS:3.00Features:halfthumbfastmultvfpedspneonvfpv3tlsvfpv4idivaidivtvfpd32lpaeCPUimple
未燃机智鱼
·
2023-03-30 12:16
嵌入式
linux驱动
arm开发
arm
驱动开发
linux驱动
开发学习笔记十七:并发与竞争
一、并发与竞争并发与竞争简介Linux系统是个多任务操作系统,会存在多个任务同时访问同一片内存区域,这些任务可能会相互覆盖这段内存中的数据,造成内存数据混乱。针对这个问题必须要做处理,严重的话可能会导致系统崩溃。现在的Linux系统并发产生的原因很复杂,总结一下有下面几个主要原因:①、多线程并发访问,Linux是多任务(线程)的系统,所以多线程访问是最基本的原因。②、抢占式并发访问,从2.6版本内
耐心的小黑
·
2023-03-30 12:46
#
Linux驱动开发学习笔记
内核
linux
Linux 并发与竞争
在
Linux驱动
编写过程中对于并发控制的管理非常重要
憨憨的瓜皮
·
2023-03-30 12:15
Linux
linux
linux驱动
并发与竞争 原子操作(atomic_t)自旋锁(spinlock_t)信号量(semaphore)互斥体(mutex)
Linux是一个多任务操作系统,肯定会存在多个任务共同操作同一段内存或者设备的情况,多个任务甚至中断都能访问的资源叫做共享资源,就和共享单车一样。在驱动开发中要注意对共享资源的保护,也就是要处理对共享资源的并发访问。多个任务同时访问同一片内存区域,这些任务可能会相互覆盖这段内存中的数据,造成内存数据混乱。现在的Linux系统并发产生的原因很复杂,总结一下有下面几个主要原因:①、多线程并发访问,Li
狮驼岭的小钻风
·
2023-03-30 12:14
linux
系统
linux
运维
驱动程序
Linux驱动
编程【竞争与并发】
一、什么是并发与竞争Linux系统是一个多任务操作系统,会存在多个任务同时访问一片内存区域,这些任务会互相覆盖这段内存中的数据,造成内存数据混乱,产生Linux系统并发产生的主要原因如下:①、多线程并发访问②、中断程序并发访问③、多核(SMP)核间并发访问④、抢占式并发访问并发访问带来的问题就是竞争,所谓的临界区就是共享数据段,对于临界区必须保证一次只有一个线程访问,也就是要保证临界区是原子访问的
哈哈.txt
·
2023-03-30 12:36
linux
驱动开发
运维
Linux驱动
--并发和竞争
以下,将主要从用法上归纳总结
linux驱动
对并发和竞争处理提供的接口。
eZiMu
·
2023-03-30 12:57
linux驱动
linux驱动
竞争
并发
多核
semaphore
Linux驱动
开发中并发与竞争学习笔记【上】(2)
一、并发与竞争Linux是一个多任务操作系统,肯定会存在多个任务共同操作同一段内存或者设备的情况,多个任务甚至中断都能访问的资源叫做共享资源,就和共享单车一样。在驱动开发中要注意对共享资源的保护,也就是要处理对共享资源的并发访问。并发就是多个“用户”同时访问同一个共享资源。这里举一个例子:你们公司有一台打印机,你们公司的所有人都可以使用。现在小李和小王要同时使用这一台打印机,都要打印一份文件。寅程
混分巨兽龙某某
·
2023-03-30 12:26
Linux驱动开发
linux
驱动开发
c#
Linux驱动
之并发与竞争
文章目录并发与竞争的概念原子操作原子整形操作API函数原子位操作API函数自旋锁自旋锁简介自旋锁结构体自旋锁API函数自旋锁的注意事项读写自旋锁读写自旋锁的API顺序锁顺序锁的APIRCU(Read-Copy-Update)RCU的API信号量信号量API互斥体互斥体的API完成量(Completion)完成量的API并发与竞争的概念Linux系统是个多任务操作系统,会存在多个任务同时访问同一片内
未燃机智鱼
·
2023-03-30 11:08
linux驱动
嵌入式
linux
单片机
stm32
linux驱动
编程(三)--ARM处理器体系架构以及发展历程
ARM处理器体系架构以及发展历程一、CPU(中央处理器)1.遵循冯诺依曼结构2.数字电路:门电路触发器3.有一套自己的指令系统(解释执行)4.不断的,顺序的取指令执行5.哈佛结构(取指令取数据(下条指令的数据)同时执行)指令系统——–相当于软硬件界面RISC(精简指令集)vsCISC(复杂指令集)CISC(复杂指令集)架构:-8051X86RISC(精简指令集)架构:-ARMMIPSPOWERPC
鲁班班班七号
·
2023-03-30 09:25
linux
嵌入式
Linux驱动
程序开发(五)-基于libusb的USB驱动开发
姓名:薛绍宏学号:19020100016学院:电子工程学院转自:https://blog.csdn.net/su1041168096/article/details/78989835?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162722361816780265466801%2522%252C%2522scm%2522%253A
Jetho
·
2023-03-30 08:10
Linux驱动
---休眠与唤醒
Linux-休眠与唤醒文章目录Linux-休眠与唤醒前言一、“休眠-唤醒”机制二、重要的函数及其数据结构wait内核函数唤醒函数三.驱动编程步骤附录(源码)前言当应用程序必须等待某个时间发生,比如必须等待按键被按下时,可以使用“休眠-唤醒”机制,这一机制近似于,你是个早起困难户,想要早起,必须等待闹钟响了,才会起床。提示:以下是本篇文章正文内容,下面案例可供参考一、“休眠-唤醒”机制当应用程序调用
Paranoid-up
·
2023-03-30 04:12
linux驱动V1.0
linux
c语言
数据结构
运维
源码软件
linux open函数_「正点原子Linux连载」第六十章Linux RTC驱动实验
1)实验平台:正点原子Linux开发板2)摘自《正点原子I.MX6U嵌入式
Linux驱动
开发指南》关注官方微信号公众号,获取更多资料:正点原子第六十章LinuxRTC驱动实验RTC也就是实时时钟,用于记录当前系统时间
weixin_39933895
·
2023-03-29 21:43
linux
open函数
linux
read函数
linux执行class文件
上一页
27
28
29
30
31
32
33
34
下一页
按字母分类:
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
其他