一、Linux基础1、任意3种网路操作的Linux命令,并说明她们的涵义1.ifconfig命令
ifconfig 用于查看和配置 Linux 系统的网络接口。
查看所有网络接口及其状态:ifconfig -a 。
使用 up 和 down 命令启动或停止某个接口:ifconfig eth0 up 和 ifconfig eth0 down 。
2.iptables命令
iptables,是一个配置Linux内核防火墙的命令行工具。功能十分强悍linux 驱动,对于我们开发来说,主要把握怎么开放端口即可。
3.netstat命令
Linuxnetstat命令用于显示网路状态。
借助netstat指令可让你得悉整个Linux系统的网路情况。
4.ping命令
Linuxping命令用于测量主机。
执行ping指令会使用ICMP传输合同,发出要求回应的信息,若远端主机的网路功能没有问题,还会回应当信息,从而得悉该主机运作正常。
5.telnet命令
Linuxtelnet命令用于远端登录。
执行telnet指令开启终端机阶段作业,并登陆远端主机。
2、Linux支持的文件类型二、Linux系统编程1、嵌入式操作系统进程间有什么同步通讯服务?
Linux进程间通讯方法主要有
讯号(signal)
讯号量
管线(pipe)、流管线(s_pipe)、有名管线(FIFO)。
消息队列
共享显存
套接字(本地的还有域套接字)
三、ARM1.请问ARM支持哪几种异常类型?异常源分类
要步入异常模式,一定要有异常源,ARM规定有7种异常源:
异常源描述
Reset
上电时执行
Undef
当流水线中的某个非法指令抵达执行状态时执行
SWI
当一个软中断指令被执行完的时侯执行
Prefetch
当一个指令被从显存中预取时,因为某种缘由而失败,假若它能抵达执行状态这个异常才能形成
Data
假如一个预取指令企图存取一个非法的显存单元,这时异常形成
IRQ
一般的中断
FIQ
快速中断
2、请详述哪些是中断?中断发生后,CPU做了什么操作
中断:是指CPU在执行程序的过程中,出现了个别突发风波时CPU必须暂停执行当前的程序linux 下载工具,转去处理突发风波,处理完毕后CPU又返回源程序被中断的位置并继续执行。
中断发生后,ARM核的操作步骤可以总结为4大步3小步。
4大步3小步
保存执行状态:将CPSR复制到发生的异常模式下SPSR中;
模式切换:
保存返回地址:将下一条指令的地址(被打断程序)保存在LR(异常模式下LR_excep)中。
坠入异常向量表:强制设置PC的值为相应异常向量地址,跳转到异常处理程序中。
3、什么是GPIO?
general purpose input/output
GPIO是相对于芯片本身而言的,如某个管脚是芯片的GPIO脚,则该脚可作为输入或输出高或低电平使用,其实某个脚具有复用的功能,即可做GPIO也可做其他用途。
也就是说你可以把这种引脚用来用作任何通常用途的输入输出linux 驱动,比如用一根引脚连到led的一极来控制它的亮灭,也可以用一根(一些)引脚连到一个传感上以获得该传感的状态,这给cpu提供了一个便捷的控制周边设备的途经。假如没有足够多的gpio管脚,在控制一些外围设备时才会力有不逮,这时可采取的方案是使用CPLD来帮助管理。
4、IIC引脚名称及功能?5、IIC的S、P讯号怎样发出?
每次通讯都必须由主设备发起,当主设备决定开始通信时linux运维博客,须要发送开始(S)讯号,须要执行以下动作;
空闲时SCL默认是高电平;
将SDA线从高压电平切换到低压电平;
之后将SCL从高电平切换到低电平。在主设备发送开始条件讯号然后,所有从机虽然处于睡眠模式也将变为活动状态,并等待接收地址位。当双方决定结束通信时,须要发送停止(P)讯号,须要执行以下动作;
先将SDA、SCL设置为低电平;
之后将SCL从低电平切换到高电平;
将SDA从低电平切换到高电平。在停止条件讯号然后,I2C总线即处于空闲状态。
6、SPI引脚名称及功能?
串行时钟线(SCK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI从机选择线SS
(有的SPI插口芯片带有中断讯号线INT或INT、有的SPI插口芯片没有主机输出/从机输入数据线MOSI)
四、驱动1、查看驱动模块中复印信息应当使用哪些命令?怎样查看内核中已有的字符设备的信息?怎样查看正在使用的有什么中断号?
dmesg
lsmod
早已分配的字符设备块设备号信息可以查看下边文件
cat /proc/devices
内核会为每一个驱动模块构建一个文件夹,如下:
ls /sys/module/
cat /proc/interrupts
2、如何自动创建字符设备?并阐述主设备号和次设备号的用途。
创建字符设备命令如下:
mknod chartest c 4 64,
mknod : 创建设备节点
chartest :设备节点名字
c : 字符设备,
4 : 主设备号
64: 次设备号
1)主设备号:主设备号标示设备对应的驱动程序。其实现代的linux内核允许多个驱动程序共享主设备号,但我们看待的大多数设备依然根据“一个主设备对应一个驱动程序”的原则组织。
次设备号:次设备号由内核使用,用于正确确定设备文件所指的设备。依赖于驱动程序的编撰方法,我们可以通过次设备号获得一个指向内核设备的直接表针,也可将此设备号当成设备本地链表的索引。
例如:
硬件平台可能又4个串口,他们驱动非常类似,区别仅仅是个字对应的SFR基地址不同,
那么我们可以让着几个串口共用同一个串口设备驱动
通过次设备号来区别具体是哪一个串口
3、内核中使用共享资源时,为了使之满足互斥条件,一般有什么方式?
原子操作,载流子锁,讯号量,互斥锁
4、Linux内核包括那几个子系统?
Linux内核主要由进程调度(SCHED)、内存管理(MM)、虚拟文件系统(VFS)、网络插口(NET)和进程间通讯(IPC)5个子系统组成
程序员专属长裤
商品直购链接