操作系统课程设计----二级文件系统.doc
《操作系统课程设计----二级文件系统.doc》由会员分享,可在线阅读,更多相关《操作系统课程设计----二级文件系统.doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、学号10225608129武汉理工大学华夏学院课 程 设 计课程名称 操作系统课程设计题目 为LINUX 设计一个简单的二级文件系统专 业 软件技术 班 级 2081班 姓 名 赵然 成 绩 指导教师 赵传斌、 司晓梅 2011年1月17日 至 2011年1月21日课程设计任务书设计题目:为LINUX 设计一个简单的二级文件系统设计目的:1、通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及内部实现。2、提高学生的程序设计能力、 提高算法设计质量与程序设计素质 。设计任务:(在规定的时间内完成下列任务)为LINUX 设计一个简单的二级文件系统。要求做到以下几点:1、可以实现下列几条
2、命令(至少4条)Login用户登录Dir列文件目录Create创建文件Delete删除文件Open打开文件Close关闭文件Read读文件Write写文件2、列目录时要列出文件名、物理地址、保护码和文件长度。3、源文件可以进行读写保护。时间安排: 1月 17日 布置课程设计任务;分配题目后,查阅资料、 准备程序; 1月 18日1月20 日上机调试程序、书写课程设计报告;1月21 日上午提交课程设计报告及相关文档。地点:学校机房(具体见现代教育中心大屏幕安排)具体要求:1、课程设计报告按统一通用格式书写,具体格式要求请在网络上查阅2、每位学生应独立完成各自的任务且每天至少在设计室工作半天指 导
3、教 师 签 名: 11年 1月 7日教研室主任(或责任教师)签名: 11年 1月 7 日1.实现原理首先,实现Login用户登录,(用户名:zhaoran 密码:1234)必须登录成功才能进入文件系统进行查看,进入后,通过树状展示文件目录(默认文件目录是C:Program Files),右侧显示文件夹图标或者文件图标,选中节点鼠标右击弹出菜单,有新建目录,新建文件,删除文件,打开文件,属性菜单项,并分别实现其功能。2.开发环境开发工具 MyEclipse 7.0开发语言 Java3.关键算法实现流程图3.1流程图登陆验证账号密码目录右键选择操作新建目录新建文件删除打开属性结束账号错误账号正确3
4、.2具体算法代码3.2.1登陆模块public class Login extends JFrame private static final long serialVersionUID = 1L;private JPanel jContentPane = null;private JLabel jLabel1 = null;private JLabel jLabel2 = null;private JLabel jLabel = null;private JTextField jTextField1 = null;private JPasswordField jPasswordField =
5、 null;private JButton jButton1 = null;private JButton jButton2 = null;private JTextField getJTextField1() if (jTextField1 = null) jTextField1 = new JTextField();jTextField1.setPreferredSize(new Dimension(10, 25);jTextField1.setBounds(new Rectangle(183, 59, 169, 30);return jTextField1;private JPasswo
6、rdField getJPasswordField() if (jPasswordField = null) jPasswordField = new JPasswordField();jPasswordField.setBounds(new Rectangle(183, 99, 169, 30);jPasswordField.addKeyListener(new java.awt.event.KeyAdapter()public void keyPressed(java.awt.event.KeyEvent e)if(e.getKeyChar()=KeyEvent.VK_ENTER)test
7、(););return jPasswordField;public static void main(String args) SwingUtilities.invokeLater(new Runnable() public void run() Login thisClass = new Login();thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);thisClass.setVisible(true););public Login() super();initialize();private void initialize(
8、) this.setSize(400, 250);Dimension d=Toolkit.getDefaultToolkit().getScreenSize();Dimension fsize=this.getSize();this.setLocation(d.width-fsize.width)/2, (d.height-fsize.height)/2);this.setContentPane(getJContentPane();this.setTitle(二级文件系统);private JButton getJButton2() if (jButton2 = null) jButton2
9、= new JButton();jButton2.setBounds(new Rectangle(218, 167, 90, 32);jButton2.setText(取消);jButton2.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent e) System.exit(0););return jButton2;private JPanel getJContentPane() if (jContentPane = null)
10、jLabel = new JLabel();jLabel.setText(密码:);jLabel.setHorizontalAlignment(SwingConstants.CENTER);jLabel.setBounds(new Rectangle(27, 101, 132, 29);jLabel2 = new JLabel();jLabel2.setText(用户名:);jLabel2.setBounds(new Rectangle(27, 59, 133, 29);jLabel2.setHorizontalAlignment(SwingConstants.CENTER);jLabel2.
11、setPreferredSize(new Dimension(10, 15);jLabel1 = new JLabel();jLabel1.setText(登陆界面);jLabel1.setFont(new Font(u534eu6587u5b8bu4f53, Font.BOLD, 24);jLabel1.setBounds(new Rectangle(0, 0, 389, 32);jLabel1.setForeground(new Color(255, 0, 54);jLabel1.setHorizontalAlignment(SwingConstants.CENTER);jContentP
12、ane = new JPanel();jContentPane.setLayout(null);jContentPane.add(jLabel1, null);jContentPane.add(jLabel2, null);jContentPane.add(jLabel, null);jContentPane.add(getJTextField1(), null);jContentPane.add(getJPasswordField(), null);jContentPane.add(getJButton1(), null);jContentPane.add(getJButton2(), nu
13、ll);return jContentPane;private JButton getJButton1() if (jButton1 = null) jButton1 = new JButton();jButton1.setBounds(new Rectangle(79, 168, 84, 33);jButton1.setText(确定);jButton1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) test(););return jButton1;public void t
14、est()if(jTextField1.getText().equals(zhaoran)&String.valueOf(jPasswordField.getPassword().equals(1234)String aa=aa,bb;Contents.main(aa); setVisible(false);elseJOptionPane.showMessageDialog(Login.this, 输入错误!请重新输入!);3.2.2新建文件目录private class newMenuAction implements ActionListener public void actionPer
15、formed(ActionEvent arg0) try String Name = JOptionPane.showInputDialog(创建目录名称:); if (!Name.equals() TreePath path = tree.getSelectionPath(); MutableTreeNode node = (MutableTreeNode) path.getLastPathComponent(); DefaultTreeModel model = (DefaultTreeModel) tree.getModel(); MutableTreeNode newNode = ne
16、w DefaultMutableTreeNode(Name); tree.fireTreeExpanded(path); if (node.getAllowsChildren()model.insertNodeInto(newNode, node, 0);else JOptionPane.showMessageDialog(null, 不能给文件追加下级目录!);return;String fullPath = ;for (Object obj : path.getPath() String str = obj.toString();if (str.endsWith()str = str.su
17、bstring(0, str.length() - 1);if (fullPath.equals()fullPath += str;elsefullPath += + str;File parentDir = new File(fullPath);if (parentDir.isDirectory() File currentFile = new File(fullPath + + Name);currentFile.mkdir(); else JOptionPane.showMessageDialog(null, 文件名不能为空!); catch (HeadlessException e)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 课程设计 二级 文件系统
限制150内