Linux
dangercheng
这个作者很懒,什么都没留下…
展开
-
ubuntu 下打开终端的方法
ubuntu 下打开非全屏终端的方法gnome-terminal --full-screen//--------------------------------------第一种(当然是笨方法了)依次打开(应用程序-附件-终端),如果闲的麻烦,可以直接把它添加面板,这样也方便点!第二种首先按住Alt,然后按一下F2,出来一个运行框,在里面输入 gnome-t转载 2013-05-26 11:43:35 · 1971 阅读 · 0 评论 -
UNIX环境高级编程----文件I/O
1. 文件I/O文件描述符:对于内核而言,所有打开的文件都通过文件描述符引用,文件描述符是一个非负整数,当打开一个文件或创建一个新文件时,内核向进程返回一个文件描述符。在UNIX系统中使用文件描述符0域进程的标准输入相关联,1与标准输出相关联,2与标准出错相关联,幻数0,1,2可分别用符号常量STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO代替,这些常原创 2013-10-03 21:01:40 · 631 阅读 · 0 评论 -
UNIX环境高级编程---- 进程
进程是操作系统结构的基础;是一个正在执行的程序;计算机中正在运行的程序实例;可以分配给处理器并由处理器执行的一个实体;由单一顺序的执行显示,一个当前状态和一组相关的系统资源所描述的活动单元。进程终止的8种方式1) 从main返回2) 调用exit3) 调用_exit或_Exite4) 最后一个线程从其启动例程返回5) 最后一个线程调用pthread_exit异原创 2013-10-05 19:49:46 · 629 阅读 · 0 评论 -
UNIX环境高级编程----文件属性及权限
一:文件相关属性stat,lstat,fstat1 函数都是获取文件(普通文件,目录,管道,socket,字符,块()的属性。函数原型#include #include int stat(constchar *restrict pathname, struct stat *restrict buf);提供文件名字,获取文件对应属性。int fstat(intfiledes, str原创 2013-10-03 21:05:02 · 678 阅读 · 0 评论 -
UNIX环境高级编程----标准I/O
一.流:当用标准I/O打开或创建一个文件时,我们使一个流与一个文件相关联,当打开一个流时,标准I/O函数fopen返回一个指向FILE对象的指针,该对象通常是一个结构,它包含了标准I/O库为管理该流所需要的所有信息,包括:用于实际I/O的文件描述符,指向于缓冲区的指针,缓冲区的长度,当前缓冲区中的字符数以及出错标志等。对于一个进程预定义了三个流,并且这三个流自动的被进程使用,它们是:标准输入、原创 2013-10-05 17:15:14 · 787 阅读 · 0 评论 -
守护进程创建步骤
daemon进程步骤1. 调用fork产生一个子进程,同时父进程退出,所有后续工作都在子进程中完成。如果我们是从命令行执行的该程序,这可以造成程序执行完毕的假象,shell会回去等待下一条命令;刚刚通过fork产生的新进程一定不会是一个进程组的组长,这为第2步的执行提供了前提保障。由于父进程已经先于子进程退出,会造成子进程没有父进程,变成一个孤儿进程(orphan转载 2013-10-02 10:45:19 · 737 阅读 · 0 评论 -
linux编程-守护进程编写
linux编程-守护进程编写 守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待 处理某些发生的事件。守护进程是一种很有用的进程。 Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。 同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程转载 2013-07-18 11:39:13 · 515 阅读 · 0 评论 -
线程的分离状态
线程的分离状态决定一个线程以什么样的方式来终止自己。线程的默认属性,一般是非分离状态,这种情况下,原有的线程等待创建的线程结束。只有当pthread_join()函数返回时,创建的线程才算终止,才能释放自己占用的系统资源。而分离线程没有被其他的线程所等待,自己运行结束了,线程也就终止了,马上释放系统资源。程序员应该根据自己的需要,选择适当的分离状态。转载 2013-07-17 10:33:50 · 2558 阅读 · 0 评论 -
linux的c中signal函数
signal函数:void (*signal(int,void(*)(int))(int);signal函数是著名的信号函数,但是它的定义却非常的复杂…… 任何C变量,都是由“类型”+“表达式”组成,它表示,对“表达式”求值,返回的类型,是声明给定的“类型”的值,如 int a; 也就是对表达式a求值,是一个int类型; 同样地, int func转载 2013-07-12 13:24:57 · 2355 阅读 · 0 评论 -
Linux makefile 教程 非常详细,且易懂
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比转载 2013-06-27 14:59:20 · 1126 阅读 · 0 评论 -
两次fork函数可以防止进程僵死的理解
最近在看APUE,在进程控制章节中有个关于两次fork防止进程僵死的列子很是不理解,经过一番研究发现原来原理很简单,以下是实例: 1 #include 2 #include 3 #include 4 5 int main(void) 6 { 7 pid_t pid; 8 if((pid = fork()) < 0) 9原创 2013-07-08 23:22:18 · 1866 阅读 · 0 评论 -
变量的属性(全局变量、局部变量、动态变量、静态变量等)
变量的属性 1、变量的分类l 根据作用域:可分为全局变量和局部变量。l 根据生存周期:可分为静态存储方式和动态存储方式,具体地又分为自动的(auto)、静态的(static)、寄存器的(register)、外部的(extern)。静态存储方式是指在程序运行期间分配固定的存储空间的方式,动态存储方式是在程序运行期间根据需要进行动态的转载 2013-07-08 15:46:02 · 873 阅读 · 0 评论 -
SSH 协议基础
SSH的英文全称为Secure Shell,是IETF(Internet Engineering Task Force)的Network Working Group所制定的一族协议,其目的是要在非安全网络上提供安全的远程登录和其他安全网络服务。 我们可以简单理解为:Rlogin和Telnet等的替代方案。SSH的使用场景如下图所示,具体请参考下文SSH的框架。 S转载 2014-01-02 11:16:21 · 1358 阅读 · 0 评论