当前位置: 首页 >> 程序设计 >> Linux内核指导(1)—理解Shell
 

Linux内核指导(1)—理解Shell

作者:      来源:http://blog.csdn.net/tedyxuan     发表时间:2006-12-24     浏览次数:      字号:    

1.内核初始化过程,所有的函数列表。P26

2.在用户态初始化阶段init程序在每个tty端口上创建一个进程以支持用户登陆。每个进程都运行一个getty程序的拷贝。getty负责验证口令,进入shell

3.Shell的几大功能:
      3.1 后台运行
        if ((pid= fork() ==0)
             execv(buffer, arg);
        else{
             if (is_back ==0)
              waitpid(pid,&status,0);
            }
      3.2 I/O重定向
        每个进程都在内核有自己的文件描述表(fileDescriptor)
        用if (dup2(fd_out,STDOUT_FILENO)==-1) 把fd_out所指的file discriptor复制到 STDOUT。复制的文件描述词与原来的共享文件状态

        3.3管道
            int pipeID[2];
            pipe(pipID);
            pipeID[0]是一个文件描述符,指向管道的读端。pipeID[1]
            父进程创建管道,让两个子进程读写。

4.Shell 脚本
    argv1="$1"
    set '/sbin/runlevel'
    "command"格式的命令:执行command,并把结果替换到该位置
    set 用于在脚本文件内设定命令行参数
    [ -d /home/t ] []判断 其中的表达式

5.制作linux启动盘
    启动分为两大:
    1.root盘,所有的文件系统,ext2文件系统。拷贝所有的基本配置文件(rc,inittab,fstab)和基本命令和模块
    dd if=/dev/ramdisk bs=1k | gzip -v9 > /rootfs.gz
    dd if=/rootfs.gz of=/dev/fd0 bs=1k
    2.boot盘,影像了linux内核 dd if=/boot/vmlinuz-2.4.2-2 of=/dev/fd0 bs=1k

责任编辑 webmaster

 
 
 
 
 
评论更多>>
 
 
 
发表
 
姓名: QQ:
性别: MSN:
E-mail: 主页:
评分: 1 2 3 4 5
评论内容:
验证码:
  
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  •