<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: equivalent of fork() in OpenVMS in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377764#M16313</link>
    <description>There is no equivalent, or there is a direct equivalent. &lt;BR /&gt;&lt;BR /&gt;Which of these two statements is true in your case depends entirely on what your code thinks fork() does.  &lt;BR /&gt;&lt;BR /&gt;Classic fork() isn't available, and classic fork does a whole lot more than most folks realize it does.   This is less common.&lt;BR /&gt;&lt;BR /&gt;The fork()/exec() model is available; see vfork() et al.  This is the more common model, and use of fork() here can be replaced with vfork().&lt;BR /&gt;&lt;BR /&gt;You'll want to read the C manuals as a start, as they're pretty good at describing this.  And there are a couple of FAQs around for those that are familiar with C but are new to programming C on OpenVMS.&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://64.223.189.234/node/273" target="_blank"&gt;http://64.223.189.234/node/273&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;I will add a discussion of fork and vfork into that article, as I see I've omitted that.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Thu, 12 Mar 2009 14:17:45 GMT</pubDate>
    <dc:creator>Hoff</dc:creator>
    <dc:date>2009-03-12T14:17:45Z</dc:date>
    <item>
      <title>equivalent of fork() in OpenVMS</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377763#M16312</link>
      <description>I am writing a C code in OpenVMS.&lt;BR /&gt;I would like to know what how to create a child process in OpenVM.I suppose OpenVMS does not support fork().&lt;BR /&gt;&lt;BR /&gt;Looking forward for your help....</description>
      <pubDate>Thu, 12 Mar 2009 14:06:23 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377763#M16312</guid>
      <dc:creator>naina</dc:creator>
      <dc:date>2009-03-12T14:06:23Z</dc:date>
    </item>
    <item>
      <title>Re: equivalent of fork() in OpenVMS</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377764#M16313</link>
      <description>There is no equivalent, or there is a direct equivalent. &lt;BR /&gt;&lt;BR /&gt;Which of these two statements is true in your case depends entirely on what your code thinks fork() does.  &lt;BR /&gt;&lt;BR /&gt;Classic fork() isn't available, and classic fork does a whole lot more than most folks realize it does.   This is less common.&lt;BR /&gt;&lt;BR /&gt;The fork()/exec() model is available; see vfork() et al.  This is the more common model, and use of fork() here can be replaced with vfork().&lt;BR /&gt;&lt;BR /&gt;You'll want to read the C manuals as a start, as they're pretty good at describing this.  And there are a couple of FAQs around for those that are familiar with C but are new to programming C on OpenVMS.&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://64.223.189.234/node/273" target="_blank"&gt;http://64.223.189.234/node/273&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;I will add a discussion of fork and vfork into that article, as I see I've omitted that.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 12 Mar 2009 14:17:45 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377764#M16313</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2009-03-12T14:17:45Z</dc:date>
    </item>
    <item>
      <title>Re: equivalent of fork() in OpenVMS</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377765#M16314</link>
      <description>What Hoff says...&lt;BR /&gt;&lt;BR /&gt;Is this new code? Is there a portability requirement?&lt;BR /&gt;&lt;BR /&gt;Why/What are you trying to fork?&lt;BR /&gt;Trying to get more threads?&lt;BR /&gt;or &lt;BR /&gt;Just trying to execute a (system) command?&lt;BR /&gt;&lt;BR /&gt;OpenVMS offers alternative (and some times better) solutions for both, but it would have been nice to have a real fork with memory and file handle cloning and all.&lt;BR /&gt;&lt;BR /&gt;Anyway... check out LIB$SPAWN when the call frequency is not crazy crazy (no more than once/second?)&lt;BR /&gt;&lt;BR /&gt;And.. look around whether the task to be spawned is not available as a calleable service in the current image/process context.&lt;BR /&gt;OpenVMS has callable functions to find files, conver file, manipulates queue, get device information and on and on.&lt;BR /&gt;&lt;BR /&gt;Welcome to OpenVMS and&lt;BR /&gt;Good Luck!&lt;BR /&gt;Hein.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 12 Mar 2009 14:35:50 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377765#M16314</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2009-03-12T14:35:50Z</dc:date>
    </item>
    <item>
      <title>Re: equivalent of fork() in OpenVMS</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377766#M16315</link>
      <description>If this is new code and not a port, then the other fairly widespread call used for creating a "child process" (usually a "subprocess" in OpenVMS terminology) is system(), BTW.  &lt;BR /&gt;&lt;BR /&gt;The system() call is the portable and mostly-analog version of lib$spawn or sys$creprc calls.  &lt;BR /&gt;&lt;BR /&gt;And while system() itself is portable C, the spawned command often isn't.&lt;BR /&gt;&lt;BR /&gt;The fork() call is a subtle and extremely powerful call, and one best avoided.  Unless you need its full magics, of course, and assuming you're on a box that has the full-power fork().&lt;BR /&gt;</description>
      <pubDate>Thu, 12 Mar 2009 14:53:59 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377766#M16315</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2009-03-12T14:53:59Z</dc:date>
    </item>
    <item>
      <title>Re: equivalent of fork() in OpenVMS</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377767#M16316</link>
      <description>There is a nice example in the "ask the wizard archive":&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://h71000.www7.hp.com/wizard/wiz_1274.html?jumpid=reg_R1002_USEN" target="_blank"&gt;http://h71000.www7.hp.com/wizard/wiz_1274.html?jumpid=reg_R1002_USEN&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Eberhard</description>
      <pubDate>Thu, 12 Mar 2009 15:01:04 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/equivalent-of-fork-in-openvms/m-p/4377767#M16316</guid>
      <dc:creator>Heuser-Hofmann</dc:creator>
      <dc:date>2009-03-12T15:01:04Z</dc:date>
    </item>
  </channel>
</rss>

