import java.lang.reflect.*;
public class DumpMethods{
public static void main(String[] args) {
try {
Class c=Class.forName(args[0]);
Method m[]=c.getDeclaredMethods();
for (int i = 0; i < m.length; i++) {
System.out.println(m[i].toString());
}
} catch (Throwable e) {
System.err.println(e);
}
}
}
其中"c.getDeclaredMethods"的作用是:
A 取得类的公有方法对象
B 取得类的所有公有方法名称
C 取得类的所有方法对象
D 以上选项都不正确
答案:D
解析:
C选项是方法,不是对象。
A ++x
B x=y
C x++
D x=1
答案:D
解析:
A.由于y的值不确定,所以要加锁;
B,C 两个在多线程情况下是必须要加锁的,因为他们是先被读入寄存器,然后再进行+1操作,如果没有加锁,那么可能会出现数据异常;
D 原子操作,所以不需要加锁
原子性:指该操作不能再继续划分为更小的操作。
Java中的原子操作包括:
1、除long和double之外的基本类型的赋值操作
2、所有引用reference的赋值操作
3、java.concurrent.Atomic.* 包中所有类的一切操作
A 1
B 9
C 10
D 11
答案:D
解析:一个在运行,其余十一个都在就绪队列中。
A 线程同步的方法包括使用临界区,互斥量,信号量等
B 两个线程同时对简单类型全局变量进行写操作也需要互斥
C 实现可重入函数时,对自动变量也要用互斥量加以保护
D 可重入函数不可以调用不可重入函数
答案:C
解析:可重入函数可认为是可以被中断的函数,自动变量定义的时候才被创建,函数返回时,系统回收空间,他是的是局部作用域变量,不需要互斥量。可重入函数对全局变量才需要互斥量保护。
A 进程死循环
B 资源循环等待
C 程序内存访问越界
D 进程释放资源
答案:B
解析:
(1) 互斥条件:一个资源每次只能被一个进程使用。
(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。
(3) 不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。
(4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
A 12 34 56 78
B 78 56 34 12
C 87 65 43 21
D 21 43 65 87
答案:A
解析:bigendian:大端存储,即高地址的数据存储在低地址,低地址的数据存储在高地址
整数0x12345678 12所在为低地址,所以存储在内存中的高地址处,78所在为高地址,所以存储在内存中的低地址处
而内存中的布局为:
高地址 低地址
12 78
A 0.001秒
B 1秒
C 100秒
D 2小时
答案:B
解析:执行1条语句约1ns即10的-9次方秒,1G=1024M=10241024k=10241024* 1024byte,每次赋值1byte都要执行一次语句,故至少花费102410241024*10^-9=1.073741824s
A.读取1KB内存数据 B.从硬盘连续读取1KB数据 C.读取一次L2缓存 D.一次磁盘寻道
A C,A,D,B
B C,D,A,B
C D,C,A,B
D D,A,C,B
答案:A
解析:首先, 速度最快的当然是缓存, 接着消耗时间最少的是内存, 磁盘寻道时间, 然后是硬盘连续读取时间
一个个来分析, L2缓存是level2缓存是二级缓存的意思, 通过缓存直接与cpu进行数据交互, 这个是最快最直接的。
这部分内容涉及到cpu缓存, 分为一级缓存,二级缓存,三级缓存。
A 成正比
B 成反比
C 无关
D 成固定值
答案:C
解析:
由于内存的大小是固定的,所以无论页面是大是小,可以进入内存的大小也是固定的,最多不超过内存的大小。实际上,分页的大小并不影响进入内存作业的数量。从宏观上看,进入内存的页面内容是没有变化的。 所以分页式虚拟存储管理系统中,页面的大小与可能产生的缺页中断次数关系不大。
A 一个父进程可以创建若干个子进程,一个子进程可以从属于若干个父进程
B 父进程被撤销时,其所有子进程也被相应撤消
C 子进程被撤销时,其从属的父进程也被撤销
D 一个进程可以没有父进程或子进程
答案:D
解析:
1.孤儿进程
如果父进程先退出,子进程还没退出那么子进程将被 托孤给init进程,这是子进程的父进程就是init进程(1号进程).
init进程没有父进程.
2.僵尸进程
进程终止后进入僵死状态(zombie),等待告知父进程自己终止,后才能完全消失.但是如果一个进程已经终止了,但是其父进程还没有获取其状态,那么这个进程就称之为僵尸进程.僵尸进程还会消耗一定的系统资源,并且还保留一些概要信息供父进程查询子进程的状态可以提供父进程想要的信息.一旦父进程得到想要的信息,僵尸进程就会结束.
A 终止一个进程比终止一个线程花费的时间少
B 进程切换比同一进程内部的线程切换花费的时间少
C 线程提高了不同执行程序间的通信效率
D 进程和线程都是资源分配和调度的基本单位
答案:C
解析:
线程提高了不同的执行程序间通信的效率。在大多数操作系统中,独立进程间的通信需要内核的介入,以提供和保护通信所需要的机制。但是,由于在同一个进程中的线程共享内存和文件,它们无须调用内核就可以互相通信。
A 阻塞挂起->阻塞
B 就绪挂起->就绪
C 就绪挂起->阻塞挂起
D 阻塞挂起->就绪挂起
答案:C
解析:
C跨越了两个阶段