From owner-freebsd-hackers@FreeBSD.ORG Sat Jun 20 19:23:58 2015 Return-Path: Delivered-To: freebsd-hackers@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9896FE16 for ; Sat, 20 Jun 2015 19:23:58 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5303D8E3 for ; Sat, 20 Jun 2015 19:23:58 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.84 (FreeBSD)) (envelope-from ) id 1Z6Nuz-0002Aa-RL; Sat, 20 Jun 2015 21:55:05 +0300 Date: Sat, 20 Jun 2015 21:55:05 +0300 From: Slawa Olhovchenkov To: Dieter BSD Cc: freebsd-hackers@freebsd.org Subject: Re: Realtime process CPU starvation Message-ID: <20150620185505.GA1647@zxy.spb.ru> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Jun 2015 19:23:58 -0000 On Fri, Jun 19, 2015 at 05:10:11PM -0700, Dieter BSD wrote: > Chris typed: > > I have a process running at realtime priority 0 > > under FreeBSD 10.0. The main thread needs to run every 10 ms, > > #include > FreeBSD is not a true real time OS. Please submit your patch > to make it one. For make it one first need develop and enforce some policy for drivers and programs. For exmample, RT-11 declare "A good guideline is to spend no more than 50 microseconds at priority 7". Also, need new disk i/o subsystem, for try async disk i/o (currently disk i/o is synchronys for many operations like open, close, rename, mkdir, delete) and allowing abort and cancel all i/o operations.