[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT/HELLOWORLD PATCH] Add option to stay alive
Adds an option that does not shutdown the guest. When the boot process is done, an ASCII animation of a swimming fish is shown. This option can be useful (and entertaining) for demo purposes. The example can also be handy to test initial ports to new platforms or libcs. Signed-off-by: Simon Kuenzer <simon.kuenzer@xxxxxxxxx> --- Config.uk | 7 +++++++ main.c | 34 ++++++++++++++++++++++++++++++++-- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/Config.uk b/Config.uk index 5e25d05..56cea87 100644 --- a/Config.uk +++ b/Config.uk @@ -10,3 +10,10 @@ config APPHELLOWORLD_PRINTARGS default y help Prints argument list (argv) to stdout + +config APPHELLOWORLD_SPINNER + bool "Stay alive" + select LIBUKTIME + default n + help + Shows an animation instead of shutting down diff --git a/main.c b/main.c index 6afa19e..c442058 100644 --- a/main.c +++ b/main.c @@ -1,18 +1,48 @@ #include <stdio.h> +#include <unistd.h> +#include <uk/essentials.h> /* Import user configuration: */ #include <uk/config.h> +#if CONFIG_APPHELLOWORLD_SPINNER +static const char *spinner[] = { + ">))'> ", + " >))'> ", + " >))'> ", + " >))'> ", + " >))'o ", + " >))'>° ", + " <'((< ° ", + " <'((< '", + " <'((< ", + " <'((< ", + " <'((< ", + "<'((< ", +}; +#endif + int main(int argc, char *argv[]) { +#if CONFIG_APPHELLOWORLD_PRINTARGS || CONFIG_APPHELLOWORLD_SPINNER + int i; +#endif printf("Hello world!\n"); #if CONFIG_APPHELLOWORLD_PRINTARGS - int i; - printf("Arguments: "); for (i=0; i<argc; ++i) printf(" \"%s\"", argv[i]); printf("\n"); #endif + +#if CONFIG_APPHELLOWORLD_SPINNER + i = 0; + printf("\n"); + while (1) { + i %= ARRAY_SIZE(spinner); + printf("\r%s", spinner[i++]); + sleep(1); + } +#endif } -- 2.20.1 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |