随笔分类 - linux common sense
摘要:linux 的日志系统,以及常见的日志安置方式 /sys和/pro文件系统,selinux在/sys/fs中
阅读全文
摘要:http://blog.csdn.net/changli_90/article/details/8911191
阅读全文
摘要:http://blog.csdn.net/crond123/article/details/5733776http://bbs.csdn.net/topics/90377015http://bbs.csdn.net/topics/90377015
阅读全文
摘要:一. 使用 su 命令临时切换用户身份1、su 的适用条件和威力 su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用户没有这个权限,而这个权限恰恰由root所拥有。解决办法无法有两个,一是退出beinan用户,重新以...
阅读全文
摘要:linux运行级别linux启动之后会在一个级别运行,下面列出了这些运行级别:0 系统停止1 单用户系统,不需要登陆2 多用户系统但不支持NFS,命令行模式登陆3 完整多用户模式,命令行模式登陆4 未用5 X11图形模式,图形模式登陆6 重新启动系统这些可以在/etc/initab文件中可以看到0-...
阅读全文
摘要:http://blog.csdn.net/lzhsdly/article/details/7218918http://blog.csdn.net/lzhsdly/article/details/7219011
阅读全文
摘要:http://blog.sina.com.cn/s/blog_5b1572e30100gulz.html
阅读全文
摘要:1. /proc目录Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。下面列出的这些文件或子文件夹,并不是都是在你的系统中存在,这取决于你的内核配置和装载的模块。另外,在/proc下还有三个很重要的目录:net,scsi和
阅读全文
摘要:http://blog.csdn.net/michael2012zhao/article/details/5554023一、 段寄存器的产生段寄存器的产生源于Intel 8086 CPU体系结构中数据总线与地址总线的宽度不一致。数据总线的宽度,也即是ALU(算数逻辑单元)的宽度,平常说一个CPU是“16位”或者“32位”指的就是这个。8086CPU的数据总线是16位。地址总线的宽度不一定要与ALU的宽度相同。因为ALU的宽度是固定的,它受限于当时的工艺水平,当时只能制造出16位的ALU;但地址总线不一样,它可以设计得更宽。地址总线的宽度如果与ALU相同当然是不错的办法,这样CPU的结构比较均衡
阅读全文
摘要:内核态与用户态是操作系统的两种运行级别,intel cpu提供Ring0-Ring3三种级别的运行模式。Ring0级别最高,Ring3最低。其中特权级0(Ring0)是留给操作系统代码,设备驱动程序代码使用的,它们工作于系统核心态;而特权极3(Ring3)则给普通的用户程序使用,它们工作在用户态。运行于处理器核心态的代码不受任何的限制,可以自由地访问任何有效地址,进行直接端口访问。而运行于用户态的代码则要受到处理器的诸多检查,它们只能访问映射其地址空间的页表项中规定的在用户态下可访问页面的虚拟地址,且只能对任务状态段(TSS)中I/O许可位图(I/O Permission Bitmap)中规定
阅读全文
摘要:在Linux中主要提供了fork、vfork、clone三个进程创建方法。问题在linux源码中这三个调用的执行过程是执行fork(),vfork(),clone()时,通过一个系统调用表映射到sys_fork(),sys_vfork(),sys_clone(),再在这三个函数中去调用do_fork()去做具体的创建进程工作。fork fork创建一个进程时,子进程只是完全复制父进程的资源,复制出来的子进程有自己的task_struct结构和pid,但却复制父进程其它所有的资源。例如,要是父进程打开了五个文件,那么子进程也有五个打开的文件,而且这些文件的当前读写指针也停在相同的地方。所以,这.
阅读全文
摘要:另外总结文件锁信号量(Semaphore),有时被称为信号灯,是在多环境下使用的一种设施,是可以用来保证两个或多个关键代码段不被并发调用。在进入一个关键代码段之前,线程必须获取一个信号量;一旦该关键代码段完成了,那么该线程必须释放信号量。其它想进入该关键代码段的线程必须等待直到第一个线程释放信号量。为了完成这个过程,需要创建一个信号量VI,然后将AcquireSemaphoreVI以及ReleaseSemaphoreVI分别放置在每个关键代码段的首末端。确认这些信号量VI引用的是初始创建的信号量。1.信号:(signal)是一种处理异步事件的方式。信号时比较复杂的通信方式,用于通知接受进程有某
阅读全文
摘要:弄清硬盘的低格和高格的概念 系统中可以随机访问(不需要按顺序)访问固定大小数据片(chunks)的设备称为块设备,这些数据片就称作块。最常见的块设备是硬盘,除此以外,还有软盘驱动器(floppy),CD-ROM驱动器和闪存等等许多其他块设备。注意,他们都是以安装文件系统的方式使用的-----这也是块设备的一般访问方式。 另一种基本的设备类型是字符设备。字符设备按照字节流的方式被有序访问,像串口和键盘就属于字符设备(网卡??)。如果一个硬件设备以字符流的方式被访问的话,那就应该归于字符设备;反过来,如果一个设备是随机(无序的)访问的,那么就属于块设备。 这两种类型的设备的根本区别在于它...
阅读全文
摘要:A buffer is just a container to hold data for a short period of time when more comes in at any given time than a consumer can use / process. It's a first-in, first-out situation - the data comes in, might be buffered, and goes out in the same order it came in, after a while.A cache is a storage
阅读全文
摘要:大端在前为大端,在前指低地址记口诀 小端“高高低低”(第一个高是数据的高字节,适用于数字类型) 大端“高低高低”(第二个指低地址,适用于字符串类型)一、大端模式和小端模式的起源 关于大端小端名词的由来,有一个有趣的故事,来自于Jonathan Swift的《格利佛游记》:Lilliput和Bl...
阅读全文
摘要:这个文件记录了编译时使用的动态链接库的路径。默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件如果你安装了某些库,比如在安装gtk+-2.4.13时它会需要glib-2.0 >= 2.4.0,辛苦的安装好glib后没有指定 --prefix=/usr 这样glib库就装到了/usr/local下,而又没有在/etc/ld.so.conf中添加/usr/local/lib=================库文件的路径如 /usr/lib 或 /usr/local/lib 应该在 /etc/ld.so.conf 文件中,这样 ldd 才能找到这个库。在检查了这一点后,要
阅读全文
摘要:在操作系统中,一般系统的服务都是以后台进程的方式存在,而且都会常驻系统中,直到关机才结束。这类服务也称Daemon,在Linux系统中就包含许多的Daemon。判断Daemon最简单的方法就是从名称上看。多数的Daemon都是由服务名称加上d。例如,在Linux操作系统中HTTP服务的Deamon就是httpd。另外还有sshd和telnetd。
阅读全文
摘要:blog.csdn.net/todd911/article/details/8025540Linux上许多网络服务应用,如l2tp、pptp、telnet,都用到了伪终端。有朋友在问这方面的概念,把偶知道的写下来,以供讨论。一、终端要理解伪终端(Pseudo Terminal),先来看看什么是“终端”(Terminal)。终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。1、串行端口终端(/dev/ttySx)串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。这些串行端口所对应的设备名
阅读全文
摘要:ttS*是面向设备ttyn是面向进程shell与终端的关系:shell把一些信息适当的输送到终端设备,同时还接收来自终端设备的输入。一般每个shell进程都会有一个终端关联,也可以没有。文件都有设备号属性(主设备号和从设备号)字符设备的特性是FIFO,是一个队列,没有缓冲区,典型的是键盘和屏幕,在用户空间对应的是(stdin,stdout,stderror,对应glibc的FILE结构体),对应的设备文件是tty或者tps/n,stdio中的读写函数(printf,scanf),使用的便是上面三个结构体打开的文件,所谓的读写缓冲区就是stdio和stdout FILE结构体对应的缓冲区,std
阅读全文
摘要:我们打开一个terminal,那么将会在devpts文件系统/dev/pts下创建一个对应的pts字符文件,该pts字符文件节点直接由/dev/ptmx节点的驱动函数ptmx_open()调用devpts_pty_new(tty->link)[tty对应ptmx,tty->link对应/dev/pts/xxx,那么tty->link->link又对应回ptmx同样ptm_driver->other等于pts_driver,pts_driver->other等于ptm_driver]主动创建,而非通过netlink的udev或者hotplug配合创建[luth
阅读全文

浙公网安备 33010602011771号