1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-10-31 11:12:45 +00:00
serenity/Kernel/Devices
Andreas Kling 9026598999 Kernel: Add a more expressive API for getting random bytes
We now have these API's in <Kernel/Random.h>:

    - get_fast_random_bytes(u8* buffer, size_t buffer_size)
    - get_good_random_bytes(u8* buffer, size_t buffer_size)
    - get_fast_random<T>()
    - get_good_random<T>()

Internally they both use x86 RDRAND if available, otherwise they fall
back to the same LCG we had in RandomDevice all along.

The main purpose of this patch is to give kernel code a way to better
express its needs for random data.

Randomness is something that will require a lot more work, but this is
hopefully a step in the right direction.
2020-01-03 12:43:07 +01:00
..
BlockDevice.cpp Kernel: Move devices into Kernel/Devices/. 2019-04-03 12:36:40 +02:00
BlockDevice.h Kernel: Move DiskDevice::block_size() up to BlockDevice 2019-08-21 16:48:59 +02:00
BXVGADevice.cpp Kernel: Create support for PCI ECAM 2020-01-02 00:50:09 +01:00
BXVGADevice.h Kernel: Fix failing in can_read()/can_write() 2019-11-13 16:37:04 +01:00
CharacterDevice.cpp Kernel: Move devices into Kernel/Devices/. 2019-04-03 12:36:40 +02:00
CharacterDevice.h Add clang-format file 2019-05-28 17:31:20 +02:00
DebugLogDevice.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
DebugLogDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
Device.cpp Kernel: Give PTY's *actually* unique major ID's 2019-12-09 21:03:39 +01:00
Device.h Kernel: Move device lookup to Device class itself 2019-08-18 15:59:59 +02:00
DiskDevice.cpp Kernel: Move DiskDevice::block_size() up to BlockDevice 2019-08-21 16:48:59 +02:00
DiskDevice.h Kernel: Move DiskDevice::block_size() up to BlockDevice 2019-08-21 16:48:59 +02:00
DiskPartition.cpp PartitionTable: Initial GPT Support, Adding Block Limit 2019-10-07 10:11:39 +02:00
DiskPartition.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
FloppyDiskDevice.cpp Kernel: Fixed fdc read/write problem 2019-10-23 07:46:16 +02:00
FloppyDiskDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
FullDevice.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
FullDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
GPTPartitionTable.cpp PartitionTable: Initial GPT Support, Adding Block Limit 2019-10-07 10:11:39 +02:00
GPTPartitionTable.h PartitionTable: Removing unnecessary declarations from GPT & MBR classes 2019-10-07 11:32:42 +02:00
KeyboardDevice.cpp Kernel: Implement AltGr key support 2019-12-31 19:31:42 +01:00
KeyboardDevice.h Kernel: Implement AltGr key support 2019-12-31 19:31:42 +01:00
MBRPartitionTable.cpp PartitionTable: Initial GPT Support, Adding Block Limit 2019-10-07 10:11:39 +02:00
MBRPartitionTable.h PartitionTable: Removing unnecessary declarations from GPT & MBR classes 2019-10-07 11:32:42 +02:00
MBVGADevice.cpp Kernel: Remove some unnecessary leaking of kernel pointers into dmesg 2019-12-31 01:22:00 +01:00
MBVGADevice.h Kernel: Fix failing in can_read()/can_write() 2019-11-13 16:37:04 +01:00
NullDevice.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
NullDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
PATAChannel.cpp Kernel: Simplify force_pio logic in PATA driver (#923) 2019-12-26 22:57:58 +01:00
PATAChannel.h Kernel: Create support for PCI ECAM 2020-01-02 00:50:09 +01:00
PATADiskDevice.cpp Kernel: Simplify force_pio logic in PATA driver (#923) 2019-12-26 22:57:58 +01:00
PATADiskDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
PCSpeaker.cpp Kernel: Move File.{cpp,h} into FileSystem/ 2019-07-09 15:04:45 +02:00
PCSpeaker.h Kernel: Add a beep() syscall that beeps the PC speaker. 2019-05-15 21:40:41 +02:00
PS2MouseDevice.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
PS2MouseDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
RandomDevice.cpp Kernel: Add a more expressive API for getting random bytes 2020-01-03 12:43:07 +01:00
RandomDevice.h Kernel: Add a more expressive API for getting random bytes 2020-01-03 12:43:07 +01:00
SB16.cpp Kernel: Use a WaitQueue in the SoundBlaster 16 driver 2019-12-01 12:57:35 +01:00
SB16.h Kernel: Use a WaitQueue in the SoundBlaster 16 driver 2019-12-01 12:57:35 +01:00
SerialDevice.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
SerialDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
ZeroDevice.cpp Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00
ZeroDevice.h Kernel: Make File's can_read/can_write take a const FileDescription& 2019-11-04 14:03:14 +01:00