home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.programming      Programming issues that transcend langua      57,431 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 55,482 of 57,431   
   Meredith Montgomery to All   
   a kind of a web-shell-api for managing l   
   30 Dec 21 17:16:08   
   
   XPost: comp.unix.programmer   
   From: mmontgomery@levado.to   
      
   I'm helping someone to improve a CMS-type of web system.  This web   
   system sometimes needs to run some background processes --- such as send   
   a batch of e-mail or other process that takes a while to finish.   
      
   I see the challenge here as just writing something that will look like a   
   very basic UNIX shell --- so I'll call it ``web-api-shell'' from now on.   
   (``Web'' because it will be used by a web system through some API.)   
      
   This thing must run really well.  It has to be flawless.  I'm looking   
   for design principles and advice.   
      
   (*) Where will it run   
      
   It will run on GNU systems running the Linux kernel.   
      
   (*) My own thoughts   
      
   The interface to shell will be through HTTP requests, so this shell will   
   likely be a web server of some sort.  But before I get involved in the   
   web at all, I need the shell working flawlessly.   
      
   So I need a laboratory first.  I could write a program that reads some   
   named pipe on disk to get commands such as ``run this or that'' while I   
   work.  (Later I can write a web server replacing this named-pipe   
   interface.)   
      
   Just like a UNIX shell, this web-api-shell must know all every process   
   it runs.  I suppose the work is essentially fork(), execve() followed by   
   waitpid().   
      
   One concern I have is the following.  Is it possible for a process to   
   simply ``get out of'' the shell?  What do I mean by that?  A process   
   that does fork() and puts itself into background would leave the   
   web-api-shell's control, wouldn't it?   
      
   I think I must avoid that.  Perhaps I can't let just any process run.   
   Perhaps the web-api-shell must only offer a few processes carefully   
   written by myself --- so that I know they won't put themselves in   
   background.  (For instance, I can't let them change PIDs, otherwise I   
   won't have any idea who they are and that's a mess.  I'd love to somehow   
   restrict system calls such as fork().)   
      
   (*) What is my level of training?   
      
   In the past I've studied many parts of   
      
     Advanced Programming in the UNIX Environment   
     W. Richard Stevens   
      
   I will definitely have to read it again to get work on this project.   
   Can you mention any UNIX concepts that are of great relevance for this   
   project?  I don't think I ever got my mind wrapped around things like   
   sessions, session leaders and so on.  Are these concepts relevant to   
   this application?   
      
   Thank you very much.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca