Linux
FreeFu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
as86汇编示例——boot.s
一、源代码! ! boot.s -- bootsect.s的框架程序.用代码0x07替换字符串msg1中的1字符,然后在屏幕第一行上显示. ! .globl begtext,begdata,begbss,endtext,enddata,endbss !全局标示符,供ld86链接使用. .text !正文段 begtext: .data原创 2016-12-22 20:05:12 · 1013 阅读 · 0 评论 -
操作系统的引导
一、源代码!bootsect.s !当 PC 的电源打开后,80x86 结构的 CPU 将自动进入实模式,并从地址 0xFFFF0 开始自动执行程序代码,这 !个地址通常是 ROM-BIOS 中的地址。PC 机的 BIOS 将执行某些系统的检测,在物理地址 0 处开始初始化中 !断向量。此后,它将可启动设备的第一个扇区读入内存地址 0x7C00 处,并跳转到这个地方。此代码即为引导扇 !区的代码,原创 2016-12-27 13:49:28 · 747 阅读 · 0 评论 -
系统调用
一、源代码//定义系统调用编号 //linux-0.11/include/unistd.h #define __NR_iam 72 #define __NR_whoami 73 //hdc/usr/include/unistd.h #define __NR_iam 72 #define __NR_whoami 73 //定义系统调用在用户空间里的接口函数原创 2016-12-27 22:09:28 · 775 阅读 · 0 评论 -
进程运行轨迹的跟踪
一、源代码/* process.c Linux下多进程程序,父进程循环创建NUM_CPROC个子进程,每个子进程执行cpuio_bound程序,父进程循 环打印子进程的PID,之后阻塞等待子进程结束返回。 */ #include<stdio.h> #include<unistd.h> #include<time.h> #include<sys/times.h> #includ原创 2016-12-29 12:34:34 · 2913 阅读 · 0 评论 -
信号量的实现和应用
一 源代码/* Ubuntu_pc.c Ubuntu16.04下关于生产者和消费者的示例程序,首先创建一个进程为生产者,往文件缓冲区里面写数字,然 后创建一组消费者进程,从文件缓冲区里面读数字输出到终端,同时显示子进程的PID.进程之间的同步和临界 资源的互斥访问通过信号量来实现. */ #include<stdio.h> #include<semaphore.h>原创 2016-12-30 20:37:42 · 1211 阅读 · 0 评论 -
字符显示的控制
一 源代码/* linux-0.11/include/asm/system.h 添加f12_on标志 */int f12_on;//定义f12_on表示是否按下f12(每按两次抵消)/* linux-0.11/kernel/chr_drv/keyboard.S 注释掉f12显示进程信息的功能 *///按键调用键盘中断处理程序 keyboard_interrupt:原创 2017-01-01 18:02:51 · 737 阅读 · 0 评论 -
地址映射与共享
一 跟踪地址翻译过程#include <stdio.h>int i = 0x12345678;int main(void) { printf("The logical/virtual address of i is 0x%08x", &i); fflush(stdout); while (i); return 0; }//将上述程序在linux-0.11编译运行,不出所原创 2017-01-01 20:29:39 · 1271 阅读 · 0 评论
分享