Trusted Communications Tutorials Page
"THREADS"- : My use of the word "threads" comes from modern-day computer programming. Hey, I'm a programmer! In computer talk, we speak of things called "process spaces" representing the execution (running) of a computer program in the context of an Operating System. One may see a more formal naming: a virtual, protected, process address space.
A process space has code, data, and a primary "thread stack" and potentially some to many side "threads." which share portions of the "address space" of a process. Every thread runs on its own procedure call stack, a rather special area of the "data segment" of the process address space containing data about the program's execution.
Programs run on a primary stack (thread). The primary stack thread can spawn off one or many side threads. Each thread has its own execution stack memory along with other shared "working memory."
In the olden days of Central Processing Unit (CPU) chips, the computer chip had a single CPU core. In modern days, a single CPU chip can have multiple "cores". Each core has the ability in semi-synchronous order to run concurrently, working the same common shared data and potentially having to synchronize its execution with other threads running in another core. CPU cores can, of course, be used for other programs running in their own process space.
In modern-day advanced CPUs, a program runs on a stack frame. A stack frame is a contiguous range of data items associated with some called procedure. Any procedure can make a "call" on another procedure, passing its parameters, which become part of the next stack frame along with data local to the procedure.
This can go on for a while until easily twenty or more stack frames can exist on a single stack until such time as one of the procedures returns control to its calling procedure. The return call eliminates a stack frame.
So, picture a "thread" as a collection of index cards strung together with a sewing thread. Each index card represents a stack frame, and someone is holding the string of sewing thread strung out between extended hands. In between the hands, there is now a collection of index cards strung together, almost like a tree decoration.
So, each of my above "topic threads" is a collection of "print pages" strung together in sequence, like page 1, page 2, and page 3, … which together form a chapter or a book.
A process space has code, data, and a primary "thread stack" and potentially some to many side "threads." which share portions of the "address space" of a process. Every thread runs on its own procedure call stack, a rather special area of the "data segment" of the process address space containing data about the program's execution.
Programs run on a primary stack (thread). The primary stack thread can spawn off one or many side threads. Each thread has its own execution stack memory along with other shared "working memory."
In the olden days of Central Processing Unit (CPU) chips, the computer chip had a single CPU core. In modern days, a single CPU chip can have multiple "cores". Each core has the ability in semi-synchronous order to run concurrently, working the same common shared data and potentially having to synchronize its execution with other threads running in another core. CPU cores can, of course, be used for other programs running in their own process space.
In modern-day advanced CPUs, a program runs on a stack frame. A stack frame is a contiguous range of data items associated with some called procedure. Any procedure can make a "call" on another procedure, passing its parameters, which become part of the next stack frame along with data local to the procedure.
This can go on for a while until easily twenty or more stack frames can exist on a single stack until such time as one of the procedures returns control to its calling procedure. The return call eliminates a stack frame.
So, picture a "thread" as a collection of index cards strung together with a sewing thread. Each index card represents a stack frame, and someone is holding the string of sewing thread strung out between extended hands. In between the hands, there is now a collection of index cards strung together, almost like a tree decoration.
So, each of my above "topic threads" is a collection of "print pages" strung together in sequence, like page 1, page 2, and page 3, … which together form a chapter or a book.