2018-10-13 21:59:22 -03:00
|
|
|
#include "ZeroDevice.h"
|
2018-12-03 21:27:16 -02:00
|
|
|
#include <AK/StdLibExtras.h>
|
2018-10-16 09:33:16 -03:00
|
|
|
#include <AK/kstdio.h>
|
2018-10-13 21:59:22 -03:00
|
|
|
|
|
|
|
|
ZeroDevice::ZeroDevice()
|
2018-10-30 09:59:29 -03:00
|
|
|
: CharacterDevice(1, 5)
|
2018-10-13 21:59:22 -03:00
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ZeroDevice::~ZeroDevice()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
2019-01-15 21:10:13 -02:00
|
|
|
bool ZeroDevice::can_read(Process&) const
|
2018-10-25 08:07:59 -03:00
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
2019-02-25 17:19:57 -03:00
|
|
|
ssize_t ZeroDevice::read(Process&, byte* buffer, ssize_t size)
|
2018-10-13 21:59:22 -03:00
|
|
|
{
|
2019-04-03 08:18:42 -03:00
|
|
|
ssize_t count = min(PAGE_SIZE, size);
|
2019-02-25 17:19:57 -03:00
|
|
|
memset(buffer, 0, (size_t)count);
|
2018-10-13 21:59:22 -03:00
|
|
|
return count;
|
|
|
|
|
}
|
|
|
|
|
|
2019-02-25 17:19:57 -03:00
|
|
|
ssize_t ZeroDevice::write(Process&, const byte*, ssize_t size)
|
2018-10-13 21:59:22 -03:00
|
|
|
{
|
2019-04-03 08:18:42 -03:00
|
|
|
return min(PAGE_SIZE, size);
|
2018-10-13 21:59:22 -03:00
|
|
|
}
|
|
|
|
|
|