编程小白成长记(一)

编程小白成长记(一)

2015年12月27日

  其实我写这些博客主要算是一种督促,算是一种日记吧。我认为把日常编程的内容写下来会更有利于自己的学习,更何况程序猿们通常因为长时间编程,表达能力会下降不少。而我并不希望自己变成一个羞于开口的人。于是,我决意开始写这个半日记半自我总结的博客。同时,我也强迫自己使用了以前并不熟悉的markdown编辑器。
  那么就开始写我的第一篇博客吧。今天我主要的目标是大致了解操作系统课的作业。实验的目标是:编制两个Windows窗口程序P1、P2。其中P1是前台进程,负责接收用户的输入,并通过消息机制或共享内存发送相应消息到P2。P2是后台程序,在收到消息后,根据不同的消息进行相应的操作。

  其中,P1发出的命令包括:
  1. 运行某个程序:用户输入在P1中运行的程序名和参数,P1发送给P2,P2执行这个程序。
  2. 结束某个进程:P1向P2发送获取运行子进程的请求,获取P2运行的子进程清单并显示,用户选择一个子进程发送给P2,P2终止该子进程并通知P1。

那么问题来了,如何设计这个项目?让我来逐字逐句的分析这个问题。

  1. 我要知道如何编制窗口程序;
  2. 我要知道如何让窗口程序P1接收用户的输入;
  3. 我要知道怎么编写出消息机制和共享内存两个进程间通信方式,以及这两个方式怎么把消息发到P2;
  4. 现在我知道P1传递的消息是P1中运行的程序名和参数。而至于P2,我认为使用CreateProcess函数就可以运行这个程序;
  5. 我要知道如何让P1向P2发送获取运行子进程的请求,并获取P2运行的子进程清单;
  6. P1如何显示子进程清单;
  7. 用户如何将子进程发送给P2;
  8. P2如何终止子进程,并将结果通知给P1。

于是,今天的设计就是这样。

你可能感兴趣的:(随笔)