Path: ...!Xl.tags.giganews.com!local-3.nntp.ord.giganews.com!nntp.earthlink.com!news.earthlink.com.POSTED!not-for-mail NNTP-Posting-Date: Wed, 18 Dec 2024 04:25:26 +0000 Subject: Re: Are We Back to the "Wars" Now ? Newsgroups: comp.os.linux.misc References: <68b83l-jtd.ln1@ID-313840.user.individual.net> From: "186282@ud0s4.net" <186283@ud0s4.net> Organization: wokiesux Date: Tue, 17 Dec 2024 23:25:25 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Message-ID: Lines: 36 X-Usenet-Provider: http://www.giganews.com NNTP-Posting-Host: 99.101.150.97 X-Trace: sv3-C3lj1qktbJ5Y8ej6bTvr8YU8Bj2NjdCKrpWmAmRGZIPo++FVOa7JZV7frQJXYnLkOv7p+BL6AjzUvfH!VrljyH0R+paZFJF4rPp4WbIq1AG+tXw6A6hQsjazxnKNJlHRCXaG2YdThqHW0bnXNVHjyrOi4I9P!ODqq+0hPLs8Ov0BbDDCR X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.40 Bytes: 2918 On 12/17/24 8:23 PM, Lawrence D'Oliveiro wrote: > On Tue, 17 Dec 2024 13:34:30 +0000, Geoff Clare wrote: > >> With a pipe or FIFO, you just use simple read and write operations and >> the system handles all the messy stuff for you. If the pipe reaches >> capacity, write blocks until there is room to write some more; if the >> pipe becomes empty, read blocks until there is more data available; when >> read returns EOF that's the end of the data. > > Yup. Furthermore: > > * When the last writer closes its end, any remaining read attempts get > EOF. > * When the last reader closes its end, any remaining write attempts get > “broken pipe”. But you're still limited to the amount of RAM the system can access. These days that's probably a LOT - but might NOT be, esp for 'embedded' type boards like the older PIs, BBBs and such. Never assume the user has essentially infinite RAM. For such platforms you may need to sacrifice speed and some convenience and instead put such data on a mass-storage device. Not THAT hard to do - but remember to use locks. Know your target audience - yet TRY to accommodate all. I'll still rec making interprocess comms relatively terse and handle 'big data' in some other manner (as extensively covered in this thread). An 8k raw frame grab is about 146mb - and let's not even speak of 8k video segments.