工作笔记--4
2018-01-06 14:58
253 查看
+ 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
在串口下。 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
相关文章推荐
- angularJs工作笔记-ng-class、ng-style的几种用法
- 工作笔记
- 2017工作笔记-ZXG
- cocos2d-x之码农工作笔记CCAciton
- 工作笔记-javascript-网络层封装
- Hadoop工作原理学习笔记
- uboot阅读笔记之cpu工作模式(SVC32)
- PHP工作笔记:使用yii migrate管理、生成数据库
- Git学习笔记 chapter03--工作区、暂存区
- 工作笔记-环境搭建
- 工作笔记之故障处理
- ubuntu下PATH路径的设置——工作笔记
- [国嵌笔记][021-022][ARM处理器工作模式]
- 【笔记】【chanpin100产品经理深入浅出】产品经理工作职责
- 工作学习笔记
- 工作笔记-Winform部分
- 02.去,过你想要的人生——工作:你要无可取代(笔记)
- 工作中常用Lixu命令学习笔记
- 工作笔记-HP1020共享打印必需重启打印服务器才能打印的处理方法
- 工作笔记之-GestureDetector手势检测