<div dir="ltr"><br><br><div class="gmail_quote">On Thu, Sep 4, 2008 at 9:00 PM, Hal Duston <span dir="ltr">&lt;<a href="mailto:hald@kc.rr.com">hald@kc.rr.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div></div><div class="Wj3C7c">&gt; That isn&#39;t possible unless you want to do an exec call every time the user<br>
&gt; goes to a new page. &nbsp;That&#39;s why Chrome does its own task manager that knows<br>
&gt; what each thread is doing.<br>
<br>
</div></div>Postgresql and sendmail manage it.<br>
<br>
root &nbsp; &nbsp; &nbsp;5082 &nbsp; &nbsp; 1 &nbsp;0 Jul27 ? &nbsp; &nbsp; &nbsp; &nbsp;00:52:53 sendmail: accepting connections<br>
smmsp &nbsp; &nbsp; 5091 &nbsp; &nbsp; 1 &nbsp;0 Jul27 ? &nbsp; &nbsp; &nbsp; &nbsp;00:00:12 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue<br>
postgres 16733 16667 &nbsp;0 Aug04 ? &nbsp; &nbsp; &nbsp; &nbsp;00:01:32 postgres: logger process<br>
postgres 16737 16667 &nbsp;0 Aug04 ? &nbsp; &nbsp; &nbsp; &nbsp;00:06:53 postgres: writer process<br>
postgres 16738 16667 &nbsp;0 Aug04 ? &nbsp; &nbsp; &nbsp; &nbsp;00:05:28 postgres: wal writer process<br>
postgres 16739 16667 &nbsp;0 Aug04 ? &nbsp; &nbsp; &nbsp; &nbsp;00:03:30 postgres: autovacuum launcher process<br>
postgres 16740 16667 &nbsp;0 Aug04 ? &nbsp; &nbsp; &nbsp; &nbsp;00:05:07 postgres: stats collector process<br>
<br>
They both manage that by recreating the environment of the already running process.<br>
</blockquote></div><br>Yes, they exec to spawn these separate processes.&nbsp; But those processes can&#39;t change the arguments under which they were invoked without themselves exec-ing all over again.&nbsp; So when you click on a &quot;Heh.&quot;, you&#39;d have to change one process from<br>
monster 3952 26665 0 10:08 ? /usr/lib/firefox-4.0/firefox-bin -UILocale en-US <a href="http://instapundit.com">instapundit.com</a><br>to<br>monster 3952 26665 0 10:08 ? /usr/lib/firefox-4.0/firefox-bin -UILocale en-US&nbsp; <a href="http://johndoe.blogspot.com/2008/09/snarky-article-title-here.html">johndoe.blogspot.com/2008/09/snarky-article-title-here.html</a><br>
<br>The only way I know to do that is to exec firefox-bin, invoking the new URL as an argument.&nbsp;&nbsp; What I don&#39;t know is how much overhead that takes.&nbsp; I suppose a stripped-down binary, that inherits a pre-built environment populated by another binary reading configs, etc., might not be doable.<br>
<br>But that&#39;s not the way that any existing browser I know of is written.&nbsp; You&#39;re talking about a complete re-factoring of how browsers work.&nbsp; That&#39;s not to say that it&#39;s a bad idea, just that it&#39;s a non-trivial effort, which might make things much slower<br>
</div>