当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 谁来回答(win98\winnt\win2000\winxp进行局域网互连、广域网互连的设置??) ......
    摘要: 小弟急着用 麻烦你能发到我的油箱吗 chang_liu@wellsoon.com ......


课程设计求助 关于操作系统

课程设计要求写一个windows下的模拟系统    
  要实现一个真实的文件系统  
  进程管理  
  io控制  
  以及存储器管理  
   
  好像除了没有虚拟内存以为,操作系统的东西都被包含了  
  请问有什么资料可以参考  
  另外   请问如何得到磁盘的“绝对扇区”   这个是老师说的   据说有对应的   win32函数   而且允许调用   只要得到这个东西文件系统才能开始制作   所以请多多帮忙了  
  另外我现在系统是两千   所以希望不要9x下的函数

NO.1   作者: AthlonxpX86

搞错没有,这是研究生的课程,还是博士的课程,一点忙都帮不上你了,诶!回家修炼去了,  
  进程管理  
  io控制  
  以及存储器管理  
  这都应该是操作系统的事情,在windows操作系统中模拟出一个操作系统要是直接做应该是不可能的,我的思路是先做一个虚拟机(x86的要是能实现,那你就厉害了)然后在自己的虚拟机上做自己的操作系统,还有要是把一个物理存储器做成一个文件可能会简单的多,  
  http://www.clinux.org/  
  http://asmcos.51.net/  
  这两个网站上有一个简单的操作系统,可以参考一下原理,源代码我看过,现在还只有基本的框架而已

NO.2   作者: 3jaja

msdn  
    调试程序的原理.文件系统.文件格式、进程管理、io控制、以及存储器管理、磁盘格式  
  在windows操作系统中模拟出一个操作系统,只有Debug软件能做到。用DDK.  
 

NO.3   作者: Skt32

http://www.codeguru.com/system/ReadSector_source.zip  
  Win2000下直接读写磁盘扇区    
   
  原作者姓名   N/A  
  文章原始出处   http://www.codeguru.com/system/ReadSector.html    
  正文  
  闻怡洋译  
   
  在NT和2000下,通过CreateFile来打开需要读写的驱动器,ReadFile、WriteFile来进行磁盘读写。  
   
  下面的代码演示了,如何读写A驱  
  /*   -----------------------------------------------------  
   
            Read   Floppy   Disk   Sector   for   win   NT/2000  
            reads   [numsec]   sectors   from   [head]   [track]   [sector]  
   
  -------------------------------------------------------*/  
   
   
  char*   ReadSectors(int   head,   int   sector,   int   track,   int   numsec)  
  {  
   
   
  //   getting   logical   sector   from   absolute   head/track/sector   ...  
  //计算扇区位置  
  int   LogicalSector   =   (sector-1)   +    
                      (head*SECTORSPERTRACK)   +      
                    (track*SECTORSPERTRACK*NUMOFHEADS)   ;  
   
  char   *buffer   ;    
  HANDLE   hDevice   ;  
   
   
  HANDLE   hDevice;    
  char*   buffer   =   (char*)malloc   (512*numsec);  
  strset   (   buffer   ,     );  
  DWORD   bytesread   ;  
   
  //   getting   a   handle   to   the   drive   a:   using    
  //         CreateFile   ()   function   ....  
  //打开驱动器   \\.\A:  
  hDevice   =   CreateFile("\\\\.\\A:",    
                  GENERIC_READ,   FILE_SHARE_READ   |   FILE_SHARE_WRITE,    
                  NULL,   OPEN_EXISTING,   0,   NULL);    
   
  if   (hDevice   ==   NULL)    
  {  
        MessageBox   ("Failed   !");  
        return   NULL;  
  }  
           
         
  //   setting   the   file   pointer   to   the   start   of   the    
  //           sector   we   want   to   read   .    
  //移动文件指针到需要读取位置  
  SetFilePointer   (hDevice,    
                                    (LogicalSector*512),    
                                    NULL,    
                                    FILE_BEGIN);    
         
  //   reading   sector(s)   ...  
  //读数据  
  if   (!ReadFile   (   hDevice,    
                                    buffer,    
                                    512*numsec,    
                                    &bytesread,    
                                    NULL)   )  
  {  
          /*  
          int   err;  
          char   error[10];  
          err=GetLastError   ();  
          itoa   (err,   error,   10);  
          MessageBox   (error,   "Reading   sectors   ...Failed     ");  
          return   NULL   ;  
          */  
  }  
  //关闭  
  CloseHandle(hDevice);    
   
  return   buffer   ;  
  }  
   
     
  你那个老师,   估计是个老头吧


 ·为什么jbuilder8不能用    »显示摘要«
    摘要: 我刚开始学习jbuilder8, 装了jbuilder8 但我的web application是灰色的 不能使用 请教各位高手怎么设置? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE