工作笔记--4

+ fdisk /dev/sda1 后面数字的含义。

在串口下。 fdisk /dev/sda1 enter键会出现:

command (m for help):m enter 会出现在其他地方一直没有找到的命令选项。为什么 man disk 也没有出现这些解释。

+mkfs.ext4  -h  可出现帮助信息。

+要想把自己的进程做成deamon 程序,必须按照以下步骤进行。

1)调用 fork 产生一个子进程,同时父进程退出。 这样,如果是从命令行执行的该程序,这可以造成程序执行完毕的假象,shell会回去等待下一条命令; 而刚刚通过fork产生的新进程一定不会是一个进程组的组长,这为下一步提供了保障。

2)调用 setsid 系统调用,这是整个过程中最重要的一步,他的作用是创建一个新的会话(session),并自认会话组的组长(session leader)。一个进程组的组长是不能调用这个函数的。

调用SERSID有三个作用。

一是让进程摆脱原绘画的 控制

二是让进程摆脱原进程组的控制

三是让进程摆脱原控制终端的控制。

总之,就是调用进程完全独立出来,脱离所有其他进程的控制

3) 把当前的工作目录切换到根目录。如果是在一个临时加载的文件系统上执行这个进程的,比如/mnt/floppy/, 该进程的当前工作目录就是/mnt/floppy/,在整个进程运行期间该文件系统都无法被卸载。而无论是否使用这个系统,都有不便。

解决的方法是使用cndir系统调用把当前工作目录转变为根目录。当然,在这一步里,如果有特殊的 需要,也可以吧当前的目录转换成其他的路径, 如/tmp/.

4)将文件权限掩码设为0,这需要调用umask.  每个进程都会从父进程那里继承一个文件夹掩码,当创建新文件时用到它。当另一个进程用exec调用编写的deamon程序时,由于不知道那个进程的文件权限码是什么,这样创建文件时,就会有麻烦。所以应该重设它,一般为0,既不会屏蔽用户的任何操作。如果新程序不涉及创建新文件或是文件操作访问的权限的设定。可以不用设置权限掩码。

5)关闭所有不需要的文件,同文件权限掩码一样,新进程会从父进程那里继承一些已经打开了的文件,我们可能一直用不到它们,但它们一样会消耗资源。在2)后,deamon进程已经与所属的控制终端失去了联系。从终端输入的字符串不可能达到deamon进程,deamon进程用常规的方法(如printf)输出的也不可能在终端上显示出来。so, 文件描述0,1,2即输入输出和报错失去了存在的价值,也应当被关闭。

最后, deamon不像其他进程一样也很明显的运行结果。可以用PS -ajx 观察deamon的状态和参数。

+ 判断文件是否为空, 可以用字符判断法 EOF, 和字符个数判断法,用哪种方法需要和C 库进行关联。

+把ram 中某块内存中的东西擦掉,用命令:

nand erase addr addr1 addr2

---> 查看rand工具或命令的用法。

+远程登录的两种方法:

1) ncftp -u linda  ip_addr   这种方式需要账号和密码

2) ftp ip_addr

+ 网查 UPNP DLAN


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值