文档库 最新最全的文档下载
当前位置:文档库 › (一)就业模拟测试题-LINUX驱动、系统底层工程师职位-(含答案)

(一)就业模拟测试题-LINUX驱动、系统底层工程师职位-(含答案)

(一)就业模拟测试题-LINUX驱动、系统底层工程师职位-(含答案)
(一)就业模拟测试题-LINUX驱动、系统底层工程师职位-(含答案)

就业模拟测试题-LINUX驱动、系统底层工程师职位 (

https://www.wendangku.net/doc/ce1572232.html,

本试卷从考试酷examcoo网站导出,文件格式为mht,请用WORD/WPS打开,并另存为doc/docx格式后再使用

试卷编号:143921

试卷录入者:yisonghua(华清远见)

试卷总分:80

出卷时间:2012-09-13 14:53

答题时间:150分钟

姓名:学号:班级:

6

说明:以下个体中的分数是说明题目的重要性而言的,并不是具体题目的考试分数,此试卷中的题目主要是出现在笔试之后的面试中,大部分题目要直接能说的出来,多去整理,完善自己的表达

1.你平常是怎么用C写嵌入式系统的死循环的? [3分]

参考答案:

while(1)

{

//...

}

或者

for(;;)

{

//...

{

2.写一条命令,实现在dir以及其子目录下找出所有包含“hello world”字符串的文件[2分]

参考答案:

grep -r "hello world" ./dir

或者grep -rHn "hello world" ./

3.下面的两段程序中,循环能否执行?为什么?

A:

unsigned short i;

unsigned short index = 0;

for(i = 0; i

printf(“a\n”);

}

不能,当执行到语句 i

减时会发生隐式类型转换,即index将被转换成有符号整型,转换之后的index还是0,因此程序片段A中的index-1的结果就是 -1 ,此时判断

i

B:

unsigned short i;

unsigned long index = 0;

for(i = 0; i

printf(“b\n”);

}

能,index是unsigned long型,当执行到语句 i

解析:

隐式类型转换规则:

C语言自动转换不同类型的行为称之为隐式类型转换,转换的基本原则是:低精度类型向高精度类型转换,具体是:

int -> unsigned int -> long -> unsigned long -> long long -> unsigned long long -> float -> double -> long double

注意,上面的顺序并不一定适用于你的机器,比如当int和long具有相同字长时,unsigned int的精度就会比long的精度高(事实上大多数针对32机的编

译器都是如此)。另外需要注意的一点是并没有将char和short型写入上式,原因是他们可以被提升到int也可能被提升到unsigned int。

提升数据的精度通常是一个平滑无损害的过程,但是降低数据的精度可能导致真正的问题。原因很简单:一个较低精度的类型可能不够大,不能存放一个具有更高精度的完整的数据。一个1字节的char变量可以存放整数101但不能存放整数12345。当把浮点类型数据转换为整数类型时,他们被趋零截尾或舍

入。

强制类型转换:

通常我们应该避免自动类型转换,当我们需要手动指定一个准确的数据类型时,我们可以用强制类型转换机制来达到我们的目的,使用方法很简单,在需要强制转换类型的变量或常量前面加上(type),例如(double)i; 即把变量 i 强制转换成double型。

4.一个计划跑LINUX系统的ARM系统把bootloader烧录进去后,上电后串口上没有任何输出,硬件和软件各应该去检查什么?

提示: 1.跑LINUX的系统一般都需要外扩DRAM,一般的系统也经常有NOR或NAND FLASH

2.bootloader一般是由汇编和C编写的裸奔程序[5分]

参考答案:

单片机系统:

硬件上:

1.确认电源电压是否正常。用电压表测量接地引脚跟电源引脚之间的电压,看是否是电源电压,例如常用的5V。

2.检查复位引脚电压是否正常。分别测量按下复位按钮和放开复位按钮的电压值,看是否正确。

3.检查晶振是否起振了,一般用示波器来看晶振引脚的波形,另一个办法是测量复位状态下的IO口电平,按住复位键不放,然后测量IO口(没接外部上拉的IO口除外)的电压,看是否是高电平,如果不是高电平,则多半是因为晶振没有起振。

4.检查基本的外扩设备(这里主要是DRAM,特别是DDR/DDR2/DDR3)的pcb layout的走线是否符合要求

软件上:

如果软件代码中:

1.检查CPU和DRAM是否正确初始化(CPU的初始化包括一些典型步骤如:关闭看门狗,关键FIQ,IRQ中断,关闭MMU和CACHE,调整CPU的频率)

2.检查堆栈指针是否正确设置了

2. 若如NAND FLASH做系统启动部分,则需注意一般需要的从NAND FLASH 中拷贝代码到DRAM中的步骤是否能正常完成

5.列举最少3种你所知道的嵌入式的体系结构,并请说明什么是ARM体系结构。[7分]

参考答案:

嵌入式的体系结构包括ARM,MIPS,POWERPC,X86,AVR32,SH等

这个没有非常标准的答案,但由经常面试的时候会问到,关于什么是ARM体系结构主要请参考讲义的ARM相关章节去总结,下面是我的总结,仅供参考:什么是ARM体系结构?

答:首先,ARM体系结构是ARM公司设计,并授权其合作伙伴生产的占嵌入式市场份额最大的一种RISC(精简指令集)的CPU,它具有高性能、低功耗、低成本的特点。

ARM体系结构从工作模式、工作状态,指令集几个方面简述以下ARM:

ARM体系支持7种工作模式,包括系统(Sys)、未定义指令(und)、数据存取异常(abt)、管理(SVC)、中断(IRQ)、快速中断(FIQ)、用户模式(usr).其中,除了用户模式以外的其它模式,我们称之为特权模式.它们之间的区别在于有些操作只能在特权模式下才被允许,如直接改变模式和中断使能等. 除了用户模式和系统模式以外的其它5种模式,我们又称之为异常模式。当特定的异

常出现的时候,程序就会进入到相应的异常模式中。

备注:在LINUX系统中, Linux的应用程序工作在usr模式,而内核在正常情况下工作在svc模式,当中断或异常时工作在异常模式

ARM体系结构中CPU有2种工作状态,thumb(指令为16位)和ARM状态(指令为32位),相对寄存器不多,总共37个,它包括通用寄存器r0~r12(FIQ 有自己的r8 ~ r12),栈指针寄存器SP(r13),链接寄存器lr(r14),PC 指针寄存器PC(r15),程序状态寄存器CPSR和保存程序状态寄存器SPSR,在上面提到几种异常中,用户(usr)和系统模式(sys)使用相同寄存器, 而其他异常模式有自己独立的SP,LR,SPSR寄存器。

当异常产生时, 硬件上(ARM core)会完成以下动作:

拷贝 CPSR 到 SPSR_

设置适当的 CPSR 位:

改变处理器状态进入 ARM 态

改变处理器模式进入相应的异常模式

设置中断禁止位禁止相应中断 (如果需要)?}保存返回地址到 LR_

设置 PC 为相应的异常向量

返回时, 软件的异常处理程序需要:

从 SPSR_恢复CPSR

从LR_恢复PC

Note:这些操作只能在 ARM 态执行.

ARM处理器是基于精简指令集计算机(RISC)原理设计的,发展过程中商用的指令集经过了v4,v5,v6,v7(cortex系列) 4个系列,ARM内核的通用处理器型号比较常见的有arm7tdmi(v4),

arm920/arm920t/arm926ejs,arm10,arm11,cortex-a8。

为了提高指令执行效率,大部分的ARM指令为单周期指令,并从软件设计角度看,ARM处理器的指令流水线采用3级流水线模型,并提供了LDM/STM类似的批量数据操作指令。

为了提高CPU访问外部设备数据效率,ARM处理器除部分ARM7采用冯.洛伊曼结构外,其他得都采用

哈佛架构,从而实现了对指令和数据存储器的同时访问。并且,ARM CPU提供了现代操作系统所需的虚拟内存管理机制(MMU)和指令、数据cache,并提供了协议处理器(cp15)来协助管理CPU的MMU和CACHE。

扩展概念:以上叙述里面提及的概念也要稍微去总结一下,比如:

1.什么是RISC?

2.ARM中断在ARM9,CORTEX-A8是怎么处理的?LINUX中为什么需要把中断分为上半部分,下半部分

3.MMU和CACHE的一些基本原理和知识

6.请简述下面这段代码的功能

mov r12, #0x0

ldr r13, =0x30100000

mov r14, #4096

loop:

ldmia r12!, {r0-r11}

stmia r13!, {r0-r11}

cmp r12, r14

blo loop [2分]

参考答案:

借助r0~r11,将内存地址0x0开始的4KB数据拷贝到0x30100000

7.嵌入式中常用的文件系统有哪些?说出它们的主要特点和应用场合?[5分]

参考答案:

嵌入式相关的文件系统: 嵌入式文件系统包括只读和可读写文件系统,一般情况下,只读文件系统启动速度快于可读写的文件系统

嵌入式相关的文件系统包括以下几种:

只读文件系统

cramfs: 压缩的只读文件系统

特点: 启动快,文件最大支持256MB,单个文件最大16MB

squashfs: 只读文件系统

特点: 压缩比最大,启动比cramfs慢

案例:路由器,ubuntu的发行光盘可结合LZMA压缩算法

可读写的文件系统:

JFFS2: 支持NOR 和NAND FLASH (对NAND的支持天生不足)

特点:

1.可读写

2. 挂载慢(特别是在小文件很多的文件系统中,就更慢)

3. 当数据占到JFFS2分区的75~80%左右时,性能会急剧下降

YAFFS2: 只支持NAND FLASH

特点: 1.可读写

2. 挂载快(特别是在小文件很多的文件系统中,优势更明显)

3.它不是标准内核中的,需通过补丁添加

ubifs:

起码支持NAND FLASH

特点: 1.可读写

2. 挂载快

3.它的实现和其他的文件系统不一样,引进了一个"卷"的概念

在内存中的文件系统:

ramdisk: 描述的是功能,不是格式

启动快,防止用户修改

ramfs: 在内存中的文件系统

tmpfs: 临时文件系统

实时反映系统状态: procfs, sysfs

另外,一些支持SD卡,U盘功能的系统还需要支持

windows文件系统: fat: FAT32

另外,一些带硬盘的嵌入式系统(比如DVR)还需要支持

硬盘的文件系统: EXT3/EXT4

另外,很重要很重要的一点,需要去总结文件过程中遇到的问题,总结比如文件体系挂不上的可能原因

(给个提示,可能有比如网卡或FLASH驱动没加载,内核启动参数传的不对,文件系统制作的步骤不对等好像原因)

8.某外设寄存器rGpioBase的地址是0x56000000,寄存器的0~15位有效,请写出给外设寄存器高八位(8~`15位)设置成0xc3的代码[7分]

参考答案:

#define rGpioBase (*((volatile unsigned int *)0x56000000)) rGpioBase &= ~0xff00;

rGpioBase |= 0xc300;

9.根据时序图和说明编写程序:

GPIO已经设置好,只需要调用函数gpio_seet_level(int gpio, int level)即课使某个GPIO输出高电平或者低电平。图中用于产生时序的gpio已经分别定义为SSP_XCS,SSP_SCLK,SSP_DIN,level的定义分别为GPIO_LO和GPIO_HI,需要编写函数的原型为:void ssp_io_write_word(u32 command),该函数用来输出一个字(如上图中的A0到C0一组9位),这9个位是在参数command中的低9位. [5分]

参考答案:

这道题立意非常好,做为一个底层工程师,看时序是必须的,相关的代码写法:

void ssp_io_wirte_word(u32 command)

{

int i;

//片选

gpio_set_level(SSP_XCS, GPIO_LO);

//送COMMAND

for (i=0; i++; i<9) { //依次送A0,C7~C0

gpio_set_level(SSP_SCLK,GPIO_LO);

gpio_set_level(SSP_DIN, (command >>(8-

i))&0x1); //gpio_set_level(SSP_DIN,(command<

gpio_set_level(SSP_SCLK,GPIO_HI);

}

//结束片选

gpio_set_level(SSP_SCLK,GPIO_LO);

gpio_set_level(SSP_XCS, GPIO_HI);

return;

如果实际结果并没有把数据正确的送出,那么就需用示波器或者逻辑分析仪看一下波形是否正确,再根据计算得到的CLK周期看一下CLK的延时是否合适,否则就加一定延迟处理

================================

另外,这道题还提醒我们,I2C的时序是要能记得的,如果不记得,再去复习I2C协议

10.简述LINUX系统从上电开始到系统起来的主要流程?

提示: 1.可以uboot、内核和文件系统的主要功能去总结

2.这个题主要是在笔试之后的面试,需要在3~5分钟之内表述清楚[8分]

参考答案:

系统启动流程应该从4个方面去总结,bootloader,内核,文件系统挂载,应用程序运行4个方面去总结,先总结大功能,再总结小功能:下面的手绘稿中,先说第一层,再说分开说第二层,在说第二层的时候,可以三星的ARMCPU,以从NAND FLASH启动为例,并在我们的图上加上硬件的相应部分:CPU上电时,CPU里面的ROMCODE负责把booloader的前面部分代码搬移到SRAM,并把SRAM映射成0x0地址,然后跳到0x0地址,另外,bootloader第二层里面,说完初始化CPU(可补充一下CPU的初始化包括进入到管理模式,关闭看门狗,中断,MMU和CACHE)和DRAM后,省略号(...)的位置是在补充一行文字:把bootloader完整代码拷贝到DRAM中

另外,很重要很重要的一点,需要去总结移植过程中遇到的典型问题和以及自己当时是怎么思考这个问题,并找到解决方法的过程(至少应该总结2~3个问题),也到网上去以比如(uboot, ARM 移植,问题)或(内核移植问题)和(文件移植问题)这样的关键词去搜看看别人经常遇到什么问题,总结一

下!!

11.如何编写一个LINUX驱动?

提示:主要说字符设备的编写过程 [7分]

参考答案:

这个得对着自己相应模块的驱动的找出其初始化部分并总结,下面是我总结的,仅仅供参考,不要照搬这些东西:切忌照搬,得自己去总结一下主要流程,

以字符设备为例,现在平台设备的驱动一般包括(注意,以下部分要结合一个具体的驱动去说):

一.在系统的资源文件代码中定义platform_device,里面填写对应设备的外设

IO起始地址,地址长度,中断,DMA资源等信息资源信息,并把资源信息添加到系统启动初始化流程里面,比如:

二. 通过module_init(xxx_init)和moule_exit(xxx_init)定义驱动入口和出口函数;

三.写出模块加载xxx_init()和退出的实际处理函数xxx_exit(),这里以

xxx_init()为例:

在里面调用platform_driver_resigter()注册一个platform_driver结构体,实现其中的probe()和remove()函数以及driver成员结构体中name和owner成员,比如:

1.获取平台设备资源的外设IO地址,中断,DMA资源等信息

2.映射外设控制寄存器的外设IO地址到内核的虚拟地址空间

3.使能外设时钟,注册外设中断的处理函数(如果有中断)

4.扫描和初始化硬件

5.最后向LINUX内核注册相应设备并通知应用层的udev/mdev守护进程创建相应的设备节点,或者通过子系统(比如输入子系统,I2C子系统等)注册相应设备并创建设备节点

6.然后,根据字符设备相应的数据结构file_operations的实现里面的比如open,release,read,write,mmap等关键函数,或者通过子系统去注册的话,按子系统要求去实现相应的代码就行了

12.简述LINUX驱动中字符设备和块设备的区别?[5分]

参考答案:

字符设备的特点是数据以字符流的方式进行访问,数据的顺序不能错序,乱序和随机读写,字符设备内核中不需要读写的缓冲,其驱动不支持lseek()函数块设备的特点是数据是固定块大小(典型值有512字节,2KB,4KB)进行读写,块设备可以随机读写,读写的时候内核中需要缓冲,驱动支持lseek()函数,块设备中数据的访问需要先mount到LINUX的目录文件后才能访问里面的数据 LINUX中字符设备架构相对简单,应用编程的系统调用

open,close,read,write和ioctl等函数驱动里面有相应的file_operations 结构体里面的函数与之对应

LINUX中块设备架构相对复杂,应用程序的读写会通过块设备里面的文件系统转化为读写的IO请求,块设备驱动里面通过gendisk结构体抽象块设备,并通过对请求队列的处理来实现对块设备的读写曹

13.试总结单片机底层开发与LINUX驱动开发有哪些异同?[4分]

参考答案:

相同点:

单片机开发和LINUX的驱动开发都有对硬件的操作,最底层对硬件的寄存器操作,对时序的理解是一致的。

不同点:

1.单片机是对外设的IO实地址进行直接操作,而LINUX里面,由于使能了MMU,所以对外设IO地址的操作必须先通过ioremap()或者通过静态映射,把外设IO地址映射到内核的虚拟地址空间后才能正确操作

2.在单片机编写对应设备的驱动不用考虑系统太多的系统分层问题,重用其他的代码量比较小,而LINUX采用分层抽象的思想,在LINUX中编写设备驱动,

要按照LINUX已经搭建好的层次结构进行驱动编写,经常调用LINUX提供的函数和机制,代码重用性大

3.由于LINUX是一个多任务的系统,即使在单核CPU上也存在资源竞争的情况(思考一下,LINUX里面那些地方可能导致资源竞争),所以在对驱动的编写的时候,对竞争资源需要采用一定的资源保护机制,比如原子变量,自旋锁等

4.单片机中断处理时,一般直接在产生中断的进入到中断处理函数里面在关中断的情况下处理完中断就可以。而LINUX里面把中断分为2部分,上半部分和下班部分,在上半部分中,是在关中断情况下,只做最基本和最核心的部分,然后在下半部分在开中断情况下,通过LINUX提供的各种机制来处理(思考:LINUX中断的底半部分有哪些模式)

14.请从网卡、USB HOST、LCD驱动器、NAND FLASH、WIFI 、音频芯片中选择一个或者2个(可以以具体的芯片为例),对下面的问题做答:

1.如果是外部扩展芯片,请说出你用的芯片的型号

请注意相应nand flash芯片型号,LCD屏厂家,型号;WIFI型号,音频芯片型号 [每空5分]

15.画出上题中你选定相应硬件模块与CPU的主要引脚连线[5分]

参考答案:

请在纸上自己把自己项目中做的设备的CPU和引脚连线多画几次。

这个需要根据具体模块,画出主要引脚包括数据线,控制线(比如片选,读写控制,以及控制重要时序的引脚),地址线(如有地址的话)

16. 编写上题中你选定相应硬件模块相应LINUX驱动的流程?[6分]

参考答案:

这个对着自己相应模块的驱动的初始化部分,总结一下主要流程,

现在平台设备的驱动一般包括(注意,以下部分要结合你自己的驱动去说):

1.获取平台设备资源的外设IO地址,中断,DMA资源等信息

2.映射外设控制寄存器的外设IO地址到内核的虚拟地址空间

3.使能外设时钟,注册外设中断的处理函数(如果有中断)

4.扫描和初始化硬件

5.最后向LINUX内核注册相应设备

6.然后,根据对应设备是字符设备,块设备,网络设备还是各种子系统的不同

,再提供相应的数据结构里面的关键函数(比如字符设备里面

file_operations,块设备里面的gendisk,网络设备里面的net_device)的实现

============ 本试卷共计16题,此处为结束标志。考试酷examcoo

============

前端工程师面试问题

前端工程师面试问题 Web前端开发工程师,主要职责是利用 (X)HTML/CSS/JavaScript/DOM/Flash等各种Web技术进行产品的界面开发。制作标准优化的代码,并增加交互动态功能,开发JavaScript以及Flash模块,同时结合后台开发技术模拟整体效果,进行丰富互联网的Web 开发,致力于通过技术改善用户体验。 ★你用微博吗? →如果用,你都关注那些人? ★你用Github吗? →如果用,你关注的项目有什么? ★你关注的 ___有那些? ★你使用那些版本管理系统,比如Git,SVN等? ★你常用的开发环境是怎样的?比如操作系统,文本器,浏览器,及其他工具等。

★你能描述一下你制作一个网页的工作流程吗? ★你能描述一下渐进增强和优雅降级之间的不同吗? →如果提到了特性检测,可以加分。 ★请解释一下什么是语义化的HTML? ★你更喜欢在哪个浏览器下进行开发?你使用那些开发人员工具? ★你如何对网站的文件和资源进行优化?期待的解决方案包括:·文件合并 ·文件最小化/文件压缩 ·使用CDN托管 ·缓存的使用 ·其他

★为什么利用多个域名来存储网站资源会更有效? →浏览器一次可以从一个域名下做多少资源? ★请说出三种减低页面加载时间的方法。(加载时间指感知的时间或者实际加载时间) ★如果你接到了一个使用Tab来缩进代码的项目,但是你喜欢空格,你会怎么做? ·建议这个项目使用像EditorConfig (editorconfig) 之类的规范 ·为了保持一致性,转换成项目原有的风格 ·直接使用VIM的retab命令 ★请写一个简单的幻灯效果页面 →如果不使用JS来完成,可以加分。 ★你都使用那些工作来测试代码的性能?

软件工程师面试试题

软件工程师面试试题 姓名: 1、全局变量和局部变量的概念和不同 作用域为整个程序运行空间的变量为全局变量。 作用域为某个函数或复合语句内部的变量为局部变量。 两者作用域不同,所在物理空间申请和分配方式不同。 使用原则:能用局部变量的最好不要用全局变量,以减少模块间的耦合度。2、static类型变量的概念 静态变量是在编译时就分配物理空间的变量。主要用于全局物理空间申请以及函数内部用于独立函数本身存在的应用场合。 3、简述获取双精度浮点数(double)每个字节数据的操作方法 使用字节指针强制转换连两存放的地址。 Double dblTemp = 0.0; Byte * pByte = (byte *)(&dblTemp); 4、在C++中,new和delete分配的内存块为何需要成对使用 两者实际调用的是malloc和free,如果不成对使用,则造成内存泄漏。 5、举例说明数据的二进制表示方式和字符型表示方式 以数据文件为例: Fprintf(f, “%d”, data);//字符形 Fwrite(&data, sizeof(int),1,f);//二进制形

6、头文件中使用#ifndef/define/endif的优点? 防止嵌套重复定义 7、如何向一个窗口发消息,写出windows API。 首先获取一个窗口句柄,可以使用枚举所有窗口的方式(EnumWindows); 使用API函数发送消息; 例如向一个按钮发送点击消息: SendMessage(hwnd, WM_LBUTTONDOWN, MK_LBUTTON, 0x00100019) 8、#include < filename.h >和#include “filename.h”有什么区别? 搜索范围不同。 前者只在编译环境制定的INCLUDE路径范围内搜索; 后者增加对当前目录的搜索。 9、软件编程中,为了便于阅读、记忆和使用,对变量名、数组名、结构体名、 联合体名、函数名等的命名规则简述 变量名:类型加名词或修饰词,例如:double dblTemp;定义一个双精度的临时变量。 数组名:类型加名词复数形式,例如char * strNames[100],定义一个字符串数据结构体:一般定义为类型,结构名为下划线开头,类型名大写。例如:Typedef struct _MyStruct{ Int iAge; … }MYOBJECT; * LPMYOBJECT;

系统工程师笔试题

系统工程师笔试题 一、选择题(共25道) 1、操作系统在控制和管理进程过程中,涉及到()这一重要数据结构,这是进程存在的唯一标识。 A.FCB B. FIFO C. FDT D. PCB 2、在一个请求页式存储管理中。一个程序的页面走向为4、 3、2、1、3、5、 4、3、2、1、5,并采用LUR算法。设分配给该程序的存储块数M分别为:3和4,在该访问中发生的缺页次数F和缺页率f是()。 A.①M=3,F=8、f≈67% ②M=4,F=5、f≈42% B. ①M=3,F=10、f=83% ②M=4,F=8、f≈67% C. ①M=3,F=9、f≈75% ②M=4,F=10、f≈83% D. ①M=3,F=7、f≈58% ②M=4,F=6、f≈50% 3、通道是一种()。 A.I/O端口 B. 数据通道 C. I/O专用处理机 D. 软件工具 4、()是一种动态存储分配方式。 A.固定分区 B. 可变式分区

C. 简单分页管理 D. 请求分页管理 5、虚拟内存的容量只受()的限制。 A. 物理内存的大小 B. 磁盘空间的大小 C. 数据存放的实际地址 D. 计算机地址位数 6、现代操作系统的两个基本特征是()和资源共享。 A. 多道程序设计 B. 中断处理 C. 程序的并发执行 D. 实现分时与实时处理 7、若系统中有5台绘图仪,有多个进程均需使用两台,规定每个进程一次仅允许申请一台,则至多允许()个进程参与竞争,而不会发生死锁。 A. 2 B. 3 C. 4 D. 5 8、Windows将遵循下面哪种搜索来定位DLL? 1 进程的当前工作目录 2 包含EXE文件的目录

自动化测试工程师面试题

自动化测试工程师面试题 (答题时间100分钟) A.测试基础 1、白盒测试与黑盒测试的区别是什么? 2、什么是正交试验法,使用场景是什么? 3、数据库中,游标是什么?其作用是什么? 。 4、简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程。 5、智力题 6、一个屋子有一个门(门是关闭的)和3盏电灯。屋外有3个开关,分别与这3 盏灯相连。你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。请确定每个开关具体管哪盏灯。

B.自动化测试 1、自动化测试与测试自动化的区别。 2、列举出你熟悉的自动化工具,并说明其实现原理。 3、自动化测试的使用场景? 4、什么是关键字驱动? 5、高质量的自动化脚本应该具备哪些特性? 6、简述Slenium grid的作用。 7、简要说明下面api的使用方法 A: 此API功能说明:

C.开发能力 1、描述==与equals的区别 2、final, finally, finalize的区别 3、说明Tomcat的中下列参数的作用: enableLookups= "false " redirectPort= "8443 " 4、Java中sleep和wait的区别 5、SSH是什么?每个框架扮演的角色是什么? 6、Linux系统下怎么查看和关闭名为jira的进程? 7、Linux如何安装jdk、mysql请写出相关命令? 8、HashMap和Hashtable的区别? 9、编程题: 1:写一个Singleton模式

2:现在需要实现一个用户登录功能,需要不同的用户有不同的权限,请设计出开发思路,可以使用伪代码。

前端工程师面试题题及答案(全面综合)

1. 要动态改变层中内容可以使用的方法有(AB ) a)innerHTML b)innerText c)通过设置层的隐藏和显示来实现 d)通过设置层的样式属性的display属性 2. 在javascript里,下列选项中不属于数组方法的是(B); a)sort() b)length() c)concat() d)reverse() 3 、var emp = new Array(3); for(var i in emp) 以下答案中能与for循环代码互换的是: (选择一项)。(D ) A for(var i =0; i

c)getElementsByName() d)bgColor() 6. 、display属性值的常用取值不包括(C ) a)inline b)block c)hidden d)none 7. 以下有关pixelTop属性与top属性的说法正确的是。(D ) a)都是Location对象的属性 b)使用时返回值都是字符串 c)都是返回以像素为单位的数值 d)以上都不对 8. 使用open方法打开具有浏览器工具条,地址栏,菜单栏的窗 口,下列选项正确的是__D__ a)open("x.html","HI","toolbas=1,scrollbars=1,status=1"); b)open("HI","scrollbars=1,location=1,status=1"); c)open("x.html","status=yes,menubar=1,location=1"); d)open("x.html","HI","toolbas=yes,menubar=1,location=1"); 9. 、javascript中表达式parseInt(“X8X8”)+paseFloat(‘8’)的结果是什么?( C) a)8+8 b)88 c)16 d)“8”+’8 10. 关于setTimeout(“check”,10)中说法正确的是( D)

经典软件工程师面试题

请参加如下测试,此题是由数十家知名IT企业的人力资源管理部进行 综合分析总结出的测试题,请大家认真完成。 一共 30 道题 ,每题 1 分 ,满分 30 分 1. 如果 A=1,FAT=27,那么 FAITH=? A、44 B、42 C、41 D、40 2. 7/2 × 14/3 + 26/5=() A、1304/15 B、1274/15 C、901/15 D、1261/15 E、以上都不对 3. 如果‘CONTRIBUTE’被写作‘ETBUIRNTOC’,用这种方式写‘POPULARISE’时从左 边数第六个字母是什么? A、R B、I C、A D、L 4. 160的( )%=80的80% A、60 B、30 C、50 D、40 E、以上都不正确 5. 如果用某一编码可以把 ‘STOVE’ 表示成 ‘FNBLK’,那么用此编码可 以把 ‘VOTES’ 表示成如下哪一种? A、LBNKF B、LNBKF

C、LKNBF D、FLKBN 6. 在下列数字系列中有一个数字是错的,请找出来 40 42 49 57 74 100 137 A、100 B、74 C、57 D、49 E、42 7. Rs.6500按照多少的比率才能在5年之后达到Rs.1787.5的利息是 A、4.5 B、6.5 C、7.5 D、3.5 E、以上都不正确 8. 把医生、发烧、药物、药店按照一定的顺序排列: A、药店、药物、发烧、医生 B、发烧、医生、药店、药物 C、医生、药店、药物、发烧 D、药物、医生、药店、发烧 9. 下列5项选择中有4个可以根据一定规律组成一组,哪一个不属于他们? A、重 B、短 C、长 D、轻 E、固体 10. 下列的数字系列中在6之后并且在8之前有多少个3? 3 6 6 8 3 6 6 8 3 6 8 3 6 3 8 3 6 3 8 3 3 8 3 3 9 A、1个 B、2个 C、3个

软件工程师面试中常见的问题

面试中常见的问题 1、请你自我介绍一下你自己, 回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、工作经验,这些在简历上都有,其实,企业最希望知道的是求职者能否胜任工作,包括:最强的技能、最深入研究的知识领域、个性中最积极的部分、做过的最成功的事,主要的成就等,这些都可以和学习无关,也可以和学习有关,但要突出积极的个性和做事的能力,说得合情合理企业才会相信。企业很重视一个人的礼貌,求职者要尊重考官,在回答每个问题之后都说一句“谢谢”。企业喜欢有礼貌的求职者。 2、你觉得你个性上最大的优点是什么? 回答提示:沉着冷静、条理清楚、立场坚定、顽强向上。 乐于助人和关心他人、适应能力和幽默感、乐观和友爱。 3、说说你最大的缺点? 回答提示:这个问题企业问的概率很大,通常不希望听到直接回答的缺点是什么等,如果求职者说自己小心眼、爱忌妒人、非常懒、脾气大、工作效率低,企业肯定不会录用你。绝对不要自作聪明地回答“我最大的缺点是过于追求完美”,有的人以为这样回答会显得自己比较出色,但事实上,他已经岌芨可危了。企业喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分。企业喜欢聪明的求职者。 4、你对加班的看法?

愿意为公司奉献。 回答样本:如果是工作需要我会义不容辞加班。我现在单身,没有任何家庭负担,可以全身心的投入工作。但同时,我也会提高工作效率,减少不必要的加班 5、你对薪资的要求? 回答提示:如果你对薪酬的要求太低,那显然贬低自己的能力;如果你对薪酬的要求太高,那又会显得你分量过重,公司受用不起。一些雇主通常都事先对求聘的职位定下开支预算,因而他们第一次提出的价钱往往是他们所能给予的最高价钱。他们问你只不过想证实一下这笔钱是否足以引起你对该工作的兴趣。 回答样本一:“我对工资没有硬性要求。我相信贵公司在处理我的问题上会友善合理。我注重的是找对工作机会,所以只要条件公平,我则不会计较太多 回答样本二:我受过系统的软件编程的训练,不需要进行大量的培训。而且我本人也对编程特别感兴趣。因此,我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。 回答样本三:如果你必须自己说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。最好给出一个具体的数字,这样表明你已经对当今的人才市场作了调查,知道像自己这样学历的雇员有什么样的价值 6、在五年的时间内,你的职业规划? 回答提示:这是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被问到。比较多的答案是“管理者”。但是近几年来,许多公司都已经建立了专门的技术途径。这些工作地位往往被称作“顾问”、“参议技师”或“高级软件工程师”等等。当然,说出其他一些你感兴趣的职位也是可以的,比如产品销售部经理,生产部经理等一些与

桌面运维工程师能力试卷试卷题库(面试版本)

桌面运维工程师能力试卷 版本:V1.2

修改记录

姓名:日期:考试时间: 90分钟 注意:请将答案填入下列答题表格内,请不要在试卷上答题,不要涂改,试题正文处答题不计分: 一、单选题:(在对应的框内写入相应的选择) 二、多选题:(在对应的框内写入相应的选择) 三、判断题:(在对应的框内画“√”或“×”) 包括本行在内,以下说明相关内容在打印时请先删除: 本试卷撰写By姜军强:如有疑问请发邮件至:229007933@https://www.wendangku.net/doc/ce1572232.html, 本试卷相关说明: 本试卷第一版(V1.X)题目涵盖桌面运维工程师考核试卷的卷一至卷三所有选项、判断类题目,类似题库,考核“面试人员”时,从中摘选部分题目考核,比如单选只留前30道题目,然后打印,试卷可复用。参考答案,参见最后一页; 第二版(V2.X)将增加题目难易程度“标的”,并将试卷分不同难易程度拟定三份,分别为初级、中等、和较难。 第三版(V3.X)将增加部分有关服务意识类选择题目,或另立《服务意识试卷》,服务意识题库和服务手册相关内容对应。

试题正文 请将答案填入答题卡上,试卷上答题不计分,请不要在试卷上涂改。 一、单选题(每题2分) 1、客户电话询问,桌面没有任何图标,最先判断什么问题? A、客户可能选择了其他账户进入系统 B、图标可能被误删除 C、“显示桌面图标”选项没有勾上 D、中毒的可能性最大 2、下面哪一项参数,与CPU的性能无关? A.FSB B.Cashe C.TDP D.HT(Hyper-Threading) 3、ADSL宽带拨号时提示691错误是什么故障? A、电话线路故障 B、电脑网卡故障 C、ADSL Moden故障 D、用户名或密码错误 4、24针电源线上的红色、橙色、黄色、黑色的工作电压依次是: A. 5V、12V、3.3V、0V B. 12V、5V、3.3V、0V C. 5V、3.3V、12V、0V D. 12V、3.3V、5V、0V 5、一台电脑上安装DDR2 667(DIM1)和DDR2 800(DIM2)两个内存,BIOS内存设置里面选择By SPD,那么内存的实际工作频率是: A、两个内存的平均工作频率733 B、667 C、800 D、为保证稳定工作,系统默认会降到533 6、某小型激光打印机,说明书使用注意事项提示“此打印机连续打印张数为100张……”,结果客户连续打印了200张,这时最有可能出现以下什么结果: A、打印机加热组件可能因长时间高温工作而损坏; B、打印机在打印超过100张时不能继续打印,需要重新开机才能继续; C、打印机散热系统开始工作; D、100张这个数字只代表此打印机平均每天打印100张,可以连续使用一个月,所以只会导致耗材消耗过快而已。 7、一台黑白激光打印机,其打印出来的文档,左半边颜色清晰较正常,右半边颜色较浅,最有可能是什么问题: A、打印机内加热组件损坏 B、粉盒中的碳粉分布不均或即将用尽 C、打印文档颜色深浅未设置好 D、纸张质地不均匀 8、现在主流复印机使用什么光源后,开机可以直接扫描或复印,无需预热: A、荧光灯 B、LED灯 C、白炽灯 D、红外线 9、一个C类子网,最多可以容纳多少台电脑? A、253 B、254 C、255 D、256 10、某笔记本在按Fn + “功能键”时,没有仍和反应,最有可能是什么问题:

web前端开发面试题汇总模板

web前端开发面试题汇总 1天前653浏览2评论 前端面试题汇总 HTML&CSS 1. 常用那几种浏览器测试?有哪些内核(Layout Engine)? (Q1) 浏览器:IE,Chrome,FireFox,Safari,Opera。 (Q2) 内核:Trident,Gecko,Presto,Webkit。 2. 说下行内元素和块级元素的区别?行内块元素的兼容性使用? (IE8 以下) 行内元素:会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效。 块级元素:各占据一行,垂直方向排列。从新行开始结束接着一个断行。 兼容性:display:inline-block;display:inline;zoom:1; 3. 清除浮动有哪些方式?比较好的方式是哪一种? (1)父级div定义height。 (2)结尾处加空div标签clear:both。 (3)父级div定义伪类:after和zoom。 (4)父级div定义overflow:hidden。 (5)父级div定义overflow:auto。 (6)父级div也浮动,需要定义宽度。 (7)父级div定义display:table。

(8)结尾处加br标签clear:both。 总结:比较好的是第3种方式,简洁方便。 4. box-sizing常用的属性有哪些?分别有什么作用? 常用的属性:box-sizing: content-box border-box inherit; 作用:content-box:宽度和高度分别应用到元素的内容框。在宽度和高度之外绘制元素的内边距和边框(元素默认效果)。 border-box:元素指定的任何内边距和边框都将在已设定的宽度和高度内进行绘制。通过从已设定的宽度和高度分别减去边框和内边距才能得到内容的宽度和高度。 5. Doctype作用?标准模式与兼容模式各有什么区别? (Q1) 告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。 (Q2) 标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。 6. HTML5 为什么只需要写< Doctype html>? HTML5不基于SGML,因此不需要对DTD进行引用;但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行)。而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。 7. 页面导入样式时,使用link和@import有什么区别? (1)link属于XHTML标签,除了加载CSS外,还能用于定义RSS, 定义rel连接属性等作用;而@import是CSS提供的,只能用于加载CSS; (2)页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面

嵌入式linux android驱动工程师 面试题总汇

嵌入式linux android驱动工程师面试题总汇 1. 嵌入式系统中断服务子程序(ISR) 收藏中断是嵌入式系统中重要的组成 部分,这导致了很多编译开发商提供一种扩展—让标准C支持中断。具代表事实是,产生了一个新的关键字__interrupt。下面的代码就使用了__interrupt 关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的。 __interrupt double compute_area (double radius) { double area = PI * radius * radius; printf(" Area = %f", area); return area; } 1). ISR 不能返回一个值。2). ISR 不能传递参数。3). 在许多的处理器/编译器中,浮点一般都是不可重入的。有些处理器/编译器需要让额处的寄存器入栈,有些处理器/编译器就是不允许在ISR中做浮点运算。此外,ISR应该是短而有效率的,在ISR中做浮点运算是不明智的。4). 与第三点一脉相承,printf()经常有重入和性能上的问题。 2.C语言中对位的操作,比如对a的第三位清0,第四位置1.本来应该会的,一犯晕写反了,以后注意! #define BIT3 (1<<3) #define BIT4 (1<<4) a &= ~BIT3; a |= BIT4; 3.考到volatile含义并举例:理解出错,举了很具体的例子,连程序都搬上去了,有些理解不深的没举出来…… volatile表示这个变量会被意想不到的改变,每次用他的时候都会小心的重新读取一遍,不适用寄存器保存的副本。 volatile表示直接存取原始地址 例: 并行设备的硬件寄存器(状态寄存器) 在多线程运行的时候共享变量也要时时更新 一个中断服务子程序中访问到的的非自动变量(不太清楚,正在查找资料ing……) 4.要求设置一绝对地址为0x67a9 的整型变量的值为0xaa66 当时我的写法:#define AA *(volatile unsigned long *)0xaa66 AA = 0x67a9; 答案:

Web前端开发工程师面试题

一、CSS (1) 二、HTML (3) 三、jquery (3) 四、综合 (4) 一、C SS 1.CSS样式表根据所在网页的位置,可分为?(B ) A.行内样式表、内嵌样式表、混合样式表 B.行内样式表、内嵌样式表、外部样式表 C.外部样式表、内嵌样式表、导入样式表 D.外部样式表、混合样式表、导入样式表 2.对于标签,其中*代表(C ) A. 注释的时候才用上 B. 没有这个标签 C. 通配符,意思是所有的标签 3.在CSS中下面哪种方法表示超链接文字在鼠标经过时,超链接文字无下划线?(B ) A. A:link{TEXT-DECORATION: underline } B. A:hover {TEXT-DECORATION: none} C. A:active {TEXT-DECORATION: blink } D. A:visited {TEXT-DECORATION: overline } 4.下面代码片段,说法正确的是:(B ) .DIV1 { position:absolute; line-height:22px; height:58px; background-color: #FF0000; } A. Line-height:22px;修饰文本字体大小 B. position:absolute;表示绝对定位,被定位的元素位置固定 C. height:58px; 表示被修饰的元素距离别的元素的距离 D. background-color: #FF0000; 表示被修饰的元素的背景图像 5.用CSS设置DIV的左边为红色实线,下面设置正确的是(C ) A.style=”border-top: #ff0000 1 solid;”

毕业生软件工程师面试题

2 网络知识 2.1 OSI和TCP/IP 1. 的七层网络结构图(功能及特点)OSI 1) 物理层:为数据链路层提供物理连接,在其上串行传送比特流,即所传送数据的单位是比特。此外,该层中还具有确定连接设备的电气特性和物理特性等功能。 2) 数据链路层:负责在网络节点间的线路上通过检测、流量控制和重发等手段,无差错地传送以帧为单位的数据。为做到这一点,在每一帧中必须同时带有同步、地址、差错控制及流量控制等控制信息。 3) 网络层:为了将数据分组从源(源端系统)送到目的地(目标端系统),网络层的任务就是选择合适的路由和交换节点,使源的传输层传下来的分组信息能够正确无误地按照地址找到目的地,并交付给相应的传输层,即完成网络的寻址功能。 4) 传输层:传输层是高低层之间衔接的接口层。数据传输的单位是报文,当报文较长时将它分割成若干分组,然后交给网络层进行传输。传输层是计算机网络协议分层中的最关键一层,该层以上各层将不再管理信息传输问题。 5) 会话层:该层对传输的报文提供同步管理服务。在两个不同系统的互相通信的应用进程之间建立、组织和协调交互。例如,确定是双工还是半双工工作。 6) 表示层:该层的主要任务是把所传送的数据的抽象语法变换为传送语法,即把不同计算机内部的不同表示形式转换成网络通信中的标准表示形式。此外,对传送的数据加密(或解密)、正文压缩(或还原)也是表示层的任务。 7) 应用层:该层直接面向用户,是OSI中的最高层。它的主要任务是为用户提供应用的接口,即提供不同计算机间的文件传送、访问与管理,电子邮件的内容处理,不同计算机通过网络交互访问的虚拟终端功能等。 2. (功能及特点)TCP/IP 1) 网络接口层:这是TCP/IP协议的最低一层,包括有多种逻辑链路控制和媒体访问协议。网络接口层的功能是接收IP数据报并通过特定的网络进行传输,或从网络上接收物理帧,抽取出IP数据报并转交给网际层。 2) 网际网层(IP层):该层包括以下协议:IP(网际协议)、ICMP(Internet Control Message Protocol,因特网控制报文协议)、ARP(Address Resolution Protocol,地址解析协议)、RARP(Reverse Address Resolution Protocol,反向地址解析协议)。该层负责相同或不同网络中计算机之间的通信,主要处理数据报和路由。在IP层中,ARP协议用于将IP地址转换成物理地址,RARP协议用于将物理地址转换成IP地址,ICMP协议用于报告差错和传送控制信息。IP协议在TCP/IP协议组中处于核心地位。 3) 传输层:该层提供TCP(传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)两个协议,它们都建立在IP协议的基础上,其中TCP提供可靠的面向连接服务,UDP提供简单的无连接服务。传输层提供端到端,即应用程序之间的通信,主要功能是数据格式化、数据确认和丢失重传等。

水电工程师面试题目

面试题目: 1、低压配电设备主要产品有哪些? 低压配电屏、开关柜、开关板、照明箱、动力箱和电动机控制中心。 2、低压断路器的主要功能是什么? 既能带负荷通断电路,又能在短路、过负荷和失压自动跳闸。 3、何谓电气安全?它包括那些方面? 电气安全是指电气产品质量,以及安装、使用、维修过程中不发生任何事故,如人身触电死亡、设备损坏、电气火灾、电气爆炸事故等。电气安全包括人身安全与设备安全两方面。人身安全是指电工及其他参加工作人员的人身安全;设备安全是指电气设备及其附属设备、设施的安全。 4、低压成套开关设备和控制设备(简称成套设备)的含义是什么? 有一个或多个低压开关设备和与之相关的控制,测量,信号,保护,调节等设备,由制造厂家负责完成所有内部的电气和机械的连接,用结构部件完整地组装在一起的一种组合体。 5、主要安装专业设备和材料的划分界线; (1)电气: 各种电力变压器、互感器、调压器、移相器、电抗器、高压断路器、高压熔断器、高压隔离开关、装置式空气开关、电力电容器、蓄电池、交直流报警器、成套箱式变电站、共箱母线、封密式母线槽、成套供应的箱、盘、柜、屏及其随设备带来的母线和支持瓷瓶均为设备。 各种电缆、电线、母线、管材、型钢、桥架、梯架、槽盒、立柱、托臂、灯具、及其开关、插座、按钮等均为材料。 低压开关、保险器、杆上避雷器、各种避雷针、各种绝缘子、金具、电线杆、铁塔、各种支架等均为材料。 各种小型装在墙上的照明配电箱、0.5千伏安照明变压器、电扇、铁壳开关、电铃等小型电器等均为材料。 (2)通风: 制冷机组、空调机组、空调器、各类风机、除尘设备、风机盘管、净化工作台、风淋室、冷却塔等均为设备;

硬件工程师经典面试100 题

硬件经典面试100 题(附参考答案) 1、请列举您知道的电阻、电容、电感品牌(最好包括国内、国外品牌)。 电阻: 美国:AVX、VISHAY 威世 日本:KOA 兴亚、Kyocera 京瓷、muRata 村田、Panasonic 松下、ROHM 罗姆、susumu、TDK 台湾: LIZ 丽智、PHYCOM 飞元、RALEC 旺诠、ROYALOHM 厚生、SUPEROHM 美隆、TA-I 大毅、TMTEC 泰铭、TOKEN 德键、TYOHM 幸亚、UniOhm 厚声、VITROHM、VIKING 光颉、WALSIN 华新科、YAGEO 国巨 新加坡:ASJ 中国:FH 风华、捷比信 电容: 美国:AVX、KEMET 基美、Skywell 泽天、VISHAY 威世 英国:NOVER 诺华德国:EPCOS、WIMA 威马丹麦:JENSEN 战神 日本:ELNA 伊娜、FUJITSU 富士通、HITACHI 日立、KOA 兴亚、Kyocera 京瓷、Matsushita 松下、muRata 村田、NEC、 nichicon(蓝宝石)尼吉康、Nippon Chemi-Con(黑金刚、嘉美工)日本化工、Panasonic 松下、Raycon 威康、Rubycon(红 宝石)、SANYO 三洋、TAIYO YUDEN 太诱、TDK、TK 东信 韩国: SAMSUNG 三星、SAMWHA 三和、SAMYOUNG 三莹 台湾:CAPSUN、CAPXON(丰宾)凯普松、Chocon、Choyo、ELITE 金山、EVERCON、EYANG 宇阳、GEMCON 至美、 GSC 杰商、G-Luxon 世昕、HEC 禾伸堂、HERMEI 合美电机、JACKCON 融欣、JPCON 正邦、LELON 立隆、LTEC 辉城、 OST 奥斯特、SACON 士康、SUSCON 冠佐、TAICON 台康、TEAPO 智宝、WALSIN 华新科、YAGEO 国巨 香港:FUJICON 富之光、SAMXON 万裕中国:AiSHi 艾华科技、Chang 常州华威电子、FCON 深圳金富康、FH 广东 风华、HEC 东阳光、JIANGHAI 南通江海、JICON 吉光电子、LM 佛山利明、R.M 佛山三水日明电子、Rukycon 海丰三力、 Sancon 海门三鑫、SEACON 深圳鑫龙茂电子、SHENGDA 扬州升达、TAI-TECH 台庆、TF 南通同飞、TEAMYOUNG 天 扬、QIFA 奇发电子 电感: 美国:AEM、AVX、Coilcraft 线艺、Pulse 普思、VISHAY 威世 德国:EPCOS、WE 日本:KOA 兴亚、muRata 村田、Panasonic 松下、sumida 胜美达、TAIYO YUDEN 太诱、TDK、TOKO、TOREX 特瑞仕 台湾:CHILISIN 奇力新、https://www.wendangku.net/doc/ce1572232.html,yers 美磊、TAI-TECH 台庆、TOKEN 德键、VIKING 光颉、WALSIN 华新科、YAGEO 国 巨 中国:Gausstek 丰晶、GLE 格莱尔、FH 风华、CODACA 科达嘉、Sunlord 顺络、紫泰荆、肇庆英达

web前端研发工程师笔试题选择题带答案

1. 要动态改变层中内容可以使用的方法有( AB ) a) i nn erHTML b) i nn erText c) 通过设置层的隐藏和显示来实现 d) 通过设置层的样式属性的 display 属性 2. 当按键盘 A 时,使用onKeyDown 事件打印event.keyCode 的结果是(A ) a) 65 b) 13 c) 97 d) 37 3.在javascript 里,下列选项中不属于数组方法的是( B ); a) sort() b) l e ngth() c)con cat() d) r everse( ) 4.下列哪一个选项可以用来检索被选定的选项的索引号 ?(B) a)disabled b) selectedl ndex c) opti on d) multiple 5.希望图片具有”提交”按钮同样的功能,该如何编写表单提交?(A ) 6. 使div 层和文本框处在冋一行的代码正确的是 (D ); a) b) c) d) 7. 下列选项中,描述正确的是(选择两项)。(AD ) a)options.add(new Option(,a?,'A?))可以动态添加一个下拉列表选项 b)option.add(new Option(,a?,'A?))可以动态添加一个下拉列表选项 c) n ew Optio n(,a?,'A?)中?a 表示列表选项的值,?A 用于在页面中显示 d) n ew Option(,a?,'A?)中?A 表示列表选项的值,?a 用于在页面中显示 8. 、 var emp = new Array(3); for(var i in emp) 以下答案中能与for 循环代码互换的是:(选择一项)。(D ) A for(var i =0; i

java高级软件工程师面试题

java高级软件工程师面试题 招聘java高级工程师,职位描述如下,有兴趣的加394504340交流,打扰了,谢谢! 职位名称:java高级开发工程师(急) 职位描述:互联网产品的开发和维护。 职位要求:1. 熟悉JAVA、J2EE体系结构,熟练掌握Spring、Struts、Hibernate、ibatis 的开发技术。 2. 熟悉MySql等数据库开发,熟练掌握SQL语句,有较好的数据库设计能力。 3. 熟练掌握HTML、javascript、ajax等web开发技术,熟悉http协议。 4. 熟悉SVN、Maven、Junit等工具。 5. 具有良好的学习能力、沟通能力,乐于承担工作压力。 6. 有大型门户或社区网站开发经验者优先。 职位所在城市:杭州 职位所在行业:高科技 -------------------------========================================================= 1.说一下struts中常用的对象 2.怎样整合apatche和tomcat 3.说一下在linx系统中搭建服务器 4.简述一下sql server 建模 5.请写一个程序,把一个10进制转换成16进制 6.表student 列id name age WA(本科以上,大专,高中,初中以下) 毕业学校ID,学校信息表 问:统计出文化学历本科以上,大专,高中,初中以下,每个年龄各有多少人(一条SQL语句) 7.有两位少年从隧道的一端向另一端行走.当他们走过隧道的五分之二时,发现隧道外面迎来一辆火车.火车很快就要进入隧道.两位少年向来时隧道跑去.两位少年都是每小时10公里.两位在千钧一发跑出了隧道.假设火车速度恒定,并且两位少年都在瞬间达到最大速度,请问火车的速度 8.请写出常用的oracle语句及说明,存储过程的语句及说明 ---------------------------------------------------------------------------------------------------------------------------------

linux驱动工程师面试题整理

1、字符型驱动设备你是怎么创建设备文件的,就是/dev/下面的设备文件,供上层应用程序打开使用的文件? 答:mknod命令结合设备的主设备号和次设备号,可创建一个设备文件。 评:这只是其中一种方式,也叫手动创建设备文件。还有UDEV/MDEV自动创建设备文件的方式,UDEV/MDEV是运行在用户态的程序,可以动态管理设备文件,包括创建和删除设备文件,运行在用户态意味着系统要运行之后。那么在系统启动期间还有devfs创建了设备文件。一共有三种方式可以创建设备文件。 2、写一个中断服务需要注意哪些?如果中断产生之后要做比较多的事情你是怎么做的?答:中断处理例程应该尽量短,把能放在后半段(tasklet,等待队列等)的任务尽量放在后半段。 评:写一个中断服务程序要注意快进快出,在中断服务程序里面尽量快速采集信息,包括硬件信息,然后推出中断,要做其它事情可以使用工作队列或者tasklet方式。也就是中断上半部和下半部。 第二:中断服务程序中不能有阻塞操作。为什么?大家可以讨论。 第三:中断服务程序注意返回值,要用操作系统定义的宏做为返回值,而不是自己定义的OK,FAIL之类的。 3、自旋锁和信号量在互斥使用时需要注意哪些?在中断服务程序里面的互斥是使用自旋锁还是信号量?还是两者都能用?为什么? 答:使用自旋锁的进程不能睡眠,使用信号量的进程可以睡眠。中断服务例程中的互斥使用的是自旋锁,原因是在中断处理例程中,硬中断是关闭的,这样会丢失可能到来的中断。 4、原子操作你怎么理解?为了实现一个互斥,自己定义一个变量作为标记来作为一个资源只有一个使用者行不行? 答:原子操作指的是无法被打断的操作。我没懂第二句是什么意思,自己定义一个变量怎么可能标记资源的使用情况?其他进程又看不见这个变量 评:第二句话的意思是: 定义一个变量,比如 int flag =0; if(flag == 0) { flag = 1; 操作临界区; flag = 0; }这样可否?

软件工程师常见面试题及答案.doc

软件工程师常见面试题及答案 需求调查: 全面了解您的系统概况、应用领域、软件开发周期、软件开发环境、开发组织、时间安排、功能需求、性能需求、质量需求及测试要求等根据系统概况进行项目所需的人员、时间和工作量估计及项目报价。 制定初步的项目计划: 在与您充分共同和协商的基础上制定我们的测试计划。 测试准备: 组织测试团队、培训、建立测试和管理环境等。 测试设计: 按照测试要求进行每个测试项的测试设计,包括测试用例的设计及测试脚本的开发等。 测试实施: 按照测试计划进行实施测试。 测试评估: 根据测试的结果,出具测试评估报告。 2、根据你的经验说说你对软件测试/质量保证的理解? 软件质量保证与测试是根据软件开发阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据和预期的输出结果),并利用这些测试用例去运行程序,以发现错误的过程。它是对应用程序的各个方面进行测试以检查其功能、语言有效性及外观排布.。 3、(1) 你对SQA的职责和工作活动(如软件度量)的理解: SQA就是独立于软件开发的项目组,通过对软件开发过程的监控,来保证软件的开发流程按照指定的CMM规程(如果有相应的CMM规程),对于不符合项及时提出建议和改进方案,必要是可以要高层经理汇报以求问题的解决。通过这样的途径来预防缺陷的引入,从而减少后期软件的维护成本。SQA主要的工作活动包括制定SQA工作计划,参与阶段产物的评审,进行过程质量、功能配置及物理配置的审计等;对项目开发过程中产生的数据进行度量等等;

(2) 说说你对软件配置管理的理解: 项目在开发的过程中要用相应的配置管理工具对配置项(包括各个阶段的产物)进行变更控制,配置管理的使用取决于项目规模和复杂性能及风险的水平。软件的规模越大,配置管理就显得越重要。还有在配置管理中,有一个很重要的概念,那就是基线,是在一定阶段各个配置项的组合,一个基线就提供了一个正式的标准,随后的工作便基于此标准,并且只有经过授权后才能变更这个标准。配置管理工具主要有CC,VSS,CVS等,偶只用过CVS,对其它的不熟悉 (3) 怎样写测试计划和测试用例: 简单点,测试计划里应有详细的测试策略(测试方法等),合理详尽的资源安排等,至于测试用例,那是依赖于需求(包括功能与非功能需求)是否细化到功能点,是否可测试等。 (4) 说说主流的软件工程思想(如CMM,CMMI,RUP,XP,PSP,TSP等)的大致情况以及对它们的理解: CMM:SW Capability Maturity Model 软件能力成熟度模型,其作用是用于软件过程的改进、评估及软件能力的评鉴CMMI:Capability Maturity Model Integration 能力成熟度模型集成CMMI融入了大部分最新的软件管理实践,同时弥补了SW-CMM模型中的缺陷 RUP:rational unified process 是软件工程化过程。 XP:extreme program,即极限编程的意思,适用于小型团队的软件开发,想上面第三个问题就可以结合原型法采用这样的开发流程。要明白测试对于xp开发的重要性,强调测试(重点是单元测试)先行的理念。编程可以明显提高代码的质量,持续集成对于快速定位问题很有好处。 PSP ,TSP 分别是个体软件过程(Personal Software Process),群组软件过程(Team Software Process)大家都知道,CMM只是告诉你怎么做但并没有告诉你如何做,所以PSP/TSP就是告诉你企

相关文档
相关文档 最新文档