摘要: JAVA学习 输入/输出 文件系统 Path接口 Path用于来表示文件路径和文件。 可以通过 FileSystem类 的 getPath() 方法来创建Path实例: 也可通过 Path类 的 get() 方法创建一个Path实例: Path还有方法getFileName()、getParent( 阅读全文
posted @ 2019-03-31 23:06 20189205黄铸君 阅读(211) 评论(0) 推荐(0) 编辑
摘要: JAVA学习 枚举 Java中提供了enum类用以进行枚举。其定义方法如下,每个枚举类型间使用逗号隔开: 在定义了枚举类之后即可在类中使用,其使用方法如下: 在使用类时通过如下方法定义enum变量: 遍历枚举值 在enum类中定义了 用于遍历枚举值,同时可在vlaues方法的返回对象上调用 和`or 阅读全文
posted @ 2019-03-24 22:01 20189205黄铸君 阅读(230) 评论(0) 推荐(0) 编辑
摘要: JAVA学习 String 类 Java 中通过String类来创建和操作字符串。 String类中主要的方法有: 1 char charAt(int index) 返回指定索引处的 char 值。 2 int compareTo(Object o) 把这个字符串和另一个对象比较。 3 int co 阅读全文
posted @ 2019-03-17 21:21 20189205黄铸君 阅读(166) 评论(0) 推荐(0) 编辑
摘要: JAVA学习 类与对象 Java作为面向对象编程语言,其思想是将现实中的对象抽象成一个个类的实例进行建模与编程 。包括了类、对象、方法和变量字段等概念。 类 :类是一个模板,它描述一类对象的状态和行为。例如现实中的鸟,其可以有颜色、重量、年龄等状态,还有进食、飞、睡眠等行为。 对象 :对象是类的一个 阅读全文
posted @ 2019-03-10 19:13 20189205黄铸君 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 初识JAVA JAVA基础知识 Java是一种面向对象的编程语言,面向对象程序设计(Object Oriented Programming),其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。 一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍下 阅读全文
posted @ 2019-03-03 21:40 20189205黄铸君 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 进程的切换和系统的一般执行过程 进程调度的时机 Linux内核通过schedule函数来实现进程调度。每次调用schedule函数,其都会在进程队列中查找一个进程,将CPU分配给它。 调用schedule函数的方法 进程主动调用schedule函数,如进程调用阻塞的系统调用等待外设或主动休眠,最终会 阅读全文
posted @ 2018-12-09 22:16 20189205黄铸君 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 可执行程序工作原理 程序编译 Linux系统中c语言源程序的编译过程主要分为四个步骤:预处理、编译、汇编、链接。 预处理 预处理阶段的工作内容如下: 删除所有注释; 删除所有 define ,并展开所有宏定义; 处理所有条件预编译指令; 处理 include 预编译指令,将被包含的文件插入预编译指令 阅读全文
posted @ 2018-12-02 21:01 20189205黄铸君 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 进程的描述与进程的创建 编程实现一个一个具有执行命令功能的shell 主要思路是通过利用exec函数族来实现用户输入的命令,但是调用exec函数族将会覆盖源程序,因此需要先使用 函数生成子进程,在子进程中调用 ,而父进程则使用 函数等待子进程完成。 本程序使用的 是`execve() int exe 阅读全文
posted @ 2018-11-25 22:31 20189205黄铸君 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 跟踪系统调用 调试MenuOS新增的函数 重新下载 可以看到 在 文件中增加了新的函数 和`TimeAsm`: 其调用接口分别为 和`time asm`: 其功能为显示当前系统时间, 可以打开增加了新功能的MenuOS系统,在系统中使用新增的功能 和`time asm`。 gdb跟踪调试sys_ti 阅读全文
posted @ 2018-11-18 16:00 20189205黄铸君 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 系统调用的三层机制 用户态、内核态与系统调用 Inter x86 CPU定义了4种不同的执行级别,数字越小特权越高。Linux系统采用了其中的0、3两个特权级别。 用户态:Ring3,运行于用户态的代码则要受到处理器的诸多检查,它们只能访问映射其地址空间的页表项中规定的在用户态下可访问页面的虚拟地址 阅读全文
posted @ 2018-11-10 19:33 20189205黄铸君 阅读(142) 评论(0) 推荐(0) 编辑