IO 进程作业

mkfifo.c
 




 #include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<errno.h>
#include<unistd.h>

int main(int argc, const char *argv[])
{   
	char buf[1024]={0};
	//mkfifo(argv[1],0666);//创建文件
	/*if(mkfifo(argv[1],0666)<0 &&errno ==EEXIST)*/
	/*{*/
	/*perror("fail");*/
	/*return -1;*/
	/*}*/
     int fd=open(argv[1],O_RDWR);
	/* write(fd,buf,sizeof(buf));*/
	 while(1){
	   read(fd,buf,sizeof(buf));
	   if(!strncmp(buf,"quit",4)){
	      exit(0);
	     }
	   printf("%s\n",buf);
	 }
	return 0;
}
 #include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<errno.h>
#include<unistd.h>

int main(int argc, const char *argv[])
{   
	char buf[1024]={0};
	//mkfifo(argv[1],0666);//创建文件
	if(mkfifo(argv[1],0666)<0 &&errno ==EEXIST)
	{
	perror("fail");
	return -1;
	}
     int fd=open(argv[1],O_RDWR);
	/* write(fd,buf,sizeof(buf));*/
	 while(1){
		 fgets(buf,sizeof(buf),stdin);
	   write(fd,buf,sizeof(buf));
	   if(!strncmp(buf,"quit",4)){
	      exit(0);
	     }
	  // printf("%s\n",buf);
	 }
	return 0;
}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 进程调度和作业调度是操作系统中两个重要的调度概念。 进程调度是指操作系统在多个进程运行时,根据一定的策略和算法,决定哪个进程可以获得CPU时间片,从而实现进程之间的切换和调度。进程调度的目的是提高系统的资源利用率和响应速度,以及保证进程的公平性和优先级。 作业调度是指操作系统在多个作业提交时,根据一定的算法和策略,决定作业的执行顺序和分配资源,以满足多个作业之间的资源共享和冲突解决。作业调度的目的是提高系统的吞吐量和效率,以及减少用户的等待时间和响应时间。 总的来说,进程调度是针对已经在系统中运行的多个进程进行调度,而作业调度是针对尚未进入系统的多个作业进行调度,两者的目的和实现方法都有所不同。 ### 回答2: 进程调度和作业调度都是操作系统中重要的调度机制,它们在管理和分配系统资源方面具有不同的职责和目标。 进程调度是操作系统根据进程的优先级和调度算法,决定将CPU分配给哪个进程执行的过程。进程调度的目标是提高系统的吞吐量、响应时间和公平性。它决定了进程的执行顺序,保证了资源的合理分配。进程调度算法有多种,如先来先服务(FCFS)、最短作业优先(SJF)、最高响应比优先(HRRN)等,根据不同的应用场景选择合适的算法作业调度是在多道程序系统中,根据作业的优先级和资源需求,调度作业的执行顺序。作业调度的目标是提高系统的吞吐量、资源利用率和作业的响应时间。它主要负责作业的分派和切换,在计算机系统中,一个作业可以由多个进程组成。作业调度算法有多种,如先来先服务(FCFS)、最短作业优先(SJF)、最高响应比优先(HRRN)等,与进程调度算法有些相似。 进程调度和作业调度的区别在于调度的单位不同。进程调度是调度进程,决定哪个进程优先获得CPU资源。而作业调度是调度作业,决定作业的执行顺序。进程调度可以看作是作业调度的一部分,两者紧密相关。 总结起来,进程调度和作业调度在操作系统中都起着重要的作用,它们通过不同的调度算法,来提高系统的吞吐量、响应时间和资源利用率。 ### 回答3: 进程调度和作业调度是操作系统中的两个重要概念,负责对进程作业进行调度和管理。 首先,进程调度是指在操作系统中,根据一定的算法和策略,选择合适的进程分配处理机的过程。其目标是提高系统的吞吐率、响应时间和公平性。进程调度主要关注的是当前系统中处于就绪状态的进程,其作用是根据进程的优先级、处理机利用率、IO操作等因素,决定将处理机分配给哪个进程执行。进程调度算法有多种,如先来先服务(FCFS)、最短作业优先(SJF)、优先级调度、轮转法等。 而作业调度是指操作系统中负责管理和调度作业的过程。作业是一组相互关联的进程的集合,它们通常是用户提交给系统执行的任务。作业调度的目标是保证不同作业的公平性和优先级,并提高系统的效率和资源利用率。作业调度主要关注的是作业队列中等待执行的作业,其作用是根据作业的类型、优先级、资源需求等因素,决定将处理机分配给哪个作业执行。作业调度算法有多种,如先来先服务(FCFS)、短作业优先(SJN)、优先级调度等。 总结来说,进程调度和作业调度在调度的对象和范围上存在差异。进程调度主要关注的是当前就绪状态的进程,而作业调度主要关注的是作业队列中等待执行的作业。此外,进程调度和作业调度使用的调度算法也略有差异,但目标都是提高系统的效率和公平性,合理利用系统资源。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值