To get started you can read for example this.
You can learn what every column and parameter (in ps command output) means using ps official man pages which are available via
man ps
command in linux or online as well. So the mentioned flags mean:
S interruptible sleep (waiting for an event to complete)
D uninterruptible sleep (usually IO)
s is a session leader
l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
To learn more about threads/processes life-cycle you can read this article (to figure out what "sleeping" and other specific terms mean).