2001年攻读硕士学位研究生入学考试试题
学科,专业:…………研究方向:………….考试科目:操作系统.
一,是非题:判断是非并给出解释。(5‘*4)
1.1分布式操作系统和网络操作系统没有本质区别。
1.2使用快表技术事实上将增加一次快表的访问时间,所以在内存中应该慎用该技术。
1.3死锁在操作系统的设计和实现中是绝对不容许出现。
1.4原语操作是不可被中断的。
二,简述题。(5‘*4)
2.1进程和线程的异同。
2.2操作系统本质上也需要时空开销的,这样解释这些开销还是值得的。
2.3简述存储器管理的基本目的和基本问题。
2.4简述设备分配的基本类型和基本策略。
三,叙述中断机制在操作系统中的地位和作用。(10‘)
四,试给出一种实现虚存的解决方案。(10‘)
五,举出设备管理子系统中利用中断,轮询和DMA的例子。(12‘)
六,以下是 Linux文件系统的四个相关的结构定义的一部分:
6.1请描述这些结构的作用和相互关系;(8‘)
6.2根据这些结构,请描述文件的物理结构;(8‘)
6.3基于这些结构,请设计至少四条有关文件系统功能调用的实现。(12‘)
struct inode{
struct list_head i_hash;
struct list_head i_dentry;
unsigned ling i_ino;
unsigned int i_count;
kdev_t i_dev;
umode_t i_mode;
off_t i_size;
time_t i_atime;
time_t i_mtime;
time_t i_ctime;
unsigned long i_blksize;
unsigned long i_block;
union{
struct ext2_inode_info ext2_i;
}u;
};
struct ext2_inode_info{
_u32 i_data[15];
_u32 _flags;
};
struct dentry{
int d_count;
struct inode *d_inode;/*Where the name belongs to –NULL is negative*/
struct dentry *d_parent;/*parent directory*/
struct list_head d_hash;/*lookup hash list*/
unsigned char d_iname[DNAME_INLINE_LEN];/*small names*/
};
struct list_head{
struct list_head *next,*prev;
};