Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 先进先出与客户机/服务器_C_Linux_Bash_Sockets_Fifo - Fatal编程技术网

C 先进先出与客户机/服务器

C 先进先出与客户机/服务器,c,linux,bash,sockets,fifo,C,Linux,Bash,Sockets,Fifo,我是新来的。。。我想假设我不想解决我的问题,但我需要了解客户机/服务器程序和FIFO读写器程序之间的区别。。。我解释得更好 我必须为考试做一个项目。该项目的目的是“定义脚本Bash和C程序以自动更正检查任务” 教授让我写一些Bash脚本来完成考试任务,检查它们,并将每个任务的分数写在一个文件上。到目前为止一切都很清楚 然后教授问我4c程序,我什么都不懂了。我用英语翻译项目规范中的内容: 先进先出读卡器 它是一个C客户端,读取FIFO的内容并将其打印在标准输出上 将Fifo的名称作为参数(作为命令

我是新来的。。。我想假设我不想解决我的问题,但我需要了解客户机/服务器程序和FIFO读写器程序之间的区别。。。我解释得更好

我必须为考试做一个项目。该项目的目的是“定义脚本Bash和C程序以自动更正检查任务”

教授让我写一些Bash脚本来完成考试任务,检查它们,并将每个任务的分数写在一个文件上。到目前为止一切都很清楚

然后教授问我4c程序,我什么都不懂了。我用英语翻译项目规范中的内容:

先进先出读卡器 它是一个C客户端,读取FIFO的内容并将其打印在标准输出上 将Fifo的名称作为参数(作为命令行中的参数)

先进先出写入器

它是一个C客户机,用FIFO写入标准输入法的内容 将Fifo的名称作为参数(作为命令行中的参数)

网络服务器回声

这是一个C服务器,它侦听一个网络端口(TCP或UDP)(从命令行作为参数传递的端口数和backlog值),并且:

  • 读取输入流上的字符串

  • 写入对应输出流上已读取的字符串

  • 网络\u客户端\u echo

    这是网络服务器的客户端版本

    我不明白的是: fifo写入/读取程序不像带有套接字的客户机/服务器应用程序?教授用两种不同的方式问我们同样的问题?但是当教授谈到fifo读写器时,他定义了这两种类型。。。也许我还不明白教授到底在问我们什么……有人能帮我吗


    Thanx

    我想你已经完全理解了这个问题:-)

    在我看来,这项工作应该用两种不同的方式来完成。名为fifo的
    不是
    fifo
    不是
    socket
    。因此,您将学习如何访问不同的unix通信方式。我认为,研究所有这些方法的差异是有意义的


    玩得开心

    我想你已经完全理解了这个问题:-)

    在我看来,这项工作应该用两种不同的方式来完成。名为fifo的
    不是
    fifo
    不是
    socket
    。因此,您将学习如何访问不同的unix通信方式。我认为,研究所有这些方法的差异是有意义的


    玩得开心

    太好了!你是对的。FIFO文件(通常称为
    命名管道
    )在本地工作(在类UNIX系统上),而基于
    套接字
    的解决方案用于联网


    但是,在Windows中,
    命名管道
    也可以通过(microsoft)网络工作,因此您可以在一台计算机上打开命名管道FIFO,然后从第二台计算机访问它。这在类UNIX系统中不起作用。

    太好了!你是对的。FIFO文件(通常称为
    命名管道
    )在本地工作(在类UNIX系统上),而基于
    套接字
    的解决方案用于联网

    但是,在Windows中,
    命名管道
    也可以通过(microsoft)网络工作,因此您可以在一台计算机上打开命名管道FIFO,然后从第二台计算机访问它。这在类UNIX系统中不起作用