Install an Ubuntu version from Microsoft Store.
- Ubuntu - Ubuntu (latest)
- Ubuntu 18.04 - Ubuntu 18.04
- Ubuntu 16.04 - Ubuntu 16.04
Please check out the Windows 10 Installation Guide written by Microsoft itself.
Install an Ubuntu version from Microsoft Store.
Please check out the Windows 10 Installation Guide written by Microsoft itself.
L1 cache reference ......................... 0.5 ns
Branch mispredict ............................ 5 ns
L2 cache reference ........................... 7 ns
Mutex lock/unlock ........................... 25 ns
Main memory reference ...................... 100 ns
Compress 1K bytes with Zippy ............. 3,000 ns = 3 µs
Send 2K bytes over 1 Gbps network ....... 20,000 ns = 20 µs
SSD random read ........................ 150,000 ns = 150 µs
Read 1 MB sequentially from memory ..... 250,000 ns = 250 µs
A lot of people misunderstood Top-level await is a footgun, including me. I thought the primary danger was that people would be able to put things like AJAX requests in their top-level await
expressions, and that this was terrible because await
strongly encourages sequential operations even though a lot of the asynchronous activity we're talking about should actually happen concurrently.
But that's not the worst of it. Imperative module loading is intrinsically bad for app startup performance, in ways that are quite subtle.
Consider an app like this:
// main.js
This gist had a far larger impact than I imagined it would, and apparently people are still finding it, so a quick update:
(async main(){...}())
as a substitute for TLA. This completely eliminates the blocking problem (yay!) but it's less powerful, and harder to statically analyse (boo). In other words the lack of TLA is causing real problemsI'll leave the rest of this document unedited, for archaeological
use serde::ser::SerializeMap; | |
use serde::{Serialize, Serializer, de::Visitor, de::MapAccess, Deserialize, Deserializer}; | |
use std::fmt; | |
#[derive(Debug)] | |
struct Custom(String, u32); | |
impl Serialize for Custom { | |
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> | |
where |
vSphere 6 Enterprise Plus: | |
1C20K-4Z214-H84U1-T92EP-92838 | |
1A2JU-DEH12-48460-CT956-AC84D | |
MC28R-4L006-484D1-VV8NK-C7R58 | |
5C6TK-4C39J-48E00-PH0XH-828Q4 | |
4A4X0-69HE3-M8548-6L1QK-1Y240 | |
vSphere with Operations Management 6 Enterprise: | |
4Y2NU-4Z301-085C8-M18EP-2K8M8 | |
1Y48R-0EJEK-084R0-GK9XM-23R52 |
https://gbatemp.net/threads/nintendo-switch-sd-to-nsp-dumper.514816/ for a more automated and easier way to do this
This guide assumes you have previous experience with hactool and messing with your NAND. You aren't supposed to blindly copy commands in this, so read before pasting!
Also, the Python sections require Python 2.7 and pycrypto. Make sure your hactool is v1.2 or above.