All of lore.kernel.org
 help / color / mirror / Atom feed
* Porting fio to RTEMS
@ 2018-05-23 15:34 Udit agarwal
  2018-05-24  3:23 ` Sitsofe Wheeler
  0 siblings, 1 reply; 2+ messages in thread
From: Udit agarwal @ 2018-05-23 15:34 UTC (permalink / raw)
  To: fio

Hi community,
I am a Google SoC participant working on RTEMS. One of my project goal
is to import a multi functional IO benchmark to RTEMS and fio is
definitely my first choice. RTEMS has structure pretty much like
FreeBSD,  so porting won't be very difficult. This mail is just
intended to give a small introduction of my goal, and to provide a
context for my future queries.
I have started working towards this, and would love to see an official
release of FIO for RTEMS too.
Thanks!

Regards,
Udit kumar agarwal

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Porting fio to RTEMS
  2018-05-23 15:34 Porting fio to RTEMS Udit agarwal
@ 2018-05-24  3:23 ` Sitsofe Wheeler
  0 siblings, 0 replies; 2+ messages in thread
From: Sitsofe Wheeler @ 2018-05-24  3:23 UTC (permalink / raw)
  To: Udit agarwal; +Cc: fio

Hi there Udit!

(resending this reply to the list)

On 23 May 2018 at 16:34, Udit agarwal <dev.madaari@gmail.com> wrote:
> Hi community,
> I am a Google SoC participant working on RTEMS. One of my project goal
> is to import a multi functional IO benchmark to RTEMS and fio is
> definitely my first choice. RTEMS has structure pretty much like
> FreeBSD,  so porting won't be very difficult. This mail is just
> intended to give a small introduction of my goal, and to provide a
> context for my future queries.
> I have started working towards this, and would love to see an official
> release of FIO for RTEMS too.
> Thanks!

Sounds like it should be fun! In general fio should be portable to an
operating system that has the following nature:

o Has GCC or a compiler that understands GCC's dialect of C (e.g. clang)
o Can present various "posixy" style interfaces
o Has *nix userland utilities available in the build environment. For
example, the Makefile only works with GNUmake.

Fio really needs some form of POSIX threads (aka
pthreads) because it is heavily
dependent on them. I'd argue the Windows port is the one to a system
that contains the least POSIX within it and thus fio has to supply
various platform specific
shims to workaround this but even there a POSIX style threading
library is utilised outside the windowsaio I/O
engine. Further, the build happens using *nix utilities (but a *nix
environment is not required at runtime).

As another reference, I did an fio port to MINIX over on
https://github.com/sitsofe/fio/tree/minix . What made things trickier
there (at least at the time of writing) was the issue that MINIX lacks
kernel threads and thus does not ship a pthread library by default.
Fortunately MINIX has a port of GNU Pth which
provides co-operative threading (and it can also present a pthread
interface) so I was able to use that. My MINIX fio port isn't
perfect and has a few ugly workarounds but it was surprisingly
functional.

Anyway good luck and let us know how you get on!

-- 
Sitsofe | http://sucs.org/~sits/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-05-24  3:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-23 15:34 Porting fio to RTEMS Udit agarwal
2018-05-24  3:23 ` Sitsofe Wheeler

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.