03-28-2020
FWIW - Microsoft originally ran 2 OSes - Xenix and DOS. Xenix was a UNIX clone and DOS later became Windows. It was a business decision to drop Xenix and go all Windows, just like going WSL2 is a business decision now that Microsoft is doing streaming and gets revenue there.
The reason for an all-Linux desktop has to do with being able to use all of the features of Linux internals, the kinds of things you could not do in Windows.
Microsoft resisted anybody even knowing what the base api (the system calls) was until there was a lawsuit they lost. So it meant if something was broken MS had to fix it, you had to sit on your hands waiting. You could not come out with a new meaningful bit of software without using a special expensive development environment - Visual Studio.
This caused MS a problem down the road
Windows lost ground when many of the appliance manufacturers went with Linux - refrigerators, cars, routers, firewalls, disk arrays, Android cell phones.
Windows also took lots of hits because of hacker attacks that only they could "fix". Linux is subject to some attacks
Short answer - if you have lots of money and windows you can learn to program. If you do not have lots of money you can learn with Linux, since most Linux tools are free. If you want to use twitter it does not matter all that much what you use.
This User Gave Thanks to jim mcnamara For This Post:
8 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
hi,
I posted a thread before on that subject, but with a wrong focus...
here's my problem: I want to check if a file exists in a windows shared folder mounted using:
sudo mount -t cifs -o username=xxx,password=xxx,uid=xxx,gid=xxx //192.168.0.92/public /media/92_shared
I tried
if
... (2 Replies)
Discussion started by: jul
2 Replies
2. Linux
What are the differences, advantages, and disadvantages? (1 Reply)
Discussion started by: Advice Pro
1 Replies
3. UNIX for Dummies Questions & Answers
I *think* what I want to do is not only possible but easy, but as a "dummy" :) I can't figure it out. Here's what I have:
Linux (Ubuntu 10.04) laptop that is not in my house, but has an Internet connection.
Linux (Ubuntu 9.04) computer in my house that has unfettered access to the... (6 Replies)
Discussion started by: WesleyC
6 Replies
4. Shell Programming and Scripting
I am having some problems when writing shell as follows:
shell runs but returns no results
echo "enter group name: "
dir="/home"
read group
if id -g $group > /dev/null 2>&1
then
echo "group exits"
else
echo... (6 Replies)
Discussion started by: kingkner
6 Replies
5. UNIX for Dummies Questions & Answers
I have two files,
file1:
name1
name2
name3
name4
name5
name6file2
name1 group1
name3 group2
name4 group3
name6 group4
name9 group5
name10 group6
name11 group7
name12I need a code that will match the name column in file1 with the group column in file2, if that exists, otherwise... (5 Replies)
Discussion started by: FelipeAd
5 Replies
6. UNIX for Advanced & Expert Users
Hello,
i would like to leave an Kubuntu 16.04 from an ADS without an existing ADScontroller. I've done this with "net ads leave" and also with "force". But this is not working without ADS.
So what i have to do with the OS?
Why i would like to do that? The Kubuntu should be an template... (0 Replies)
Discussion started by: darktux
0 Replies
7. Shell Programming and Scripting
I was just flirting with the idea of installing one package (bcl2fas2) on my WSL:Ubuntu using alien. However, when I run
sudo alien bcl2fastq2-v2.20.0.422-Linux-x86_64.rpm
I get the following error:
Package build failed. Here's the log:
dh_testdir
dh_testdir
dh_testroot
dh_prep... (0 Replies)
Discussion started by: Xterra
0 Replies
8. UNIX for Beginners Questions & Answers
Hi, totally new to linux base using windows when started learning and using computers.
but i remember that one pc was there , look alike windows desktop, but could not do the task as windows just click and open and view edit etc. But, you could do a little differently even saving in and opening... (8 Replies)
Discussion started by: jraju
8 Replies
LEARN ABOUT FREEBSD
linux
LINUX(4) BSD Kernel Interfaces Manual LINUX(4)
NAME
linux -- Linux ABI support
SYNOPSIS
To compile support for this ABI into an i386 kernel place the following line in your kernel configuration file:
options COMPAT_LINUX
for an amd64 kernel use:
options COMPAT_LINUX32
Alternatively, to load the ABI as a module at boot time, place the following line in loader.conf(5):
linux_load="YES"
DESCRIPTION
The linux module provides limited Linux ABI (application binary interface) compatibility for userland applications. The module provides the
following significant facilities:
o An image activator for correctly branded elf(5) executable images
o Special signal handling for activated images
o Linux to native system call translation
It is important to note that the Linux ABI support it not provided through an emulator. Rather, a true (albeit limited) ABI implementation
is provided.
The following sysctl(8) tunable variables are available:
compat.linux.osname Linux kernel operating system name.
compat.linux.osrelease Linux kernel operating system release. Changing this to something else is discouraged on non-development systems,
because it may change the way Linux programs work. Recent versions of GNU libc are known to use different syscalls
depending on the value of this sysctl.
compat.linux.oss_version Linux Open Sound System version.
The linux module can be linked into the kernel statically with the COMPAT_LINUX kernel configuration option or loaded as required. The fol-
lowing command will load the module if it is neither linked into the kernel nor already loaded as a module:
if ! kldstat -v | grep -E 'linux(aout|elf)' > /dev/null; then
kldload linux > /dev/null 2>&1
fi
Note that dynamically linked Linux executables will require a suitable environment in /compat/linux. Specifically, the Linux run-time
linker's hints files should be correctly initialized. For this reason, it is common to execute the following commands to prepare the system
to correctly run Linux executables:
if [ -x /compat/linux/sbin/ldconfig ]; then
/compat/linux/sbin/ldconfig -r /compat/linux
fi
For information on loading the linux kernel loadable module automatically on system startup, see rc.conf(5). This information applies
regardless of whether the linux module is statically linked into the kernel or loaded as a module.
FILES
/compat/linux minimal Linux run-time environment
/compat/linux/proc limited Linux process file system
/compat/linux/sys limited Linux system file system
SEE ALSO
brandelf(1), elf(5), linprocfs(5), linsysfs(5)
HISTORY
Linux ABI support first appeared in FreeBSD 2.1.
BSD
February 8, 2010 BSD