src/vs/platform/terminal/node/terminalProcess.ts/TerminalProcess/start
class TerminalProcess:	async start(): Promise<ITerminalLaunchError | undefined> {
		const results = await Promise.all([this._validateCwd(), this._validateExecutable()]);
		const firstError = results.find(r => r !== undefined);
		if (firstError) {
			return firstError;
		}

		try {
			await this.setupPtyProcess(this._shellLaunchConfig, this._ptyOptions);
			return undefined;
		} catch (err) {
			this._logService.trace('IPty#spawn native exception', err);
			return { message: `A native exception occurred during launch (${err.message})` };
		}
	}