From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from feline.systems ([99.23.220.214]) by ewsd; Sun Aug 12 18:28:34 EDT 2018 Date: Sun, 12 Aug 2018 22:28:28 +0000 From: BurnZeZ@feline.systems To: 9front@9front.org Subject: Re: [9front] time Message-ID: <6c11e603325ca644a5068fd3d0f30df1@rebk.znet> In-Reply-To: <543D9EFF84178350A65D710955EDB98B@felloff.net> References: <543D9EFF84178350A65D710955EDB98B@felloff.net> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: abstract blockchain base YAML configuration cloud On Sun Aug 12 21:08:00 GMT 2018, cinap_lenrek@felloff.net wrote: > of course it does. theres nothing special about exec. the accounting > starts when the *process* is created, not after exec(). also, it is > hard to know what you consider time spend execing. the exec itself > just reads the programs a.out header and creates the segments. > the pages get faulted in during the runtime of the program *after* > exec did its job. I’ve been tricked. > internally, user/kernel time accounting works by hzclock() > just incrementing a per process counter of ticks. which is > not very precise and processes can evade time being accounted > by yielding so they'd miss the timer interrupt. Are there any other reasons for the real time count to become erratic or inconsistent? How does this work on a multi-core machine? > so there is an opportunity here that when going to 64 bit, > we could improve the time accounting and change the unit > to nanoseconds as well... Might be better than staying with milli, since nsec() sort of promotes nano anyway.