About to make the switch on my Gaming computer. I'm trying to find the best way to dual-boot Windows while making sure Windows cannot read/write to the Linux partition.

So, I've read everyone else's replies and they're pretty stupid. That pi3832v2 dude doesn't realize that windows will overwrite shit when it pleases. F/e when it upgrades windows 7 machines to 10 without fucking asking you. I've lost grub on more than one occasion because windows was fucking dumb and archaic. Also, I've dipped into the whiskey since my initial post so ignore or ask me to clarify any errors or retardations.

To answer your question GPU passthrough works on the principal of virtualizing windows inside of linux. For example, I have a 980ti. When I run my bash script I take my 980ti and give my windows VM direct access to it. The linux OS no longer has the ability to use it. If you open up the device manager in windows you'll literally see a 980ti in the device list. The display port, hdmi, dvi ports on the card will all shit out windows. So, you're essentially just running windows from inside linux and letting it control a PCI device. This isn't relegated to graphics cards either. I use this same method with proxmox to pass through an LSI 9200-8e HBA controller to a FreeNAS VM to manage my Rackables SE3016 storage extender. Although I just spent wayyyyyy to much on a dedicated NAS build. Anyway, the gist is that you need two GPU's. One for linux and one for windows. If you watch the youtube vid on my site you'll see how linux and windows are running at the same time. That's because linux runs on a 970 and windows runs on a 980ti. You basically have to account for 2x the video cables for each monitor you want to pass through. This is because you have to run the monitor on linux, force a disable of the monitor in linux with xrandr, then start the vm which causes every monitor I've ever used to automatically switch over to the active input (now windows). The only caveat that I'm aware of that can prevent you from doing this is your cpu/motherboard supporting vt-d. Which is intel's virtualization tech that allows direct access to PCI devices. AMD has similar shit called AMD-v I'm pretty sure but I don't use AMD because intel fucked them over about a decade ago and I don't like to sweat in my bedroom.

I just reread your questions. I explained the first, yes install Arch linux, RTFM or use Antergos, and then you install windows onto a file basically. I explained the third too. If you need assistance then just message me because it seems like you're not a communist and that's cool with me. If you're not a pansy and can actually have an attention span longer than a golden retriever you can optimize qemu/kvm to the point where you only see ~3% or less of a performance impact from virtualizing windows. That's negligible enough to warrant the necessity for not relying on that shitty OS as your daily driver.

/r/linuxquestions Thread Parent