77

I'm just wondering if it is possible to run Windows without its GUI like Linux—with just the virtual terminal (tty)

The reason behind this is that my Windows 7 box often freezes whenever some random application hangs up, such as Firefox (ya even Firefox, Chrome doesn't do that), MSN, Microsoft Office, etc. (I reinstalled countless times and Windows has been like that for every version I used, I think it's really just being like Windows D: )

However, I noticed that although when a program hangs up and thus freezes almost my entire desktop, if I happened to have a console window up (I have SUA, Unix layer built into Windows, installed), just use the kill command, it shuts down that unresponsive application in a blink and returns me a responsive desktop again.

So I'm wondering: is it possible to switch to some text-only interface when the desktop hangs up, just like I sometimes do on Linux?

10
  • 43
    If you had an older windows, It was called DOS.
    – Xaade
    Jun 1, 2011 at 19:47
  • 6
    No, Microsoft got rid of that after Windows 9x. Unlike X, Windows doesn't run on top of some shell subsystem. Ctrl+alt+delete is the best you can get. Jun 1, 2011 at 19:49
  • 14
    Tech demos have existed that showcase what you're looking for, but in a practical sense Windows simply relies on the presence of a GUI far too much. If your box freezes randomly, fix that.
    – afrazier
    Jun 1, 2011 at 20:14
  • 3
    This question doesn't make much sense. If the problem is that the GUI programs that are being used to do actual work cause the user interface to freeze, then preventing the system from being able to run any GUI applications at all isn't exactly a way to solve that and make the system productive.
    – JdeBP
    Jun 1, 2011 at 20:41
  • 8
    It would be nice if someone actually answered your question instead of saying that you are wrong and suggesting some other way to do it. There are lots of situations where the user interface becomes unstable or slow. Knowing a way to get out of that state would be wonderful. Jun 2, 2011 at 0:55

10 Answers 10

81

Windows Server Core is a 'GUI-less' version of Windows:

Beginning with Windows Server 2008 Microsoft offered the option to install the operating system without large parts of the graphical user interface (GUI). This means when you logon to the server all you get is a command line prompt. There is no Windows Explorer, no start menu and no Internet Explorer among others. You want to set the IP address? Use the command line. Want to reboot? Use the command line. Want to . . . ? Well you get the idea.

For older and non-server versions you can edit the registry key HKEY_LOCAL_MACHINE>Software>Microsoft>Windows NT>CurrentVersion>Winlogon and change the Shell value to cmd.exe instead of Explorer.exe.

Not exactly GUI-free options, but it eliminates Explorer and a lot of the visual 'niceties' that eat all your resources. :)

15
  • 46
    Windows Server Core still boots to a windowed graphical mode, it just runs the Command Prompt in a window as the shell. It's more like booting into X and getting only an XTerm window than not.
    – afrazier
    Jun 1, 2011 at 20:09
  • 1
    thats very nice Altho I want a way to switch to a text only interface when the desktop hangs up it seems its impossible with windows DD:
    – BeyondSora
    Jun 1, 2011 at 20:09
  • 6
    @BeyondSora - You can always use task manager and kill Explorer.exe it will reset and reload. Windows Vista and 7 even have a hidden "Exit Explorer" shutdown option you can get at (ctrl-shift-right-click the power button on the start menu). But I see what you're aiming for, and as others have said, you'll never get 100% GUI-less with Windows. Jun 1, 2011 at 20:14
  • 3
    Yeah, but sometimes not even the task manager will pop out I encountered this situation a few times, and there is nothing else i can do other than shutting down forcefully. But a few days ago, I happened to have my SUA bash shell open, and while the whole desktop hangs, wanst able to move any window, taskmanager wont come out. I was luckily able to type into that console So i just typed kill $(ps -A | grep access.exe), and it just shut down the access right away and my desktop was responsive again
    – BeyondSora
    Jun 1, 2011 at 20:18
  • 6
    Linux with a framebuffer console runs with the display adapter in a graphical mode. The actual display hardware being in a "graphical mode" isn't the essence of the GUI/TUI distinction nowadays, since it takes a graphic mode to be able to properly and fully render a Unicode textual user interface.
    – JdeBP
    Jun 1, 2011 at 20:53
35

As afrazier suggest, rather looking for convoluted work arounds, why not address the core problem? Sure, you can kill (and re-run) explorer.exe (as techie007 suggests), but tackling the cause of the instability sounds more prudent to me.

Windows 7, and the x64 variant in particular, is very stable. Clearly, you have something that is fundamentally upsetting the balance.

Personally, I'd check your hardware, in terms of comparability, but also for faults. Download the latest stable drivers. Then reinstall Windows 7 (preferably x64), install your updated drivers, and install the bare essentials in terms of software, then back it up.

Run it for a few days, if all is well, install a few more apps... but be careful what you install - most Windows stability issues related to poorly-coded drivers, but occasionally there are certain windows updates that cause problems.

Failing this, as an apparent *nix fan, why don't you consider Linux + Mono?

5
  • +1, and second the suggestion of Linux+ some compatibility layer as Windows replacement. Alternatives to Mono include WINE and VirtualBox.
    – CarlF
    Jun 1, 2011 at 21:07
  • 8
    +1 to fixing the root cause. @BeyondSora try checking the event logs to see if you can glean a better idea of what is causing Windows to hang.
    – Xantec
    Jun 1, 2011 at 22:00
  • Yeah my other laptop is running opensuse11.4, which is great so far! My system is windows 7 x64 ultimate, all the drivers are from dell website, supposedly "designed for windows 7". The softwares I have installed include Visual Studio Pro, SQL server 2008 R2 Dev, Office 2007 (only word,excel,ppt, and access), and SUA. Browser-wise, just firefox. Nothing else is installed, I rlly dont see why this system can be unstable? Due to work-issue, I have to work on a C# project regarding to excel/access/sql server, hence windows is a must D:
    – BeyondSora
    Jun 2, 2011 at 2:17
  • 1
    @BeyondSora - That doesn't like a particularly troublesome mix of software. However, Dell have been know to have problems - you'll noticed they don't claim 'designed well for Windows 7'! ;)
    – CJM
    Jun 2, 2011 at 10:04
  • @BeyondSora - It casn't been made clear - have you tried rebuilding Windows from scratch? It might be worth investing drivers from the actual manufacturers; ie. Intel/ATI/Nvidia/Realtek/Broadcom etc - the 'official' drivers are frequently well out of date on Dell's site.
    – CJM
    Jun 2, 2011 at 10:06
22

It's "kind of" possible; see Native shell.

enter image description here

4
  • 4
    Shortage of native applications.
    – Synetech
    Sep 1, 2011 at 5:53
  • @Synetech, Wait.. is there even one? Are people outside of Microsoft even allowed to write "native applications"?
    – Pacerier
    Oct 31, 2014 at 15:27
  • Can I use this to create my own custom display manager/desktop environment? Can we somehow draw on the screen in this mode?
    – feedc0de
    Sep 21, 2017 at 14:53
  • @danbru1211: I've thought about that. I don't know the answer. It seems unlikely though.
    – user541686
    Sep 21, 2017 at 17:17
18

The Windows 3.1, 95 and 98 GUIs ran as a separate layer on top of the DOS OS. With the advent of NT based architecture (NT4, 2000, XP) the GUI is now the OS, while "DOS" is now an application. Other than troubleshooting CLI, it is not possible to run the newer OSs without GUI.

3
  • 6
    That thing called the DOS Prompt, must not be called DOS.
    – barlop
    Oct 30, 2011 at 23:30
  • DOS = Disk Operating System. What you get in the Windows Command Prompt is not an Operating System. Nov 28, 2014 at 0:12
  • X11 does not run on top of the command shell. It may be launched from a shell script, but that is all. It does not need a command shell to run. Microsoft does not have a (good) command shell, because they originally bought a half baked clone of C/PM, that was an undergraduate project (this may be a myth, if it is then they need a new excuse). C/PM in turn is a poor man Unix. Then Microsoft gave up on their command line, before fixing it. Jan 1, 2016 at 0:57
8

Microsoft has announced Windows Nano Server for the next version of Windows Server (Windows 10 based):

Nano Server is a deeply refactored version of Windows Server with a small footprint and remotely managed installation, optimized for the cloud and a DevOps workflow. [...] available in the next version of Windows Server, Nano Server focuses on two scenarios:

  1. Born-in-the-cloud applications – support for multiple programming languages and runtimes. (e.g. C#, Java, Node.js, Python, etc.) running in containers, virtual machines, or on physical servers.
  2. Microsoft Cloud Platform infrastructure – support for compute clusters running Hyper-V and storage clusters running Scale-out File Server.

There won't be GUI in Windows Nano Server:

[...], we removed the GUI stack, 32 bit support (WOW64), MSI and a number of default Server Core components. There is no local logon or Remote Desktop support. All management is performed remotely via WMI and PowerShell. [...]

1
  • Looks like it is only available for containers now. Feb 7, 2020 at 23:32
3

Enable Emergency Management Services , if your system has a serial port.

The EMS "Special Administration Console" gives you a cmd.exe prompt (after you open a "channel") that you can use to perform tasks. The console even continues to function if the system bluescreens, allowing you to view the crash data or reboot.

2

The Session Manager determines what sessions to run by evaluating

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems

for required and optional subsystems.

Windows, for example, is a subsystem that is ran and is listed as

%SystemRoot%\system32\csrss.exe

with various parameters passed along. This is the Client-Server Runtime Server Subsystem and will start a graphical interface. When trying the following out which you shouldn't try at home

%SystemRoot%\system32\cmd.exe

we get to see something along the lines of

C000021a (fatal system error)

The session manager initialization system process terminated unexpectedly
with a status of Ox00000000. (Ox00000000 Ox00000000)

The system has been shut down.

which basically means that cmd.exe gracefully exits because it's window can't be made. I think however that a program that initializes a DOS mode, prints something on the screen and loops would have success. This is basically something that chkdsk does when running during the boot and it wouldn't be hard to replicate something along that lines in C++. It however takes quite some time to replicate a full console, unless there are good open source alternatives out there where it is a matter of rewriting the I/O...

So, it is technically possible to write software that allows you to run command line only and switch to a command line session, but I see this as a hard workaround for what you are trying to achieve. Because you should rather figure out why everything hangs and why you can't simply press CTRL+SHIFT+ESC to launch your task manager and kill it with fire...

Look into capturing a trace and forcing a dump if you want to solve the freeze instead. :)

2
  • Do you happen to know how to switch into (rather than out of) text mode in Windows by any chance?
    – user541686
    Jun 4, 2011 at 5:58
  • @Mehrdad: It's not implemented as is to go to a non graphical mode, the best bet you could go for is implementing a full screen command prompt in a separate session and allow the user to switch between the sessions by pressing a shortcut. I'm not sure how to implement this though as that's the Stack Overflow part of the story, but some things are possible but in my eyes unnecessary... :) Jun 4, 2011 at 10:20
1

You can install Windows Server 2008 R2 in a "Core" configuration that has no gui.

2
  • It is not GUI-less, it has only a minimal GUI.
    – peterh
    Sep 9, 2019 at 15:06
  • This is true. But there is now also a true GUI-less nano edition. Sep 9, 2019 at 15:14
0

if you are looking for a small footprint windows install with only command prompt, you can look at windows PE. I believe they are on version 5, and this can be obtained for free from M$. I am sure most of the "gui" is still running in the background, but you can decide how it will be built, you can choose drivers, win applications like powershell, or dot.net, other applications like A/V, Imaging tools, etc.

This environment is supposed to be for deployment / recovery of computers, but you know the M$ community and some techs have even created a GUI...

2
  • The question is about switching from GUI to VT, not about running in VT mode only. May 20, 2015 at 9:37
  • Not they created. Xerox created the GUI. Then Apple stole the idea from them. Then M$ stole the idea from the Apple.
    – peterh
    Sep 9, 2019 at 15:09
-1

Another way is to use the pre-os environment. If you ever tried aomei partition manager you will notice it reboots and run a command in a strict shell in non gui environment. But I don't know yet how to do it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .