From nobody Mon Feb 12 00:59:15 2024 X-Original-To: freebsd-arm@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TY5hN59BKz595G8; Mon, 12 Feb 2024 00:59:32 +0000 (UTC) (envelope-from lars.sonchocky-helldorf@hamburg.de) Received: from longisland.snafu.de (longisland.snafu.de [IPv6:2001:1560:3:255::153]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4TY5hN2gvWz4mZ2; Mon, 12 Feb 2024 00:59:32 +0000 (UTC) (envelope-from lars.sonchocky-helldorf@hamburg.de) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=hamburg.de; s=snha; h=References:To:Cc:In-Reply-To:Date:Subject:Mime-Version:Content-Type :Message-Id:From:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=5bQOZNuB9fHu028eTzhSmR043dl0t8Fc41ehyRbxt1U=; b=ook21qLKUms2cywhRj8yUAbQO3 gWeJVX3XG7NAuIaI4i2fsAexACLo4q2Qoqk9lg9xh8+zrjqibMuY2/jnTgIpMRiO3TDg9rBlvtOd4 8D2lEzt5OVqGsfTbAHLO+lfTMOIb+QMt4x96UOvcn1OtEI6R+DYiFGjTBJXJX0SatMqEppyWQ7i/b i3xZjJbLdCCWYRq3Le5g5ghbLPvpA76AQ0DwgJHRhlnj4S3EwydC3lydq7QZ4sCAbXamh3yyerH0L McbtI4KmHIk8SsGQlzCS8a0cHqDNi5CoCOGdIhPpQdrq16NqHSlnmNqAtkcpuWRXXbxeqBTABhc56 6zuCQH1A==; X-Trace: 507c6c6172732e736f6e63686f636b792d68656c6c646f72664068616d62757267 2e64657c39332e3233302e3137352e34337c31725a4b664f2d3030303030303030 4d485a2d314a39397c31373037363939353636 Received: from longisland.snafu.de ([10.153.10.15] helo=localhost) by longisland.snafu.de with esmtpsa (Exim 4.97.1) id 1rZKfO-00000000MHZ-1J99; Mon, 12 Feb 2024 01:59:28 +0100 From: "lars.sonchocky-helldorf@hamburg.de" Message-Id: <011B3051-E189-41AF-AAE7-9867010017C1@hamburg.de> Content-Type: multipart/alternative; boundary="Apple-Mail=_AD026309-0ADD-46C2-B490-8CF26003A37D" List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.400.31\)) Subject: Re: How to use the L4 Microkernel with a FreeBSD userland. Date: Mon, 12 Feb 2024 01:59:15 +0100 In-Reply-To: Cc: Mark Millard , freebsd-arm , freebsd-hackers , FreeBSD Current To: Mario Marietto References: <071E080E-C0E6-40F0-A0DF-4FCC22FC004D@yahoo.com> X-Mailer: Apple Mail (2.3774.400.31) X-VISP-ShouldScan: 1 X-VISP-Virus-Check: clean X-VISP-Spam-Score: 0.1 (/) X-VISP-Spam-Report: This message has been scanned on "longisland.snafu.de" to identify if it is considered spam or not. Contact the support hotline for details. Content analysis details: (0.1 points) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP 0.2 KAM_DMARC_NONE DKIM has Failed or SPF has failed on the message and the domain has no DMARC policy 0.0 KAM_DMARC_STATUS Test Rule for DKIM or SPF Failure with Strict Alignment 0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60% [score: 0.5000] 0.1 TW_KL BODY: Odd Letter Triples with KL 0.0 HTML_MESSAGE BODY: HTML included in message -0.0 T_SCC_BODY_TEXT_LINE No description available. X-VISP-Spam-Max-Score: +++++ X-SA-Exim-Connect-IP: 93.230.175.43 X-SA-Exim-Mail-From: lars.sonchocky-helldorf@hamburg.de X-SA-Exim-Scanned: No (on longisland.snafu.de); SAEximRunCond expanded to false X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:34171, ipnet:2001:1560::/32, country:DE] X-Rspamd-Queue-Id: 4TY5hN2gvWz4mZ2 X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated --Apple-Mail=_AD026309-0ADD-46C2-B490-8CF26003A37D Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 hi Mario, I think the closest thing to what you=E2=80=99re aspiring to is the = =E2=80=9EDarbat=E2=80=9C-Kernel: a Darwin Kernel ported to L4: https://trustworthy.systems/publications/papers/Lee_Gray_06.abstract But then again the project is no longer active, Googling it brings a lot = of archived stuff. But still, it might work as an Inspiration (if you=E2=80=99re able to = dig up the sources, I didn=E2=80=99t look. Kind regards, Lars > Am 11.02.2024 um 22:20 schrieb Mario Marietto = : >=20 > I will do it as soon as I get all the necessary tools to turn on the = Raspberry Pi 4b. I was thinking that L4 worked like the old project = coLinux,where Linux ran as a list of processes under WIndows. In my sick = mind I'd thought that L4 allows FreeBSD to run as a list of processes = with the L4 microkernel itself on "top" of it. Do you know if something = like this exists ?=20 >=20 >=20 >=20 > On Sun, Feb 11, 2024 at 9:01=E2=80=AFPM Mark Millard = > wrote: >> [Only replying to what I've subscribed to --and I dropped >> Warner as well.] >>=20 >> On Feb 11, 2024, at 11:43, Mario Marietto > wrote: >>=20 >> > ok. But what does this mean ? That I can use whatever Linux distro = I want ? Or even the FreeBSD world ? >>=20 >> Only to build L4Re. >>=20 >> The LR4e built will not contain any Linux userland materials, >> nor any FreeBSD userland materials. LR4e has its own userland >> materials that will be present instead. >>=20 >> = http://os.inf.tu-dresden.de/download/snapshots/pre-built-images/arm64/ >>=20 >> already contains pre-built .elf and .uimage files Why not use one >> of those on the RPi4B? >>=20 >> By size (larger), the most complete ones for the RPi4B seem to be >> (both formats): >>=20 >> = http://os.inf.tu-dresden.de/download/snapshots/pre-built-images/arm64/boot= strap_vm-multi_rpi4.elf >> = http://os.inf.tu-dresden.de/download/snapshots/pre-built-images/arm64/boot= strap_vm-multi_rpi4.uimage >>=20 >> = http://os.inf.tu-dresden.de/download/snapshots/pre-built-images/arm64/boot= strap_vm-basic_rpi4.elf >> = http://os.inf.tu-dresden.de/download/snapshots/pre-built-images/arm64/boot= strap_vm-basic_rpi4.uimage >>=20 >>=20 >> > On Sun, Feb 11, 2024 at 7:59=E2=80=AFPM Mark Millard = > wrote: >> >=20 >> >=20 >> > On Feb 11, 2024, at 05:44, Mario Marietto > wrote: >> >=20 >> > > I'm trying to understand how to use the L4 Microkernel with a = FreeBSD userland. I've asked the same to a L4 developer,but he told me = that he does not know FreeBSD,so I'm here to ask the same question. = First of all I'm sure that it can be done,because it is written clearly = on their website : >> > >=20 >> > >=20 >> > > http://os.inf.tu-dresden.de/L4Re/download/snapshots/ >> > >=20 >> > >=20 >> > > on the section : >> > > Host system requirements >> > > The host system shall be a 64bit-based system with a recent Linux = distribution installed and at least 2GB of free disk space. >> > > All necessary tools required by the build are available from the = provided packages of the Linux distributions, including cross compilers. = But there are also other cross compiler packages available (see below). = You might want to run make check_build_tools in the src/l4 directory to = verify the common tools are installed. >> > > You are free to use any Linux distribution you like, or even BSDs = or any of its derivatives. But then you should know the game. Especially = tool versions should be recent, as installed on the listed distributions = below. >> > > We are confident that the snapshot works on the following = distributions: >> > > =E2=80=A2 Debian 11 or later >> > > =E2=80=A2 Ubuntu 22.04 or later >> > >=20 >> > > Let's say I want to use the L4 microkernel + FreeBSD 14 on my = Raspberry Pi 4,the first step I did was to build L4Re for the = Rpi,according with this instructions : >> > >=20 >> > >=20 >> > > http://os.inf.tu-dresden.de/L4Re/rpi.html=20 >> > >=20 >> > > This is the log file of the compilation,that hasn't given any = error : >> > >=20 >> > >=20 >> > > https://pastebin.ubuntu.com/p/6SwN2mpJBM/ >> > >=20 >> > >=20 >> > > Or I could have taken a pre built image of the L4 microkernel = here :=20 >> > >=20 >> > >=20 >> > > = http://os.inf.tu-dresden.de/download/snapshots/pre-built-images/arm64/ >> > >=20 >> > >=20 >> > >=20 >> > > At this point the tutorial says that I should use a Linux distro. = They suggest the official distro for the Raspberry Pi 4,that's RaspBian. = But I don't want to use Linux as a userland,I want to use FreeBSD. The = question now is : what should I do to achieve that goal ? How can I link = the L4 microkernel with the ubldr bootloader of FreeBSD ? Or should I = link it to the kernel of FreeBSD ? Can someone explain to me the missing = step ? thanks. >> >=20 >> > QUOTING the "Configuring yourself" section: >> > The make setup step configures predefined setups for both the L4Re = microkernel (Fiasco) and the L4Re user-level software, and connects both = together so the images for the target system can be built. >> > END QUOTE >> >=20 >> > So L4Re has its own user-level software, not just a kernel. There = is no use of a Linux or FreeBSD user-level software >> > when L4Re is booted. (They are just used for building.) >> >=20 >> > "The host system" is just a host for building the L4Re parts and = assembling the image from the parts. The "Pulling it together" section = is about combining the parts (including the microkernel and the = user-level software) to make the overall image that does not include = Linux or FreeBSD code. >>=20 >>=20 >> =3D=3D=3D >> Mark Millard >> marklmi at yahoo.com >>=20 >=20 >=20 > -- > Mario. --Apple-Mail=_AD026309-0ADD-46C2-B490-8CF26003A37D Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8
hi = Mario,

I think the closest thing to what you=E2=80=99r= e aspiring to is the =E2=80=9EDarbat=E2=80=9C-Kernel: a Darwin Kernel = ported to L4:






Lars

Am 11.02.2024 um 22:20 schrieb Mario Marietto = <marietto2008@gmail.com>:

I will do = it as soon as I get all the necessary tools to turn on the Raspberry Pi = 4b. I was thinking that L4 worked like the old project coLinux,where = Linux ran as a list of processes under WIndows. In my sick mind I'd = thought that L4 allows FreeBSD to run as a list of processes with the L4 = microkernel itself on "top" of it. Do you know if something like this = exists ? 



[Only replying to what I've = subscribed to --and I dropped
Warner as well.]

On Feb 11, 2024, at 11:43, Mario Marietto <marietto2008@gmail.com> wrote:

> ok. But what does this mean ? That I can use whatever Linux distro = I want ? Or even the FreeBSD world ?

Only to build L4Re.

The LR4e built will not contain any Linux userland materials,
nor any FreeBSD userland materials. LR4e has its own userland
materials that will be present instead.

http://os.inf.tu-dresden.de/download/snapshots/pre-built= -images/arm64/

already contains pre-built .elf and .uimage files Why not use one
of those on the RPi4B?

By size (larger), the most complete ones for the RPi4B seem to be
(both formats):

http://os.inf.tu-dresden.de/download/snapshots/pre-built= -images/arm64/bootstrap_vm-multi_rpi4.elf
http://os.inf.tu-dresden.de/download/snapshots/pre-built= -images/arm64/bootstrap_vm-multi_rpi4.uimage

http://os.inf.tu-dresden.de/download/snapshots/pre-built= -images/arm64/bootstrap_vm-basic_rpi4.elf
http://os.inf.tu-dresden.de/download/snapshots/pre-built= -images/arm64/bootstrap_vm-basic_rpi4.uimage


> On Sun, Feb 11, 2024 at 7:59=E2=80=AFPM Mark Millard <marklmi@yahoo.com> wrote:
>
>
> On Feb 11, 2024, at 05:44, Mario Marietto <marietto2008@gmail.com> wrote:
>
> > I'm trying to understand how to use the L4 Microkernel with a = FreeBSD userland. I've asked the same to a L4 developer,but he told me = that he does not know FreeBSD,so I'm here to ask the same question. = First of all I'm sure that it can be done,because it is written clearly = on their website :
> >
> >
> > http://os.inf.tu-dresden.de/L4Re/download/snapshots/=
> >
> >
> > on the section :
> > Host system requirements
> > The host system shall be a 64bit-based system with a recent = Linux distribution installed and at least 2GB of free disk space.
> > All necessary tools required by the build are available from = the provided packages of the Linux distributions, including cross = compilers. But there are also other cross compiler packages available = (see below). You might want to run make check_build_tools in the src/l4 = directory to verify the common tools are installed.
> > You are free to use any Linux distribution you like, or even = BSDs or any of its derivatives. But then you should know the game. = Especially tool versions should be recent, as installed on the listed = distributions below.
> > We are confident that the snapshot works on the following = distributions:
> >     =E2=80=A2 Debian 11 or later
> >     =E2=80=A2 Ubuntu 22.04 or later
> >
> > Let's say I want to use the L4 microkernel + FreeBSD 14 on my = Raspberry Pi 4,the first step I did was to build L4Re for the = Rpi,according with this instructions :
> >
> >
> > http://os.inf.tu-dresden.de/L4Re/rpi.html
> >
> > This is the log file of the compilation,that hasn't given = any  error :
> >
> >
> > https://pastebin.ubuntu.com/p/6SwN2mpJBM/
> >
> >
> > Or I could have taken a pre built image of the L4 microkernel = here :
> >
> >
> > http://os.inf.tu-dresden.de/download/snapshots/pre-built= -images/arm64/
> >
> >
> >
> > At this point the tutorial says that I should use a Linux = distro. They suggest the official distro for the Raspberry Pi 4,that's = RaspBian. But I don't want to use Linux as a userland,I want to use = FreeBSD. The question now is : what should I do to achieve that goal ? = How can I link the L4 microkernel with the ubldr bootloader of FreeBSD ? = Or should I link it to the kernel of FreeBSD ? Can someone explain to me = the missing step ? thanks.
>
> QUOTING the "Configuring yourself" section:
> The make setup step configures predefined setups for both the L4Re = microkernel (Fiasco) and the L4Re user-level software, and connects both = together so the images for the target system can be built.
> END QUOTE
>
> So L4Re has its own user-level software, not just a kernel. There = is no use of a Linux or FreeBSD user-level software
> when L4Re is booted. (They are just used for building.)
>
> "The host system" is just a host for building the L4Re parts and = assembling the image from the parts. The "Pulling it together" section = is about combining the parts (including the microkernel and the = user-level software) to make the overall image that does not include = Linux or FreeBSD code.


=3D=3D=3D
Mark Millard
marklmi at yahoo.com



--
Mario.

= --Apple-Mail=_AD026309-0ADD-46C2-B490-8CF26003A37D--