When you useto invoke command find-file, Emacs opens the file you request, and puts its contents into a buffer with the same name as the file. Instead of thinking that you are editing a file, think that you are editing text in a buffer. When you save the buffer, the file is updated to reflect your edits.
Buffers can also contain text that doesn't come from a file. When you useto get a list of buffers, that list is itself in a buffer, called *Buffer List*, and that buffer is not associated with any file.
By convention, buffers whose names start with an asterisk (`*') are not associated with files (but that doesn't mean you can't save them in files). If they have unsaved changes when you exit Emacs, these buffers are killed without your being asking for confirmation.
Buffers whose names start with a space are invisible to many operations. These are generally internal buffers that you don't want to see. Their names normally don't appear in the buffer list or as completion candidates when you switch buffers using .
Buffers are shown in windows. You can have more than one window showing the same buffer. splits the current window, creating two windows, both showing the same buffer.
You can find more info on buffers in the Emacs manual:
In Emacs terminology, a "window" is a container in which a buffer is displayed.
When starting an Emacs frame, there is ordinarily only one window in it, which can be split into multiple windows using or . This allows viewing different buffers (or multiple times the same buffer) at once.
You can read more about windows in the Emacs manual:
In Emacs terminology, a "frame" is what most window managers (Windows, OSX, GNOME, KDE, etc.) would call a "window".
It will typically have a title bar and some buttons to iconify (minimize), maximize / restore, and close the frame. To
see an example, open up a second frame from your running Emacs instance with
make-frame-command). You can close frames with (
delete-frame), though this
will not close the last frame that is open.
You can read more about frames in the Emacs manual:
Point and mark
Killing and yanking
(compared with case sensitivity)
Narrow and widen
(compared with collapse and expand)