Blocking I/O: What Is That?

A number of demo sessions that show what the term “blocking” is. To wait for an event - to block is an important concept in operating systems - it give the OS the chance to do other things like power saving, or giving other processes the chance to run, while it does the nasty things like interrupt management for us.

Dependencies

cluster_linux Linux cluster_linux_sysprog Linux Systems Programming cluster_linux_sysprog_fileio File I/O cluster_linux_sysprog_basics Linux Systems Programming: Basics cluster_linux_sysprog_blocking_io Blocking I/O: What Is That? cluster_linux_basics Linux Basics cluster_linux_basics_shell The Shell (Bash - “Bourne Again Shell”) cluster_linux_basics_intro Introduction: Concepts and Terminology cluster_linux_basics_permissions File System Permissions cluster_linux_toolchain Toolchain, And Cross Development linux_sysprog_fileio_basics File I/O: Basics linux_sysprog_basics_groupnode Linux Systems Programming: Basics linux_sysprog_fileio_basics->linux_sysprog_basics_groupnode linux_basics_permissions_basics Permissions: Mode, User and Group Ownership linux_sysprog_fileio_basics->linux_basics_permissions_basics linux_sysprog_basics_syscalls System Calls vs. Library Functions linux_toolchain_basics Toolchain: Basics linux_sysprog_basics_syscalls->linux_toolchain_basics linux_sysprog_basics_groupnode->linux_sysprog_basics_syscalls linux_sysprog_basics_errorhandling Error Handling linux_sysprog_basics_groupnode->linux_sysprog_basics_errorhandling linux_sysprog_basics_errorhandling->linux_sysprog_basics_syscalls linux_sysprog_blocking_io_blocking_io_network Blocking I/O: On A Network Socket linux_sysprog_blocking_io_blocking_io_network->linux_sysprog_fileio_basics linux_sysprog_blocking_io_blocking_io Blocking I/O: What is That? (“Everything is a file”) linux_sysprog_blocking_io_blocking_io_network->linux_sysprog_blocking_io_blocking_io linux_sysprog_blocking_io_blocking_io->linux_sysprog_fileio_basics linux_sysprog_blocking_io_blocking_io_timer Blocking I/O: On A Timer? WTF? linux_sysprog_blocking_io_blocking_io_timer->linux_sysprog_fileio_basics linux_sysprog_blocking_io_blocking_io_timer->linux_sysprog_blocking_io_blocking_io linux_sysprog_blocking_io_blocking_io_file Blocking I/O (On A File): What is That? linux_sysprog_blocking_io_blocking_io_file->linux_sysprog_blocking_io_blocking_io linux_basics_shell_cwd Current Working Directory linux_basics_shell_commandline Commandline linux_basics_shell_cwd->linux_basics_shell_commandline linux_basics_shell_paths Absolute and Relative Paths linux_basics_shell_cwd->linux_basics_shell_paths linux_basics_intro_process Processes, Scheduling, Address Spaces linux_basics_shell_cwd->linux_basics_intro_process linux_basics_shell_special_paths Special Paths linux_basics_shell_special_paths->linux_basics_shell_paths linux_basics_shell_ls Directory Listings: The ls Command linux_basics_shell_ls->linux_basics_shell_cwd linux_basics_shell_ls->linux_basics_shell_special_paths linux_basics_shell_ls->linux_basics_shell_paths linux_basics_intro_overview Overview linux_basics_shell_ls->linux_basics_intro_overview linux_basics_shell_file_dir_create_rm Creating And Removing Files and Directories linux_basics_shell_file_dir_create_rm->linux_basics_shell_cwd linux_basics_shell_file_dir_create_rm->linux_basics_shell_paths linux_basics_shell_commandline->linux_basics_intro_overview linux_basics_shell_paths->linux_basics_shell_commandline linux_basics_intro_process->linux_basics_intro_overview linux_basics_permissions_basics->linux_basics_shell_ls linux_toolchain_basics->linux_basics_shell_file_dir_create_rm