From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,b59b337045eece60 X-Google-Attributes: gid103376,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news1.google.com!postnews.google.com!25g2000hsx.googlegroups.com!not-for-mail From: Maciej Sobczak Newsgroups: comp.lang.ada Subject: Re: Structure of the multitasking server Date: Mon, 22 Sep 2008 06:05:36 -0700 (PDT) Organization: http://groups.google.com Message-ID: <34752018-8305-42f2-ac98-2c3a0e8e482d@25g2000hsx.googlegroups.com> References: <8b4d1170-22e6-40d3-8ed1-096dc0163491@m36g2000hse.googlegroups.com> <2cfc647a-c9cb-4e0c-9909-7923575fd1ec@d1g2000hsg.googlegroups.com> NNTP-Posting-Host: 128.141.45.227 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1222088736 27156 127.0.0.1 (22 Sep 2008 13:05:36 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 22 Sep 2008 13:05:36 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: 25g2000hsx.googlegroups.com; posting-host=128.141.45.227; posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.1) Gecko/2008070206 Firefox/3.0.1,gzip(gfe),gzip(gfe) Xref: g2news1.google.com comp.lang.ada:2064 Date: 2008-09-22T06:05:36-07:00 List-Id: On 22 Wrz, 04:32, a...@anon.org (anon) wrote: > =A0 Why use "GNAT.Sockets.Check_Selection"? > [...] basically it has to do with limited > system resources. Of course, but as I've said, the intended (fixed) number of pipelines is relatively small and the system resources do not seem to be any limitation. > Note: TCP/IP "Accept" can only monitor one connection port while the > TCP/IP "Select" allows monitoring up to 32 at one time in one routine. > which makes the TCP/IP "Select" a better utilization of system resources. I don't understand this assertion. You cannot *replace* accept with select, they serve completely different purposes, so you cannot state that one is better than another. > Why only 27 servers per TCP/IP "Select" routine =A0Well, the designers cr= eated > the TCP/IP "Select" to use 3 32-bit word to detect or flag This is an implementation detail that does not seem to be true any longer. As I've already explained, on my system the default limit for select(2) is 1024 descriptors and with a simple compiler option can be actually unlimited. The limit of 32 seems to be very impractical today. It is not uncommon to have hundreds of clients connected at the same time to a single server. They can be all handled without any partitioning. > Plus, some system may have 1024 file descriptors, but the OS normally > limit the number of assigned/open file descriptors to 32 or less. Again, this is not true on any of the systems that I have access to. -- Maciej Sobczak * www.msobczak.com * www.inspirel.com Database Access Library for Ada: www.inspirel.com/soci-ada