From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id 6FV1BqPCw2KNbgAAbAwnHQ (envelope-from ) for ; Tue, 05 Jul 2022 06:48:35 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id qOiHBaPCw2IHJgEAG6o9tA (envelope-from ) for ; Tue, 05 Jul 2022 06:48:35 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 673053F643 for ; Tue, 5 Jul 2022 06:48:34 +0200 (CEST) Received: from localhost ([::1]:59702 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o8aUD-0005rk-2i for larch@yhetil.org; Tue, 05 Jul 2022 00:48:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58940) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o8aU0-0005rb-D8 for guix-devel@gnu.org; Tue, 05 Jul 2022 00:48:20 -0400 Received: from knopi.disroot.org ([178.21.23.139]:52546) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o8aTx-0006K5-Rn; Tue, 05 Jul 2022 00:48:19 -0400 Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id A79BD40ECC; Tue, 5 Jul 2022 06:48:13 +0200 (CEST) X-Virus-Scanned: SPAM Filter at disroot.org Received: from knopi.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6NnWxOLwc_OC; Tue, 5 Jul 2022 06:48:12 +0200 (CEST) From: Akib Azmain Turja DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1656996492; bh=tqfeKXnArXbF3Q1ARkPIYVl89VtKQcGSc9iC0M2oysI=; h=From:To:Subject:In-Reply-To:References:Date; b=mYKpHPhutllw1cf0yQ10QWihQg4W5okGHN2L6D36rat+MFqSmr/te8mHuWusqO35z LfistG/txej5YW+2YHaEP1u3iD1DVOqERDSBdt5+iDDY8JW3dHJm6ugFgT4JwN6MYo 8uL9r/KT35+krvycNejvXRhdt5OJoiMwmpTknK5vgMVWJYn8TRvSAk0/2yDkR8d5+T Qr9PQiEgu+mrDoUpd2kxMn0yI+dRW3kea9gTjbtxqNkkwgEUuN36HGftfcpf53uGeY d3cZZ7P+iBtyRM16+z463kp8h/v4WX+noIu+TkNXijKTdM9G4p8XvR8G4CvArwZTKj AL2tLUAbWqoVw== To: jbranso@dismail.de, guix-devel@gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: Rust in the kernel In-Reply-To: <153bf26688033b7a202cdfa34febc196@dismail.de> References: <871qv0n5lz.fsf@disroot.org> <878rp9c9x9.fsf@gnu.org> <153bf26688033b7a202cdfa34febc196@dismail.de> Date: Tue, 05 Jul 2022 10:47:49 +0600 Message-ID: <87sfngkvwq.fsf@disroot.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Received-SPF: pass client-ip=178.21.23.139; envelope-from=akib@disroot.org; helo=knopi.disroot.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1656996514; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=rDOAMQC+pETHLlbnJT0E7N445mrStLk/lAYiPqa6NgA=; b=TOQzUS5nOYeoTZ+0u5uDxU01/kUeHzJj8b3e/lmVyPqV/i0nl4WEj7BzFJXrNkkkrJv0Ni rsgIqbOLFQttCfvdBfzuhPcQRLxtf1OyaqQBDuEXshTdzq3cdspdhDnnYtLyeIjT72zO7s L8h4/ZwdAMn1n4QdaaQHN44zllTOpm0bGIAd3z0Xs2iRpANp0ZnG1QD+jIIg+iWfJ9JT7F V4jA4Jp6WaeGCvsx78RDfz5fKXuBmyMnA6p6rhlnjFcqHeKA+nXATeUB1vGP9RJUi5/A6/ NTqeoIqPcNegr3PWQngxUNQY/Llrh7RL1DnwJZ2Y1uR89N1DVyi0yGAVCEeTnQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1656996514; a=rsa-sha256; cv=none; b=WYs+2dVQCyqDkXb3IEPmywlGqBcVL2ouu6+Gvoq7rvEZuJWuLC8JHojwTVlDF2dz4l+6xt pWSUN6RSP2XX/np2fjOw/c77Usp4eoWIwkaFgRF4gXUshAelxSfUJbhWzdwMqIQAAtek/E /XwCVZIQauMw26aybcpOUMjnEtK14MVeoiroi7EypcCADwP/zj8RQuno6e7pUUI4e+PrdB UP4IPnmIT3c4kozRdyAVx6ODhAhkdTdRq5+0NWjW1CUB/w1EX2EC+rYswHw22Ziv/ED+Fu cuKEtG4Vp9UTDhe3ACPOu8VJLH4UxkCg2tod0yfzN7wRvrKcS11dkoGm5uvVkg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=disroot.org header.s=mail header.b=mYKpHPhu; dmarc=pass (policy=quarantine) header.from=disroot.org; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -5.55 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=disroot.org header.s=mail header.b=mYKpHPhu; dmarc=pass (policy=quarantine) header.from=disroot.org; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 673053F643 X-Spam-Score: -5.55 X-Migadu-Scanner: scn1.migadu.com X-TUID: zvqC3zhg10+H --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable jbranso@dismail.de writes: > July 4, 2022 1:36 PM, "Akib Azmain Turja" wrote: > >> Ludovic Court=C3=A8s writes: >>=20 >>> Hi! >>>=20 >>> Leo Famulari skribis: >>=20 >> The effort to use the Rust programming language within the Linux kernel >> is progressing and may be realized in the next few months: >>=20 >> https://lwn.net/SubscriberLink/899182/6c831b90eaee015e >> https://www.memorysafety.org/blog/memory-safety-in-linux-kernel >>=20 >> Within Guix, we'll need to adapt our kernel build processes in order to >> support this. >>=20 >> Although I help with updating and configuring the kernel builds, I won't >> be able to participate in the "Rust in the kernel" effort for Guix. >>> Understood=E2=80=A6 >>=20 >> So, interested volunteers should begin organizing :) >>> Yup! >>>=20 >>> Now, concretely, how long will it take before key parts of the kernel >>> are written in Rust? Hopefully a long time, no? Per the article above, >>> it=E2=80=99s starting small, with Rust usage in well-defined locations. >>>=20 >>> This is not to say that we shouldn=E2=80=99t start organizing, but rath= er that >>> we still have a bit of time ahead. >>>=20 >>> (During that time, interested readers can also take a stab at improving >>> support for the Hurd, which relies on that revolutionary technology >>> called =E2=80=9Caddress spaces=E2=80=9D to ensure Memory Safety=E2=84= =A2 among other things!) >>>=20 >>> Ludo=E2=80=99. >>=20 >> "Address spaces"! What's that? Sorry for asking without searching the >> internet first, but the Hurd designers are so creative that a few >> understand the concepts and join the community, so there is a little >> chance (if any) that I'll find any useful information on that. > > From the Hurd wiki: https://www.gnu.org/software/hurd/advantages.html > > The Hurd is built in a very modular fashion. Other Unix-like kernels > (Linux, for example) are also modular in that they allow loading > (and unloading) some components as kernel modules, but the Hurd goes > one step further in that most of the components that constitute the > whole kernel are running as separate user-space processes and are thus > using different address spaces that are isolated from each other. > This is a multi-server design based on a microkernel. It is not > possible that a faulty memory dereference inside the TCP/IP stack > can bring down the whole kernel, and thus the whole system, which > is a real problem in a monolithic Unix kernel architecture. > > Some visual explantions: > > https://en.wikipedia.org/wiki/Microkernel#/media/File:OS-structure.svg > > The Hurd is on the right in this image. Thanks, now I understand Ludo' was saying about virtual address space, achieved using paging. > > Essentially, if your fileserver somehow gets hacked, the attacker > cannot magically access your TCP/IP stack, because your TCP/IP is not > in the some "software zone" as your fileserver. So microkernels like > the Hurd are usually considered more secure and better designed > than monolithic kernels like Linux. However, monolithic kernels > will usually be faster than microkernels. I know microkernels are theorically slow due to the heavy use IPC. But is it really impossible for well written microkernel to beat a well written monolithic kernel? L4 is super-fast, is it still slower than Linux? > >> -- >> Akib Azmain Turja >>=20 >> This message is signed by me with my GnuPG key. It's fingerprint is: >>=20 >> 7001 8CE5 819F 17A3 BBA6 66AF E74F 0EFA 922A E7F5 =2D-=20 Akib Azmain Turja This message is signed by me with my GnuPG key. It's fingerprint is: 7001 8CE5 819F 17A3 BBA6 66AF E74F 0EFA 922A E7F5 --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEyVTKmrtL6kNBe3FRVTX89U2IYWsFAmLDwnYACgkQVTX89U2I YWufdg/+OgbPks2AmoEDRx6r8vVMajFfDkiwG4KemqPcXXY7+4fsJuw30m4mwyIN w7L2AAIYM9aEgb2Tv2wbLhQD0763qRKATKtfpnZWsHuxWpMLyL4YzErFcyUldD6Y 62QQofca6/isBZNoDrjE4rGJw/HVZr5fU5S2Gt6f4tmfusgBGifbSr56GaBQt0Nf hh4FXcDYB68hdS4WfIU/r0YFyn3T0LWf4a6hIMIUf0tqa8DH2VvRa4t5gEPTCWuc o7LEK9AYgr0+JGEfn/KRY25AG46cVvKSHgp3//CGi27HsGvTOUY2riGHWhcOXg7B PvrLHLIUl4FJUSemhJ+2h3u3iFAfGhdy3D3hMiuhcbVdeYmhP6yZr7XMlNrr2IUH 8M6pdwCKHqLZPeLL+/ZA30lN0Tl4bkTY9JAOVOVZFhI0bv7KBi5vI/6IT8+Moiv6 GyPamMZmAQ1f/qGMOCwFW9/djgsbrG21yc2/Nzra8Q2Fo69XQ1meE1Lm9nKT0z6t qGgC5VWbyqMM+cazMhj5N5xFlFmER7kv51EcqdnqoDWvutUBIzEMsdGputC8GTr9 1xul74YICBxuNA9AhcM+rVHaDPf/uJfs1parzDI8sUSeuzv5IAYokc4UxFqGZhGf lwTSeZ4jWgnTMNJuR46sOScVyscVkUIxIM1pAoxDQtpLPTPMUdg= =CkTW -----END PGP SIGNATURE----- --=-=-=--