1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 02:27:35 +00:00
serenity/Userland/Libraries
Tom 7e77a2ec40 Everywhere: Improve CPU usage calculation
As threads come and go, we can't simply account for how many time
slices the threads at any given point may have been using. We need to
also account for threads that have since disappeared. This means we
also need to track how many time slices we have expired globally.

However, because this doesn't account for context switches outside of
the system timer tick values may still be under-reported. To solve this
we will need to track more accurate time information on each context
switch.

This also fixes top's cpu usage calculation which was still based on
the number of context switches.

Fixes #6473
2021-07-18 22:08:26 +02:00
..
LibArchive LibArchive: Move method implementations away from header 2021-05-17 18:14:05 +01:00
LibAudio LibAudio: Use new Vector formatter 2021-07-13 17:40:07 +02:00
LibC LibC strtod: Reduce incremental error to nearly nothing 2021-07-18 12:45:10 +01:00
LibCards LibCards: Support non-alternating colour patience games 2021-06-24 10:32:53 +02:00
LibChess LibChess: Compact the Defenitions of various chess related types 2021-06-22 23:09:42 +02:00
LibCompress LibCompress: Discard GZip NAME & COMMENT optional strings 2021-05-18 08:09:21 +02:00
LibCore Everywhere: Improve CPU usage calculation 2021-07-18 22:08:26 +02:00
LibCoreDump LibDebug: Implement symbolication for x86_64 2021-07-13 23:19:33 +02:00
LibCpp LibCpp: Don't store entire ASTNode vector in each parser state 2021-07-13 23:20:09 +02:00
LibCrypt Everywhere: Add a blank line after copyright header where missing 2021-05-15 00:27:09 +01:00
LibCrypto LibCrypto: Add the >= operator to UnsignedBigInteger 2021-07-12 19:05:17 +01:00
LibDebug LibRegex+Everywhere: Make LibRegex more unicode-aware 2021-07-18 21:10:55 +04:30
LibDesktop LibDesktop: Add spawn() to AppFiles 2021-06-28 16:29:02 +02:00
LibDiff AK+Everywhere: Consolidate String::index_of() and String::find() 2021-05-24 11:59:18 +02:00
LibDl Toolchain+Userland: Enable TLS for x86_64 2021-07-04 01:07:28 +02:00
LibELF LibELF/DynamicLinker: Evaluate symbols in library insertion order (#8802) 2021-07-16 11:55:01 +02:00
LibFileSystemAccessClient LibFileSystemAccessClient: Use WindowServer window stealing interface 2021-07-18 17:21:28 +02:00
LibGemini AK: Implement String::find_any_of() and StringView::find_any_of() 2021-07-02 21:54:21 +02:00
LibGfx LibGUI: Dither pattern should be independent from clipping rectangle 2021-07-15 19:46:42 +02:00
LibGL LibGL: Implement very basic version of glGetFloatv 2021-06-09 10:49:38 +02:00
LibGUI Everywhere: Improve CPU usage calculation 2021-07-18 22:08:26 +02:00
LibHTTP LibHTTP: Finish the request up on TLS connection finish 2021-06-30 01:23:25 +04:30
LibImageDecoderClient Userland: Remove dummy IPC methods 2021-06-24 00:38:58 +02:00
LibIMAP LibCore+LibIMAP: Move Promise to LibCore 2021-07-15 11:11:14 +02:00
LibIPC LibIPC: Close the socket and die when the peer is closed 2021-07-18 17:21:28 +02:00
LibJS LibJS: Use a Utf8View on the subject if the regex has the unicode flag 2021-07-18 21:10:55 +04:30
LibKeyboard LibKeyboard: Remove an unnecessary #include when building with KERNEL 2021-06-30 11:30:28 +02:00
LibLine AK: Implement String::find_any_of() and StringView::find_any_of() 2021-07-02 21:54:21 +02:00
LibM LibM: Turn off builtins, fix tests & implementation 2021-07-17 17:37:20 +02:00
LibMarkdown LibMarkdown: Wrap non-inline code blocks in <pre> 2021-06-09 18:06:54 +01:00
LibPCIDB Everywhere: "file name" => "filename" 2021-04-29 22:16:18 +02:00
LibPDF LibPDF: Fix treating not finding the linearized dict as a fatal error 2021-07-16 20:44:10 +02:00
LibProtocol LibProtocol: Use URL class in RequestClient::start_request argument 2021-06-06 16:00:11 +02:00
LibPthread LibPthread+Kernel: Add pthread_kill() and the thread_kill syscall 2021-07-09 15:36:50 +02:00
LibRegex LibRegex+Everywhere: Make LibRegex more unicode-aware 2021-07-18 21:10:55 +04:30
LibSanitizer LibSantizer: Read $UBSAN_OPTIONS to set deadliness on first print 2021-06-29 07:17:34 +04:30
LibSQL LibSQL+SQLServer: Build SQLServer system service 2021-07-08 17:55:59 +04:30
LibSymbolication Kernel: Split debug symbols into a separate file 2021-07-18 17:31:13 +02:00
LibSyntax LibWeb+LibSyntax: Implement nested syntax highlighters 2021-06-07 14:45:49 +04:30
LibSystem Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LibTest LibTest: Clear core dump flag for CrashTest child processes 2021-07-06 17:22:45 +02:00
LibTextCodec LibTextCodec: Add Turkish (aka ISO-8859-9, Windows-1254) encoding 2021-06-23 16:32:47 +01:00
LibThreading Revert "LibThreading: Fix BackgroundAction result use-after-free" 2021-07-12 11:29:37 +02:00
LibTLS LibCrypto: Replace from_base{2,8,10,16}() & to_base10 with from_base(N) 2021-06-29 16:55:54 +01:00
LibTTF LibTTF: Port width calculation changes from BitmapFont 2021-07-11 14:12:59 +02:00
LibUSBDB LibUSBDB: Fix vendor id decoding 2021-06-18 19:41:25 +04:30
LibVideo LibVideo/VP9: Implement MV reading & rectify MV storage issues 2021-07-10 21:28:56 +02:00
LibVT Terminal: Put debug spam in unimplemented_control_code() behind a flag 2021-07-10 16:13:34 +02:00
LibWasm LibWasm: Remove a useless use of ScopeGuard 2021-07-17 01:13:39 +04:30
LibWeb LibWeb: Rename HTMLToken::doctype_data() => ensure_doctype_data() 2021-07-17 16:24:57 +04:30
LibWebSocket AK+Everywhere: Disallow constructing Functions from incompatible types 2021-06-06 00:27:30 +04:30
LibX86 Debugger: Compile on x86_64 2021-06-30 19:05:51 +02:00
CMakeLists.txt FileSystemAccessServer+TextEditor: Implement cross-process modal prompts 2021-07-18 17:21:28 +02:00