Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!bruce.cs.monash.edu.au!harbinger.cc.monash.edu.au!msuinfo!agate!deep.rsoft.bc.ca!giant!a09878 From: a09878@giant.rsoft.bc.ca (Curt Sampson) Newsgroups: comp.os.386bsd.development Subject: Re: Notes on the *new* FreeBSD V1.1 VM system Date: 2 Mar 94 19:18:14 GMT Organization: MIND LINK! Communications Corp. Lines: 25 Message-ID: <a09878.762635894@giant> References: <CLutBp.4K9@flatlin.ka.sub.org> <2kudpoINNbhd@CS.UTK.EDU> <1994Mar1.132637.58107@ans.net> <a09878.762550221@giant> <2l0b06$2qi@GRAPEVINE.LCS.MIT.EDU> NNTP-Posting-Host: giant.rsoft.bc.ca wollman@ginger.lcs.mit.edu (Garrett Wollman) writes: >Say my default stack limit is 256MB. Does that mean that I have to >have 256MB of backing store available to start any new process? If >so, will you pay for all my disks from now on? If not, why not, and >what happens when a stack grow causes you to run out of memory? Well, again, I know little about the intricate details of VM systems, but I would think that this wouldn't be much of a problem. Wouldn't a scheme like this work? Allocate a few pages for the stack and mark the last page so that when it's written to you get a fault. When that page faults, attempt to expand the stack. If there's not enough swap to back up the memory you're trying to allocate you've run out of memory, and you can't expand it, so you allocate no more stack and either inform or terminate the process when it tries to expand the stack beyond the last page. cjs -- Curt Sampson a09878@giant.rsoft.bc.ca Fluor Daniel 604 691 5458 1444 Alberni Street De te fabula est. Vanouver, B.C., V6G 2Z4