From owner-freebsd-hackers@freebsd.org Fri Jan 4 02:13:05 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BC3AF143ED33 for ; Fri, 4 Jan 2019 02:13:05 +0000 (UTC) (envelope-from asomers@gmail.com) Received: from mail-lj1-f182.google.com (mail-lj1-f182.google.com [209.85.208.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9EC0E7379D for ; Fri, 4 Jan 2019 02:13:04 +0000 (UTC) (envelope-from asomers@gmail.com) Received: by mail-lj1-f182.google.com with SMTP id s5-v6so31280689ljd.12 for ; Thu, 03 Jan 2019 18:13:04 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=17dHiy/4dAgrFDiaNIok2mxyyE0zPX5Ge0X6vq7ihhI=; b=S8ecHK7xi4YoX/7xGv0HZx9UtIy8kpwgpSv8P8tfivRCNAYmd/YdFx8XrVjLQZ0eJp Wv21hK/ModvGcYQpTusSDRpZnm/SeHLuGRKwVjWURT21lEtqICwcf6qvo52IBjljXeC9 EE4PKaExjndrMjKP41g7R6/h2tvOVqbmz2F7To/5QVkNCfocOtED5J4uee2K3UVMRjCC dGFdIW8RAo1H5sb3Tqx6bcXHraTggMV0luyjUkaDB3Jeq5PuLP2AOa5bnDmH9A5pg2BK 5Ny8EgOl0PzVrlf8Gle4RFBc/JgHM6Kb5P5hUgAGPmTInFkz/UFm0Ucbd5Rz0QGk2lKw vmCw== X-Gm-Message-State: AJcUukcHab1pKbDcxGbn5mfYbSReg9x793FkR1oG0wvxyfME9p7F6iwu 9YYS4X2M3d36JPC/aIKTh7WWi2rNH0fUsH8kUQU= X-Google-Smtp-Source: ALg8bN4hBOTG8bJxhDT1U8Y/PMEzzNFfLTIdUfUlF8UQUJapxmCMiNVc22pVqppx+4ABl9YFbzlNE5V5y5jNH1hFTlY= X-Received: by 2002:a2e:b00a:: with SMTP id y10-v6mr11842271ljk.109.1546567982779; Thu, 03 Jan 2019 18:13:02 -0800 (PST) MIME-Version: 1.0 References: <201901032228.x03MSxkq087945@slippy.cwsent.com> In-Reply-To: From: Alan Somers Date: Thu, 3 Jan 2019 19:12:50 -0700 Message-ID: Subject: Re: Strategic Thinking (was: Re: Speculative: Rust for base system components) To: Warner Losh Cc: Cy Schubert , FreeBSD Hackers , Enji Cooper , Igor Mozolevsky , Wojciech Puchar Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 9EC0E7379D X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; spf=pass (mx1.freebsd.org: domain of asomers@gmail.com designates 209.85.208.182 as permitted sender) smtp.mailfrom=asomers@gmail.com X-Spamd-Result: default: False [-3.75 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; NEURAL_HAM_LONG(-1.00)[-0.998,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; DMARC_NA(0.00)[freebsd.org]; RCPT_COUNT_FIVE(0.00)[6]; MIME_TRACE(0.00)[0:+]; TO_DN_ALL(0.00)[]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[182.208.85.209.list.dnswl.org : 127.0.5.0]; NEURAL_HAM_SHORT(-0.65)[-0.654,0]; RCVD_TLS_LAST(0.00)[]; FORGED_SENDER(0.30)[asomers@freebsd.org,asomers@gmail.com]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[asomers@freebsd.org,asomers@gmail.com]; IP_SCORE(-1.10)[ipnet: 209.85.128.0/17(-3.76), asn: 15169(-1.64), country: US(-0.08)]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Jan 2019 02:13:06 -0000 On Thu, Jan 3, 2019 at 5:43 PM Warner Losh wrote: > > > > On Thu, Jan 3, 2019, 3:53 PM Alan Somers > >> On Thu, Jan 3, 2019 at 3:29 PM Cy Schubert w= rote: >> > >> > In message , Wojciech >> > Puchar wr >> > ites: >> > > >> That's precisely how ideas that most people disagree with get *pu= shed* >> > > >> through by evangelists with confirmation bias! Like someone said >> > > >> earlier in the discussion: does Rust add anything? The answer is = a >> > > >> resounding NO, save for bloat. >> > > > >> > > > And this is why one reason people say =C3=A2=E2=82=AC=C5=93FreeBSD= is dying=C3=A2=E2=82=AC . >> > > > >> > > dying for whom? >> > >> > Not to answer this question but to think strategically: >> > >> > I come from the corporate/government environment, having spent most of >> > my time there. Large datacentres (Canadian spelling), large machines, >> > large networks of machines, large networks. In this environment, today= , >> > virtualization in all forms are the platforms of business. Migrations >> > from physical platforms running AIX, Solaris and Linux to either Linux >> > on VMware or Linux containers is where they are putting 100% of their >> > effort. The language of choice is mostly Java. Much of the Java is >> > canned too. What used to be implemented on LAMP stacks is now being >> > implemented using microservices. The platform of choice for >> > microservices is Linux. Stripped down Linux primarily capable of >> > supporting microservices. And now at $JOB we're talking about running >> > microservices on Linux VMs -- virtualization on virtualization, on a >> > virtual network (NSX). My customers are working on microservices and >> > containers that can be migrated from their private cloud to the public >> > cloud and back again easily. >> > >> > Even Microsoft is working on a container strategy. The future is >> > containers. The desktop platform isn't nearly as important any more. >> > And, the physical server, its location, what it runs on and who runs i= t >> > are also less important. What is important is the speed and cost >> > effectiveness of standing up applications. >> > >> > IMO we have strengths that can immediately be capitalized on, like the >> > Linuxulator. If anything could be in base it might be go, the language >> > Kubernetes is written in -- don't get me wrong, I'm not advocating >> > importing go into base. Having said that, transforming FreeBSD into a >> > PaaS platform, tying it all together using Kubernetes would position >> > FreeBSD for the future to come. Maybe I'm talking myself into go and >> > Kubernetes in base but maybe this could just as easily be done in port= s. >> > >> > Think about this: Kubernetes in base or ports, using the Linuxulator >> > and jails (or an implementation of cgroups and namespaces constructs i= n >> > addition to jails). Bhyve and jails provide the enterprise with other >> > virtualization options such that a FreeBSD host could host Linux or >> > FreeBSD containers, Windows or other VMs, and FreeBSD jails, all on on= e >> > or a cluster of FreeBSD hosts, possibly part of a heterogeneous cluste= r. >> > >> > This IMO would position FreeBSD for the future. >> > >> > Maybe go and Kubernetes? Let's not be left behind. >> > >> > >> > -- >> > Cheers, >> > Cy Schubert >> > FreeBSD UNIX: Web: http://www.FreeBSD.org >> > >> > The need of the many outweighs the greed of the few. >> >> FreeBSD support in Kubernetes would be great, but I don't think >> there's any reason to put it into base. The interesting thing about >> Rust is that it's so good at low-level work. As we discussed, >> Johannes Lundberg has written a device driver in Rust. And Fabian >> Freyer is working on jail(3) and jail(8) replacements in Rust. Enji >> is thinking about writing an rc(8) replacement in Rust. These are the >> kind of projects that make sense to do in base, apart from the >> language barrier. Go, I think, would be just fine remaining in ports. >> If I were to pick any language other than Rust to add to the base >> system, it might be Lua. Though high level, its embeddable and nicely >> complements C and Rust. That's why it's used internally in Kyua, and >> it even in the NetBSD kernel. > > > We already have. The boot loader uses the latest, almost stock version. Z= FS uses it's weird, hacked version to send down config programs. The build = glue to get a luac is pretty small at this point :) > > Warner Wow, I'm way behind then. Maybe I'll actually need to learn it. -Alan