资源简介
ORANGE’S:一个操作系统的实现(高清晰版)附带光盘文件
代码片段和文件信息
/*************************************************************************//**
*****************************************************************************
* @file disklog.c
* @brief
* @author Forrest Y. Yu
* @date Thu Nov 20 16:22:45 2008
*****************************************************************************
*****************************************************************************/
#include “type.h“
#include “config.h“
#include “stdio.h“
#include “const.h“
#include “protect.h“
#include “string.h“
#include “fs.h“
#include “proc.h“
#include “tty.h“
#include “console.h“
#include “global.h“
#include “keyboard.h“
#include “proto.h“
#include “hd.h“
#include “fs.h“
#define DISKLOG_RD_SECT(devsect_nr) rw_sector(DEV_READ \
dev \
(sect_nr) * SECTOR_SIZE \
SECTOR_SIZE /* read one sector */ \
getpid() \
logdiskbuf);
#define DISKLOG_WR_SECT(devsect_nr) rw_sector(DEV_WRITE \
dev \
(sect_nr) * SECTOR_SIZE \
SECTOR_SIZE /* write one sector */ \
getpid() \
logdiskbuf);
/* /\***************************************************************************** */
/* * do_disklog */
/* *****************************************************************************\/ */
/* /\** */
/* * Perform syslog() system call . */
/* * */
/* * @return */
/* *****************************************************************************\/ */
/* PUBLIC int do_disklog() */
/* { */
/* char buf[STR_DEFAULT_LEN]; */
/* /\* get parameters from the message *\/ */
/* int str_len = fs_msg.CNT; /\* length of filename *\/ */
/* int src = fs_msg.source; /\* caller proc nr. *\/ */
/* assert(str_len < STR_DEFAULT_LEN); */
/* phys_copy((void*)va2la(TASK_FS buf) /\* to *\/ */
/* (void*)va2la(src fs_msg.BUF) /\* from *\/ */
/* str_len); */
/* buf[str_len] = 0; /\* terminate the string *\/ */
/* return disklog(buf); */
/* } */
/*****************************************************************************
* disklog
*****************************************************************************/
/**
* Write log string directly into disk.
*
* @param p Ptr to the MESSAGE.
*****************************************************************************/
PUBLIC int disklog(char * logstr)
{
int device = root_inode->i_dev;
struct super_block * sb = get_super_block(device);
int nr_log_blk0_nr = sb->nr_sects - NR_SECTS_FOR_LOG; /* 0x9D41-0x800=0x9541 */
static int pos = 0;
if (!pos) { /* first time invoking this routine */
#ifdef SET_LOG_SECT_SMAP_AT_STARTUP
/*
* set sector-map so that other files cannot use the log sectors
*/
int bits_per_sect = SECTOR_SIZE * 8; /* 4096 */
int smap_blk0_nr = 1 + 1 + sb->nr_imap_sects; /* 3 */
int sect_nr = smap_blk0_nr + nr_log_blk0_nr / bits_per_sect; /* 3+9=12 */
int byte_off = (nr_log
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 512 2017-04-10 01:34 Oranges\file\boot.bin
文件 28806744 2017-04-11 09:26 Oranges\ORANGE’S:一个操作系统的实现(高清晰版)1.pdf
文件 1474560 2009-03-30 16:16 Oranges\光盘文件\chapter1\a\a.img
文件 661 2009-03-30 16:16 Oranges\光盘文件\chapter1\a\bochsrc
文件 563 2009-03-30 16:16 Oranges\光盘文件\chapter1\a\boot.asm
文件 1474560 2009-03-30 16:16 Oranges\光盘文件\chapter1\b\a.img
文件 661 2009-03-30 16:16 Oranges\光盘文件\chapter1\b\bochsrc
文件 821 2009-03-30 16:16 Oranges\光盘文件\chapter1\b\boot.asm
文件 81567 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\80m.img.gz
文件 1474560 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\a.img
文件 1000 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\bochsrc
文件 10018 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\boot\boot.asm
文件 2222 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\boot\include\fat12hdr.inc
文件 1552 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\boot\include\load.inc
文件 13873 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\boot\include\pm.inc
文件 29754 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\boot\loader.asm
文件 25149 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\fs\disklog.c
文件 6075 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\fs\li
文件 16086 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\fs\main.c
文件 3923 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\fs\misc.c
文件 11610 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\fs\open.c
文件 3777 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\fs\read_write.c
文件 2897 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\stdio.h
文件 979 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\string.h
文件 931 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\sys\config.h
文件 913 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\sys\console.h
文件 8289 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\sys\const.h
文件 4370 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\sys\fs.h
文件 1725 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\sys\global.h
文件 11657 2009-03-30 16:17 Oranges\光盘文件\chapter10\a\include\sys\hd.h
............此处省略2752个文件信息
- 上一篇:xftp6破解版
- 下一篇:大话数据结构_最高清版_带目录.pdf
相关资源
- 嵌入式实时操作系统μC/OS-II与eCos的
- 嵌入式实时操作系统在DATU中的应用
- 嵌入式实时操作系统μC/OS-II下通用驱
- 嵌入式实时操作系统μC/OS-II在ARM上的
- 嵌入式操作系统的解析
- SAC型液压支架控制器检测平台的设计
- 基于MSP430单片机的实时多任务操作系
- 湖南大学操作系统实验报告
- 中标麒麟操作系统指南
- 操作系统最新视频教材链接(百度网
- 操作系统教程课后习题答案
- 操作系统教程 第5版 费翔林 骆斌 pp
- Linux操作系统下配置无密码的RSH访问
- 易语言仿真版源码易语言模拟版本源
- 嵌入式实时操作系统的RAM盘扩展
- 深入解析windows操作系统第六版 上册
- win7 和xp操作系统的打印机一键共享
- 深入解析Windows操作系统第6版 上下册
- 计算机408天勤2019数据结构计算机考研
- 计算机操作系统第4版超清
- 操作系统设计与实现 第三版 上下册
- 操作系统概念第九版原版辅助资源含
- 北航《操作系统》期末试题与答案
- 操作系统期末试卷与答案
- 自考操作系统上机含源代码
- 操作系统实验报告哲学家就餐问题、
- 操作系统课程设计代码
- linux内核设计的艺术 图解linux操作系统
- 大工软件学院操作系统第四次上机
- 操作系统课程设计 银行家算法论文
评论
共有 条评论