לדלג לתוכן

Key Terms & Concepts for computer science

This document contains a curated list of important keywords, terms, and concepts related to computer science.

Operating Systems & Low Level

  • File Allocation Table (FAT) (1)
  • DWARF (2)
  • Executable and Linkable Format (ELF) (3)
  • Operating Systems (OS) (4)
  • Scheduling (5)
  • IRIX (6)
  • sbrk (7)
  • Windows Driver Model (WDM) (8)
  • Windows Driver Kit (WDK) (9)
  • Paging (10)
  • Debian (11)
  • Linux Namespaces (12)
  • Linux Capabilities (13)
  • Root Directory (14)
  • seccomp (15)
  • Linux Security Modules (LSM) (16)
  • ld_preload (17)
  • ptrace (18)
  • Hooking (19)
  • USDT (User-Level Statically Defined Tracing) (20)
  • Tracepoints (21)
  • kprobes (22)
  • uprobes (23)
  • eBPF (extended Berkeley Packet Filter) (24)
  • ext4 (25)
  • Hypervisor (26)
  • Loadable Kernel Module (LKM) (27)
  • MS-DOS (28)
  • Kubuntu (29)
  • Arch Linux (30)
  • Kali Linux (31)
  • Ubuntu (32)
  • VT-x (33)
  • Windows Message Queue (34)
  • hooking trampoline (142)
  • Control group (Cgroup) (548)
  • union mount (549)
  • overlay2 (550)
  • gnu grub (551)
  • LILO (boot loader) (552)
  • Master Boot Record (MBR) (553)
  • boot record (554)
  • GUID Partition Table (GPT) (555)
  • boot loader (556)
  • RHEL (557)
  • Kernel panic (558)
  • emergency mode linux (559)
  • linux targets \ linux run levels (560)
  • Memory Dump Files (561)
  • Rsyslog (562)
  • Syslog (563)
  • Klogd (564)
  • Syslogd (565)
  • rotating logs (566)
  • interrupt handler \ system call handler (567)
  • Interrupt Descriptor Table (IDT) (568)
  • interrupt request (or IRQ) (569)
  • kernel oops (570)
  • system calls (571)
  • Ctype (572)
  • Busybox (573)
  • freebsd (574)
  • file based encryption (575)
  • libfuse (576)
  • windows drivers (577)

Networking

  • VPN (Virtual Private Network) (35)
  • TCP/IP Model (36)
  • OSI Model (37)
  • ARP (Address Resolution Protocol) (38)
  • SMTP (Simple Mail Transfer Protocol) (39)
  • DHCP (Dynamic Host Configuration Protocol) (40)
  • RIP (Routing Information Protocol) (41)
  • SCTP (Stream Control Transmission Protocol) (42)
  • SPF (Sender Policy Framework) (43)
  • DKIM (DomainKeys Identified Mail) (44)
  • SSL (Secure Sockets Layer) (45)
  • TLS (Transport Layer Security) (46)
  • HTTPS (Hypertext Transfer Protocol Secure) (47)
  • FTP (File Transfer Protocol) (48)
  • Spanning Tree Protocol (STP) (49)
  • QUIC (50)
  • DNSSEC (Domain Name System Security Extensions) (51)
  • SCP (Secure Copy Protocol) (52)
  • Port Knocking (53)
  • Network security (148)
  • Cloud security (149)
  • INetSim (177)
  • Shodan (178)
  • censys (179)
  • cloudflare (180)
  • Network Driver Interface Specification (181)
  • Transport Driver Interface (182)
  • voice over internet protocol (voip) (449)
  • sip protocol (450)
  • wireless ad hoc network (WANET) (451)
  • Mobile ad hoc network (MANET) (452)
  • ad hoc (453)
  • Ad-Hoc command (454)
  • t-shark (455)
  • software defined network (520)
  • Data integrity (521)
  • Ssh brute force attack (522)
  • web server gateway interface (wsgi) (523)
  • reverse tunneling (525)
  • jdbc drivers (644)
  • network model (645)

Cyber Security

  • SMEP (Supervisor Mode Execution Prevention) (54)
  • Sandbox Escape (55)
  • DEP (Data Execution Prevention) (56)
  • Cyber Security (57)
  • Pegasus (spyware) (58)
  • Fuzzing (59)
  • ROP (Return-Oriented Programming) (60)
  • Drive-by Attack (61)
  • HIDS (Host-based Intrusion Detection System) (62)
  • Vulnerability Research (63)
  • XSS (Cross-Site Scripting) (64)
  • SQL Injection (65)
  • Stack Smashing (66)
  • Unvalidated Redirects and Forwards (67)
  • CSRF (Cross-Site Request Forgery) (68)
  • SYN Flood (69)
  • Missing Function Level Access Control (70)
  • Ping of Death (71)
  • Command Injection (72)
  • Zip Bomb (73)
  • Watering Hole Attack (74)
  • Fork Bomb (75)
  • Code Injection (76)
  • Metasploit (77)
  • Botnet (78)
  • Morris Worm (79)
  • Penetration Tester (80)
  • Binwalk (134)
  • foremost (135)
  • Sulley fuzzer (136)
  • rop gadget (137)
  • lkm hacking (138)
  • rop exploit (143)
  • modern heap smashing (144)
  • Using Components with Known Vulnerabilities attack (145)
  • correlation attack (146)
  • Onehalf (147)
  • Bluetooth (183)
  • fuzzy hashing (184)
  • Hopper (185)
  • Qemu (186)
  • chakra (187)
  • Wiener's attack (188)
  • Coppersmith's attack (189)
  • smurf attack (190)
  • fraggle attack (191)
  • google dorking (192)
  • Remote File Inclusion (193)
  • Local File Inclusion (194)
  • Log poisoning (195)
  • Web application firewall (196)
  • UEFI Bootkits (197)
  • Side channel attack (198)
  • RDP attack (199)
  • Reverse RDP attack (200)
  • Samy (computer worm) (201)
  • web application security (202)
  • real time protection (203)
  • filter driver (204)
  • SIEM (205)
  • YARA (206)
  • Software Restriction Policies (207)
  • NtCreateFile (208)
  • Quarantine (209)
  • EICAR (210)
  • Microsoft Binary Format (211)
  • ole files (212)
  • STRIDE (238)
  • Red team (239)
  • Blue team (240)
  • CVE (241)
  • backtrack (242)
  • Cain and Abel (software) (243)
  • Ollydbg (244)
  • Nikto (245)
  • Burp Suite (246)
  • john the ripper (247)
  • netcat (248)
  • Ettercap (249)
  • Mstsc (250)
  • Veyon (251)
  • rdp protocol (252)
  • domain controller (253)
  • ntds.dit (254)
  • active directory (255)
  • ad ds (256)
  • azure (257)
  • lsass (258)
  • Kerberos (259)
  • Key distribution center (260)
  • Prism (261)
  • Windows password hashing (262)
  • Linux password hashing (263)
  • Diginotar (264)
  • enfal Trojan (265)
  • zlob trojan (266)
  • virus heat (267)
  • MS antivirus (268)
  • shadow IT (269)
  • reverse tracert (270)
  • record route (271)
  • SELinux (272)
  • directory access control (dac) (273)
  • mandatory access control (mac) (274)
  • access vector cache (avc) (275)
  • ursnif Trojan (406)
  • cutwail botnet (407)
  • macro malware (408)
  • Visual Basic for Applications (VBA) (409)
  • sigreturn oriented programming (410)
  • srum forensics (411)
  • confidentiality integrity availability (CIA) (412)
  • dll hijacking (413)
  • win-internals (414)
  • cyber kill chain (415)
  • advanced persistent threat (apt) (416)
  • data encryption standard (des) (417)
  • Triple DES (418)
  • advanced encryption standard (aes) (419)
  • intrusion detection system (IDS) (420)
  • intrusion prevention system (IPS) (421)
  • WMI Query Language (WQL) (422)
  • Link-Local Multicast Name Resolution (LLMNR) (423)
  • NetBIOS (424)
  • Server Message Block (SMB) (425)
  • cicada 3301 (504)
  • Tor browser (524)
  • asruex Trojan (580)
  • css injection (581)
  • blind sql (injection) (582)
  • banner grabbing (583)

Programming Languages

  • Ruby (81)
  • Java (82)
  • JavaScript (83)
  • HTML (HyperText Markup Language) (84)
  • CSS (Cascading Style Sheets) (85)
  • XML (eXtensible Markup Language) (86)
  • PHP (87)
  • Kotlin (88)
  • C (89)
  • C++ (90)
  • Python (91)
  • Flutter (92)
  • Assembly Language (93)
  • R (94)
  • XOD (95)
  • Lua (96)
  • TypeScript (97)
  • Pascal (programming language) (282)
  • Scala (programming language) (283)
  • Dart (284)
  • cobol (285)
  • CPython (286)
  • AWK (287)
  • Pedump (140)
  • Ipython (505)
  • Cython (506)
  • .net framework (526)
  • Ruby on Rails (527)
  • Kanban (528)
  • Scrum (529)
  • Scrumban (530)
  • metadata (531)
  • namespace (532)
  • Uniform Resource Identifier (URI) (590)
  • Microframework (591)
  • Etcher (592)
  • information technology (593)
  • monolithic application (594)
  • monolithic architecture (595)
  • microservices architecture (596)
  • two pizza rule (597)
  • openxml (598)
  • Macro (computer science) (599)
  • miniservices architecture (600)
  • macro architecture (601)
  • Service oriented architecture (SOA) (602)
  • Kido \ xbmc (603)
  • software suite (604)
  • Data model (605)
  • data structures (606)
  • database model (607)
  • object model (608)
  • structure translation system (609)
  • associative data model (610)
  • ibm associative data model (611)
  • Vendor-Managed Inventory (VMI) (612)
  • pyEMU (613)
  • openGL (614)
  • abstract syntax tree (AST) (615)
  • Application security (616)
  • fortran programming (584)
  • Swift (585)
  • erlang (586)
  • ironpython (587)
  • hoisting js (588)
  • currying js (589)

Software Development & Tools

  • ALM (Application Lifecycle Management) (98)
  • Redis (99)
  • PowerShell (100)
  • Batch File (101)
  • Bash (102)
  • RabbitMQ (103)
  • Vagrant (104)
  • Reverse Engineering (105)
  • Ionic (106)
  • NestJS (107)
  • Yarn (108)
  • Lerna (109)
  • Wine (110)
  • Radare2 (111)
  • JDK (Java Development Kit) (112)
  • Postman (113)
  • ExifTool (114)
  • Beautiful Soup (115)
  • Selenium (116)
  • Figma (117)
  • Virtualenv (118)
  • PyAutoGUI (119)
  • Axure RP (120)
  • Microsoft Foundation Class Library (MFC) (121)
  • R&D (139)
  • Pedump (140)
  • PhantomJS (163)
  • Web crawler (spider bot) (164)
  • Web scraping (165)
  • Core dump (166)
  • WPF (167)
  • system administrator (168)
  • Gantt (288)
  • DIY (289)
  • Simple Object Access Protocol (290)
  • Representational State Transfer (291)
  • Gunicorn (292)
  • Jenkins (293)
  • Axios (294)
  • eel python (295)
  • Software as a service (SaaS) (296)
  • Symbolic link (297)
  • Sdk (298)
  • SciPy (299)
  • Ocr (300)
  • imagemagick (301)
  • textcleaner (302)
  • pytesseract (303)
  • Jira (304)
  • Entity Relationship Diagram (ERD) (305)
  • tkinter (306)
  • Sqlplus (307)
  • Backpropagation (308)
  • Squid server (309)
  • Prometheus (310)
  • terraform (311)
  • infrastructure as code (iac) (312)
  • Ansible (313)
  • Ansible tower (314)
  • agile programming (315)
  • devsecops (316)
  • cd pipeline (317)
  • Computer integrated manufacturing (CIM) (318)
  • Agron (information system) (319)
  • Continuous Integration (CI) (426)
  • Travis CI (427)
  • Jenkinsfile (428)
  • Groovy (429)
  • internet information services (iis) server (430)
  • nginx (431)
  • powercli (432)
  • context switch (433)
  • configuration management (cm) (434)
  • saltstack (435)
  • puppet software (436)
  • chef software (437)
  • YAML (438)
  • Ipython (505)
  • Cython (506)
  • namespace (532)
  • Uniform Resource Identifier (URI) (590)
  • Microframework (591)
  • Etcher (592)
  • information technology (593)
  • monolithic application (594)
  • monolithic architecture (595)
  • microservices architecture (596)
  • two pizza rule (597)
  • openxml (598)
  • Macro (computer science) (599)
  • miniservices architecture (600)
  • macro architecture (601)
  • Service oriented architecture (SOA) (602)
  • Kido \ xbmc (603)
  • software suite (604)
  • Data model (605)
  • data structures (606)
  • database model (607)
  • object model (608)
  • structure translation system (609)
  • associative data model (610)
  • ibm associative data model (611)
  • Vendor-Managed Inventory (VMI) (612)
  • pyEMU (613)
  • openGL (614)
  • abstract syntax tree (AST) (615)
  • Application security (616)

Data Science & AI/ML

  • Computer Vision (122)
  • Data Science (123)
  • Deepfake (124)
  • Q-learning (125)
  • Neural Network (126)
  • Primrose machine learning (169)
  • RNN (Recurrent neural network) (170)
  • LSTM (Long short-term memory) (171)
  • CNN (Convolutional neural network) (172)
  • Overfitting (173)
  • underfitting (174)
  • Sigmoid function (175)
  • Gradient descent (320)
  • Linear regression (321)
  • Natural Language Processing (NLP) (322)
  • Principal Component Analysis (323)
  • t-Distributed Stochastic Neighbor Embedding (324)
  • global average pooling (GAP) (325)
  • deep learning (326)
  • deep dream (deep learning) (327)
  • classification model (439)
  • exploratory data analysis (EDA) (440)
  • latent dirichlet allocation (lda) (441)
  • Depth-first search (DFS) (442)
  • natural language understanding (507)
  • natural language interpretation (508)
  • python pandas (509)
  • sklearn python (510)
  • Sentiment analysis (533)
  • Natural Language Toolkit (534)
  • Synonym ring (535)
  • supervised learining (617)
  • Long short-term memory (LSTM) (618)
  • Gated recurrent units (GRUs) (619)
  • recurrent neural network (RNN) (620)
  • dimensionality reduction (621)
  • batch normalization (622)
  • NeuroEvolution of Augmenting Topologies (NEAT) (623)
  • genetic algorithm (GA) (624)
  • chain rule (625)
  • random forest (626)
  • multinomial naive bayes (627)
  • Multinomial logistic regression (628)
  • anamorphic stretch transform (629)

Web Technologies

  • PWA (Progressive Web Application) (127)
  • SEO (Search Engine Optimization) (128)
  • UX (User Experience) (129)
  • svelte (328)
  • IOT devices (141)
  • Hyper-threading (176)
  • document object module (DOM) (443)
  • HID protocol (536)

Hardware & Architecture

  • ARM architecture (130)
  • IOT devices (141)
  • Hyper-threading (176)
  • tty (234)
  • ACPI (235)
  • Hyper-V (236)
  • Reduced instruction set computer architecture (393)
  • arm processor (394)
  • Complex instruction set computing architecture (395)
  • x86 processor (396)
  • cics architecture (397)
  • cpu bound (398)
  • io bound (399)
  • ia64 (400)
  • compute unified device architecture (cuda) (401)
  • commodity hardware (402)
  • grid computing (403)
  • grid network (404)
  • Open Smart Grid Protocol (OSGP) (405)
  • grok (511)
  • virtual file system (512)
  • filesystem in username (FUSE) (513)
  • B tree (537)
  • Sub volumes (538)
  • Lustre (539)
  • Electromagnetic compatibility (EMC) (630)
  • electromagnetic interference (EMI) (631)
  • Advanced Video Coding (AVC) (632)
  • raspberry pi (633)
  • system on chip (SoC) (634)
  • qualcomm chip (635)
  • connectivity chip (636)
  • wireless connectivity types (637)
  • Over-the-Air programming (OTA) (638)

Cryptography

  • RSA Encryption (131)
  • MD5 (132)
  • ROT13 (133)
  • vernam algorithm (237)
  • Zero-knowledge proof (276)
  • AES (277)
  • ECB and CBC modes (278)
  • Padding oracles (279)
  • Caesar cipher (280)
  • XOR (281)
  • Site recovery menagment (547)
  • orchestrator (639)
  • Docker swarm (640)
  • Application platform as a service (aPaaS) (641)
  • hybrid cloud (642)

Operating Systems & Low Level

  • file allocation table (fat) (329)
  • KVM (330)
  • ESXI (331)
  • vSphere (332)
  • turbonomic (333)
  • Object Storage (361)
  • samba software (362)
  • network file system (NFS) (363)
  • neo4j (364)
  • hbase (365)
  • Inode (366)
  • BTRFS (367)
  • Distributed File System (DFS) (368)
  • Gluster (369)
  • bit rot - Data degradation (370)
  • disk quota (371)
  • geo replication (372)
  • super block (373)
  • glusterFS (374)
  • Ceph (375)
  • CephFS (376)
  • jslinux (444)
  • virtual network computing (vnc) (445)
  • parrot linux (446)
  • Portable Operating System Interface (POSIX) (447)
  • workload (448)
  • vm paging (456)
  • windows paginf file (457)
  • page fault (458)
  • victim page (459)
  • virtual address space (460)
  • swappiness (461)
  • translation looaside buffer (TLB) (462)
  • huge pages (463)
  • copy on write (COW) (464)
  • dirty COW (465)
  • Unix v7 (466)
  • FreeBSD jails (467)
  • Linux vserver (468)
  • Lxc (469)
  • Docker (470)
  • active file system (471)
  • snapshot (storage) (472)
  • hot spare (473)
  • cold spare (474)
  • file descriptor ( windows – handle) (475)
  • context (476)
  • hardware context (477)
  • inter process communication (IPC) (478)
  • zeta file system (ZFS) (479)
  • Reliable Autonomic Distributed Object Store (RADOS) (480)
  • FAT32 system (481)
  • exFAT file system (482)
  • hierarchical system (483)
  • xtreemFS (484)
  • stratis storage (485)
  • SheepdogFS (486)
  • lizardFS (487)
  • system v (488)

Storage

  • DAS storage (334)
  • RAID (335)
  • File system (336)
  • NAS storage (337)
  • SAN storage (338)
  • LUN (SAN) (377)
  • Iscsi (378)
  • Fiber chanel protocol (FCP) (379)
  • fibre channel over ethernet (fcoe) (380)
  • serial advanced technology attachment (sata) (381)
  • Fibre Channel (FC) (382)
  • fabric attached storage (383)
  • Data ONTAP (384)
  • trusted storage pool (TSP) (385)
  • disk quota system (489)
  • data deduplication (490)
  • data compression (491)
  • lun thin provisioning (492)
  • multipath io (493)
  • multipath storage (494)
  • software defined storage (495)
  • Input/Output Operations Per Second (iops) (496)
  • throughput storage (497)
  • software raid (498)
  • firmware raid (499)
  • hardware raid (500)
  • erasure coding (501)
  • lun zoning (502)
  • lun masking (503)
  • Vsan (540)
  • Hybrid raid (578)
  • radosgw (579)

Cloud Computing

  • Cloud computing (339)
  • P2V (340)
  • V2V (341)
  • IAAS (386)
  • PAAS (387)
  • SAAS (388)
  • XAAS (389)
  • Openstack (390)
  • amazon elastic compute cloud (ec2) (391)
  • mws clouding (392)
  • fuse cloud (514)
  • Cloud native (515)
  • BAAS blockchain as a service (516)
  • redhat tripleo (517)
  • red hat openstack kola (518)
  • Openshift (519)
  • Serverless computing (541)
  • Serverless Framework (542)
  • egress (543)
  • ingress (544)
  • AWS Amplify (545)
  • quantum computing as a service (546)
  • Site recovery menagment (547)
  • orchestrator (639)
  • Docker swarm (640)
  • Application platform as a service (aPaaS) (641)
  • hybrid cloud (642)

Big Data

  • Big data (342)
  • 3 V's of big data (343)
  • Big data ecosystem (344)
  • Cloudera (345)
  • Hadoop (346)
  • Mesos (347)
  • Yarn (348)
  • Solr (349)
  • Apache Pig (350)
  • Apache Spark (351)
  • Apache Kafka (352)
  • Apache Storm (353)
  • Apache ZooKeeper (354)
  • HDFS (355)
  • DataNode (HDFS) (356)
  • NameNode (HDFS) (357)
  • MapReduce (358)
  • Apache Hive (359)
  • Big data technologies (360)
  • t-shark (455)
  • software defined network (520)
  • Data integrity (521)
  • Ssh brute force attack (522)
  • web server gateway interface (wsgi) (523)
  • reverse tunneling (525)
  • k8s (643)

Networking

  • VPN (Virtual Private Network) (35)
  • TCP/IP Model (36)
  • OSI Model (37)
  • ARP (Address Resolution Protocol) (38)
  • SMTP (Simple Mail Transfer Protocol) (39)
  • DHCP (Dynamic Host Configuration Protocol) (40)
  • RIP (Routing Information Protocol) (41)
  • SCTP (Stream Control Transmission Protocol) (42)
  • SPF (Sender Policy Framework) (43)
  • DKIM (DomainKeys Identified Mail) (44)
  • SSL (Secure Sockets Layer) (45)
  • TLS (Transport Layer Security) (46)
  • HTTPS (Hypertext Transfer Protocol Secure) (47)
  • FTP (File Transfer Protocol) (48)
  • Spanning Tree Protocol (STP) (49)
  • QUIC (50)
  • DNSSEC (Domain Name System Security Extensions) (51)
  • SCP (Secure Copy Protocol) (52)
  • Port Knocking (53)
  • Network security (148)
  • Cloud security (149)
  • INetSim (177)
  • Shodan (178)
  • censys (179)
  • cloudflare (180)
  • Network Driver Interface Specification (181)
  • Transport Driver Interface (182)
  • voice over internet protocol (voip) (449)
  • sip protocol (450)
  • wireless ad hoc network (WANET) (451)
  • Mobile ad hoc network (MANET) (452)
  • ad hoc (453)
  • Ad-Hoc command (454)
  • t-shark (455)
  • software defined network (520)
  • Data integrity (521)
  • Ssh brute force attack (522)
  • web server gateway interface (wsgi) (523)
  • reverse tunneling (525)
  • jdbc drivers (644)
  • network model (645)
  1. A file system developed for hard drives that originally used 12 or 16 bits for each cluster entry into the file allocation table.
  2. A standardized debugging data format.
  3. A common standard file format for executables, object code, shared libraries, and core dumps.
  4. System software that manages computer hardware, software resources, and provides common services for computer programs.
  5. The action of assigning resources to perform tasks. In computing, it usually refers to the way processes are assigned to the CPU.
  6. A discontinued operating system developed by Silicon Graphics (SGI) to run on SGI workstations and servers.
  7. A system call in Unix-like operating systems to change the space allocated for the data segment of a process.
  8. A framework for device drivers that was introduced with Windows 98 and Windows 2000 to replace the older VxD driver model.
  9. A software toolset from Microsoft that enables the development of device drivers for the Microsoft Windows platform.
  10. A memory management scheme by which a computer stores and retrieves data from secondary storage for use in main memory.
  11. A popular and influential Linux distribution.
  12. A feature of the Linux kernel that partitions kernel resources such that one set of processes sees one set of resources while another set of processes sees a different set.
  13. A feature of the Linux kernel that divides the privileges traditionally associated with superuser into distinct units, which can be independently enabled and disabled.
  14. The first or top-most directory in a hierarchy.
  15. A computer security facility in the Linux kernel that allows a process to make a one-way transition into a "secure" state where it cannot make any system calls except exit(), sigreturn(), read() and write() to already-open file descriptors.
  16. A framework that allows the Linux kernel to support a variety of computer security models without favoring any single one.
  17. An environment variable in Unix-like systems that lists shared libraries to be loaded before any others.
  18. A system call found in Unix and Unix-like operating systems that allows one process to control another, enabling the controller to read and write the other's memory and registers.
  19. A range of techniques used in programming to alter or augment the behavior of an operating system, of applications, or of other software components by intercepting function calls or messages or events passed between software components.
  20. A tracing framework that allows developers to insert tracepoints into their applications.
  21. A type of instrumentation in the Linux kernel that can be used to trace kernel events.
  22. A debugging mechanism for the Linux kernel which can be used to probe any kernel function.
  23. A debugging mechanism that allows probing of user-space applications.
  24. A technology that can run sandboxed programs in an operating system kernel. It is used to safely and efficiently extend the kernel's capabilities without requiring to change kernel source code or load kernel modules.
  25. A journaling file system for Linux, developed as the successor to ext3.
  26. Computer software, firmware or hardware that creates and runs virtual machines.
  27. An object file that contains code to extend the running kernel, or so-called base kernel, of an operating system.
  28. An operating system for x86-based personal computers mostly developed by Microsoft.
  29. An official flavour of the Ubuntu operating system that uses the KDE Plasma Desktop instead of the GNOME desktop environment.
  30. A Linux distribution for computers with x86-64 processors.
  31. A Debian-derived Linux distribution designed for digital forensics and penetration testing.
  32. A popular Linux distribution based on Debian.
  33. Intel's technology for virtualization on the x86 platform.
  34. A message queuing implementation developed by Microsoft and deployed in in its Windows Server operating systems.
  35. A mechanism for creating a secure connection over a public network like the internet.
  36. A conceptual model and set of communications protocols used in the Internet and similar computer networks.
  37. A conceptual framework used to understand network interactions in seven layers.
  38. A communication protocol used for discovering the link layer address, such as a MAC address, associated with a given internet layer address, typically an IPv4 address.
  39. A communication protocol for electronic mail transmission.
  40. A network management protocol used on Internet Protocol (IP) networks for automatically assigning IP addresses and other communication parameters to devices connected to the network.
  41. One of the oldest distance-vector routing protocols which employ the hop count as a routing metric.
  42. A computer network communications protocol that provides a reliable, message-oriented data transfer service.
  43. An email authentication method designed to detect forging sender addresses during the delivery of the email.
  44. An email authentication method designed to detect forged sender addresses in emails.
  45. A standard security technology for establishing an encrypted link between a server and a client.
  46. A cryptographic protocol designed to provide communications security over a computer network.
  47. An extension of the Hypertext Transfer Protocol (HTTP) for secure communication over a computer network.
  48. A standard network protocol used for the transfer of computer files between a client and server on a computer network.
  49. A network protocol that builds a logical loop-free topology for Ethernet networks.
  50. A general-purpose transport layer network protocol initially designed by Google.
  51. A suite of Internet Engineering Task Force (IETF) specifications for securing certain kinds of information provided by the Domain Name System (DNS) as used on Internet Protocol (IP) networks.
  52. A means of securely transferring computer files between a local host and a remote host or between two remote hosts.
  53. A method of externally opening ports on a firewall by generating a connection attempt on a set of pre-specified closed ports.
  54. A security feature in some CPUs that prevents the execution of code in pages belonging to user-space applications while the CPU is in supervisor mode.
  55. Exploiting a bug in a sandbox's implementation that allows a program to bypass its restrictions.
  56. A security feature that can help prevent damage from viruses and other security threats by monitoring your programs to make sure they use system memory safely.
  57. The practice of defending computers, servers, mobile devices, electronic systems, networks, and data from malicious attacks.
  58. A spyware developed by the Israeli cyberarms firm NSO Group that can be covertly installed on mobile phones running most versions of iOS and Android.
  59. An automated software testing technique that involves providing invalid, unexpected, or random data as inputs to a computer program.
  60. A computer security exploit technique that allows an attacker to execute code in the presence of security defenses such as non-executable memory and code signing.
  61. A malware attack that is downloaded and installed on a computer without the user's knowledge.
  62. An intrusion detection system that is capable of monitoring and analyzing the internals of a computing system as well as the network packets on its network interfaces.
  63. The process of discovering vulnerabilities in software and computer systems.
  64. A type of security vulnerability typically found in web applications that enables attackers to inject client-side scripts into web pages viewed by other users.
  65. A code injection technique that might destroy your database.
  66. A type of buffer overflow attack where the attacker overwrites the return address on the stack.
  67. A web application security vulnerability that occurs when a web application redirects a user to a new page without properly validating the target URL.
  68. An attack that forces an end user to execute unwanted actions on a web application in which they're currently authenticated.
  69. A form of denial-of-service attack in which an attacker sends a succession of SYN requests to a target's system in an attempt to consume enough server resources to make the system unresponsive to legitimate traffic.
  70. A security vulnerability where a user is able to perform actions they should not be able to.
  71. A type of denial-of-service (DoS) attack in which an attacker attempts to crash, destabilize, or freeze a targeted computer or service by sending a malformed or oversized ICMP packet.
  72. A type of attack in which the goal is execution of arbitrary commands on the host operating system via a vulnerable application.
  73. A malicious archive file designed to crash or render useless the program or system reading it.
  74. A computer attack strategy, in which the victim is a particular group (organization, industry, or region). In this attack, the attacker guesses or observes which websites the group often uses and infects one or more of them with malware.
  75. A denial-of-service attack wherein a process continually replicates itself to deplete available system resources, slowing down or crashing the system due to resource starvation.
  76. The exploitation of a computer bug that is caused by processing invalid data.
  77. A popular penetration testing framework.
  78. A number of Internet-connected devices, each of which is running one or more bots.
  79. One of the first computer worms distributed via the Internet.
  80. A person who performs a penetration test, which is an authorized simulated cyberattack on a computer system, performed to evaluate the security of the system.
  81. A dynamic, open source programming language with a focus on simplicity and productivity.
  82. A high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible.
  83. A programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS.
  84. The standard markup language for documents designed to be displayed in a a web browser.
  85. A style sheet language used for describing the presentation of a document written in a markup language like HTML.
  86. A markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable.
  87. A general-purpose scripting language especially suited to web development.
  88. A cross-platform, statically typed, general-purpose programming language with type inference.
  89. A general-purpose, procedural computer programming language.
  90. A general-purpose programming language created as an extension of the C programming language, or "C with Classes".
  91. An interpreted, high-level and general-purpose programming language.
  92. An open-source UI software development kit created by Google.
  93. A low-level programming language for a computer, or other programmable device, in which there is a very strong correspondence between the instructions in the language and the architecture's machine code instructions.
  94. A programming language and free software environment for statistical computing and graphics.
  95. A visual programming language for microcontrollers.
  96. A lightweight, high-level, multi-paradigm programming language designed primarily for embedded use in applications.
  97. A programming language developed and maintained by Microsoft. It is a strict syntactical superset of JavaScript and adds optional static typing to the language.
  98. The product lifecycle management (governance, development, and maintenance) of computer programs.
  99. An in-memory data structure store, used as a database, cache and message broker.
  100. A task automation and configuration management framework from Microsoft, consisting of a command-line shell and the associated scripting language.
  101. A script file in DOS, OS/2 and Microsoft Windows.
  102. A Unix shell and command language written by Brian Fox for the GNU Project as a free software replacement for the Bourne shell.
  103. An open-source message-broker software that originally implemented the Advanced Message Queuing Protocol (AMQP).
  104. An open-source software product for building and maintaining portable virtual software development environments.
  105. The processes of extracting knowledge or design information from anything man-made and re-producing it or re-producing anything based on the extracted information.
  106. A complete open-source SDK for hybrid mobile app development.
  107. A framework for building efficient, scalable Node.js server-side applications.
  108. A package manager for your code.
  109. A tool for managing JavaScript projects with multiple packages.
  110. A compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, macOS, & BSD.
  111. A complete framework for reverse-engineering and analyzing binaries.
  112. An implementation of either one of the Java SE, Java EE or Java ME platforms released by Oracle Corporation in the form of a binary product aimed at Java developers on Solaris, Linux, macOS or Windows.
  113. An API platform for developers to design, build, test and iterate their APIs.
  114. A free and open-source software program for reading, writing, and manipulating image, audio, video, and PDF metadata.
  115. A Python package for parsing HTML and XML documents.
  116. A portable framework for testing web applications.
  117. A vector graphics editor and prototyping tool which is primarily web-based.
  118. A tool to create isolated Python environments.
  119. A Python module for programmatically controlling the mouse and keyboard.
  120. A software for creating prototypes and specifications for websites and applications.
  121. A C++ object-oriented library for developing desktop applications for Windows.
  122. An interdisciplinary scientific field that deals with how computers can gain high-level understanding from digital images or videos.
  123. An interdisciplinary field that uses scientific methods, processes, algorithms and systems to extract knowledge and insights from structured and unstructured data.
  124. Synthetic media in which a person in an existing image or video is replaced with someone else's likeness.
  125. A model-free reinforcement learning algorithm to learn a policy telling an agent what action to take under what circumstances.
  126. A series of algorithms that endeavors to recognize underlying relationships in a set of data through a process that mimics the way the human brain operates.
  127. A type of application software delivered through the web, built using common web technologies including HTML, CSS and JavaScript.
  128. The process of improving the quality and quantity of website traffic to a website or a web page from search engines.
  129. A person's emotions and attitudes about using a particular product, system or service.
  130. A family of reduced instruction set computing (RISC) architectures for computer processors, configured for various environments.
  131. A public-key cryptosystem that is widely used for secure data transmission.
  132. A widely used hash function producing a 128-bit hash value.
  133. A simple letter substitution cipher that replaces a letter with the 13th letter after it in the alphabet.
  134. A tool for analyzing, reverse engineering, and extracting firmware images.
  135. A console program to recover files based on their headers, footers, and internal data structures.
  136. A fuzzer development and fuzz testing framework consisting of multiple extensible components.
  137. A sequence of instructions already present in the program's memory that ends with a ret instruction, used in Return-Oriented Programming (ROP) attacks.
  138. Techniques involving the malicious use or manipulation of Loadable Kernel Modules (LKMs) to compromise an operating system's kernel.
  139. Research and Development; creative work undertaken on a systematic basis to increase the stock of knowledge and use it to devise new applications.
  140. A command-line tool to dump information about Win32 executable files.
  141. A network of physical objects embedded with sensors and software to connect and exchange data over the Internet.
  142. A small piece of code that jumps to a hook function, used in software hooking.
  143. A cybersecurity exploit technique that uses return-oriented programming (ROP).
  144. A technique that involves exploiting memory corruption vulnerabilities in the heap data area.
  145. An attack targeting software components, such as libraries and frameworks, with known vulnerabilities.
  146. An attack that uses statistical analysis of encrypted traffic to infer information.
  147. A polymorphic computer virus that infects .COM and .EXE files.
  148. Policies and practices adopted to prevent and monitor unauthorized access, misuse, modification, or denial of a computer network and network-accessible resources.
  149. A set of policies, controls, procedures and technologies that work together to protect cloud-based systems, data, and infrastructure.
  150. The protection of websites from unauthorized access, use, modification, destruction, or disruption.
  151. A slow-rate HTTP POST denial-of-service tool.
  152. A denial-of-service attack tool that creates a large number of HTTP requests with a small payload.
  153. A botnet primarily involved in click fraud.
  154. A DDoS botnet that targets Windows systems.
  155. A botnet that targets Windows systems.
  156. A malware strain used in targeted attacks.
  157. A DDoS botnet.
  158. A botnet primarily used for sending spam.
  159. A botnet consisting of around 200,000 infected computers.
  160. A Trojan horse malware package that runs on versions of Microsoft Windows.
  161. A free and open-source reverse engineering tool developed by the NSA.
  162. A professional who specializes in the analysis of malware samples.
  163. A discontinued headless browser used for automating web page interaction.
  164. An Internet bot that systematically browses the World Wide Web, typically for the purpose of Web indexing.
  165. The process of extracting data from websites.
  166. The recorded state of the working memory of a computer program at a specific time, generally when the program has terminated abnormally.
  167. A free and open-source graphical user interface framework for building desktop applications for Windows.
  168. A person who is responsible for the upkeep, configuration, and reliable operation of computer systems.
  169. A machine learning platform.
  170. A class of artificial neural networks where connections between nodes form a directed graph along a temporal sequence.
  171. An artificial recurrent neural network architecture used in the field of deep learning.
  172. A class of deep neural networks, most commonly applied to analyzing visual imagery.
  173. The production of an analysis that corresponds too closely or exactly to a particular set of data, and may therefore fail to fit additional data or predict future observations reliably.
  174. A model that neither models the training data well nor generalizes to new data.
  175. A mathematical function having a characteristic "S"-shaped curve or sigmoid curve.
  176. A proprietary simultaneous multithreading implementation used by Intel to improve parallelization of computations performed on x86 microprocessors.
  177. A software suite that simulates common internet services in a lab environment.
  178. A search engine for Internet-connected devices.
  179. A search engine for finding hosts and networks on the internet.
  180. A web performance and security company.
  181. An API for network interface controllers in Microsoft Windows.
  182. A kernel-mode network driver interface for Microsoft Windows.
  183. A short-range wireless technology standard.
  184. A technique used to check whether two files are similar without storing the file contents.
  185. A reverse engineering tool for macOS and Linux.
  186. A free and open-source emulator and virtualizer.
  187. The JavaScript engine used in Microsoft Edge.
  188. A cryptographic attack on RSA that uses continued fractions.
  189. A cryptographic attack on RSA with a small public exponent.
  190. A type of denial-of-service attack that floods a network with ICMP echo requests.
  191. A denial-of-service attack that uses a large amount of UDP echo traffic.
  192. A search technique that uses advanced search operators to find specific strings of text within search results.
  193. A type of vulnerability that allows an attacker to include a remote file.
  194. A type of vulnerability that allows an attacker to include a local file.
  195. A technique that involves injecting malicious code into a server's log files.
  196. A firewall that monitors, filters, and blocks HTTP traffic to and from a web application.
  197. Malicious code that is loaded before the operating system starts.
  198. An attack based on information gained from the implementation of a computer system, rather than weaknesses in the implemented algorithm itself.
  199. An attack that targets the Remote Desktop Protocol.
  200. An attack that allows an attacker to gain access to a network from the outside by exploiting a compromised machine within the network.
  201. A cross-site scripting worm designed to propagate across the MySpace social networking site.
  202. The branch of information security that deals specifically with security of websites, web applications and web services.
  203. A security feature that continuously monitors and protects a system from threats.
  204. A program that intercepts and processes I/O requests.
  205. Security Information and Event Management; a set of tools and services that combines security information management (SIM) and security event management (SEM).
  206. A tool used to identify and classify malware samples.
  207. A feature of Microsoft Windows that identifies and controls the execution of software.
  208. A Windows API function used to create or open a file.
  209. The isolation of suspicious files in a restricted environment.
  210. A standard for antivirus test files.
  211. A family of file formats for storing structured data.
  212. A file format used by Microsoft for its Object Linking and Embedding (OLE) technology.
  213. A text editor for Unix-like computing systems or operating environments using a command line interface.
  214. A Unix shell and command language.
  215. A multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency.
  216. A preprocessor scripting language that is interpreted or compiled into Cascading Style Sheets (CSS).
  217. An API for retrieving resources from a server.
  218. A web application bundler.
  219. A toolkit for automating painful or time-consuming tasks in your development workflow.
  220. A feature in the .NET Framework that allows you to get information about loaded assemblies and the types defined within them, such as classes, interfaces, and value types.
  221. A set of principles for software development under which requirements and solutions evolve through the collaborative effort of self-organizing cross-functional teams.
  222. An open-source container orchestration system for automating software deployment, scaling, and management.
  223. A free and open-source machine learning platform designed to enable composing, deploying, and managing portable and scalable machine learning workflows on Kubernetes.
  224. A function that returns a generator object.
  225. A keyword in Python that is used to return from a function without destroying the states of its local variable.
  226. A design pattern in Python that allows a user to add new functionality to an existing object without modifying its structure.
  227. A general-purpose programming language and integrated development environment (IDE).
  228. An integrated development environment for rapid application development of desktop, mobile, web, and console software.
  229. A parallel computing platform and application programming interface (API) model created by Nvidia.
  230. An open standard for parallel programming of heterogeneous systems.
  231. A file format used to store data, such as a spreadsheet or database, in a plain text format.
  232. A family of two high-level, general-purpose, interpreted, dynamic programming languages.
  233. A free and open-source, cross-platform FTP application.
  234. A teletypewriter, the device used for text-based communication.
  235. An open standard for unified power management.
  236. A native hypervisor developed by Microsoft.
  237. A symmetric key encryption technique that cannot be cracked.
  238. A model for identifying and categorizing security threats.
  239. A group of security professionals who act as aggressors in a simulated cyberattack.
  240. A group of security professionals who defend against a simulated cyberattack.
  241. Common Vulnerabilities and Exposures; a list of publicly disclosed computer security flaws.
  242. A Linux distribution that focused on security.
  243. A password recovery tool for Microsoft Windows.
  244. A debugger for 32-bit executables.
  245. A web server scanner.
  246. A graphical tool for testing Web application security.
  247. A password cracking software tool.
  248. A computer networking utility for reading from and writing to network connections.
  249. A free and open source network security tool for man-in-the-middle attacks on a LAN.
  250. A command-line tool for connecting to a remote computer.
  251. A computer monitoring and classroom management software.
  252. A proprietary protocol developed by Microsoft which provides a user with a graphical interface to connect to another computer over a network connection.
  253. A server that is responsible for responding to security authentication requests within a Windows Server domain.
  254. A database that stores Active Directory data, including user objects and password hashes.
  255. A directory service developed by Microsoft for Windows domain networks.
  256. Active Directory Domain Services; a server role in Active Directory that allows admins to manage and store information about resources from a network, as well as application data, in a distributed database.
  257. A cloud computing service created by Microsoft for building, testing, deploying, and managing applications and services through Microsoft-managed data centers.
  258. A process in Microsoft Windows operating systems that is responsible for enforcing the security policy on the system.
  259. A computer-network authentication protocol that works on the basis of tickets to allow nodes communicating over a non-secure network to prove their identity to one another in a secure manner.
  260. A component of a cryptosystem that is responsible for generating and distributing keys.
  261. A clandestine surveillance program under which the United States National Security Agency (NSA) collects internet communications from at least nine major US internet companies.
  262. The methods used by Windows to store user passwords.
  263. The methods used by Linux to store user passwords.
  264. A Dutch certificate authority that was compromised in 2011.
  265. A Trojan horse that was used in a series of attacks against Israeli websites.
  266. A Trojan horse that masquerades as a video codec.
  267. A type of malware that displays a fake warning that the computer is infected with a virus.
  268. A family of antivirus software products from Microsoft.
  269. The use of information technology systems, devices, software, applications, and services without explicit IT department approval.
  270. A network diagnostic tool that determines the path to a destination by recording the route of packets through the network.
  271. An option in the IP protocol that allows the route of a packet to be recorded.
  272. A security enhancement to Linux which allows users and administrators more control over access control.
  273. A type of security that grants or restricts access to objects based on the identity of subjects and/or groups to which they belong.
  274. A type of access control by which the operating system constrains the ability of a subject or initiator to access or generally perform some sort of operation on an object or target.
  275. A cache in the Linux kernel that stores access control decisions.
  276. A method by which one party (the prover) can prove to another party (the verifier) that they know a value x, without conveying any information apart from the fact that they know the value x.
  277. Advanced Encryption Standard; a symmetric block cipher chosen by the U.S. government to protect classified information.
  278. Electronic Codebook (ECB) and Cipher Block Chaining (CBC) are two modes of operation for a block cipher.
  279. A cryptographic oracle which replies to queries about whether a given ciphertext has a valid padding.
  280. A simple substitution cipher.
  281. A bitwise operation that outputs true only when inputs differ.
  282. An influential imperative and procedural programming language.
  283. A general-purpose programming language providing support for functional programming and a strong static type system.
  284. A programming language designed for client development, such as for the web and mobile apps.
  285. A compiled English-like computer programming language designed for business use.
  286. The default, most widely used implementation of the Python programming language.
  287. A domain-specific language designed for text processing and typically used as a data extraction and reporting tool.
  288. A type of bar chart that illustrates a project schedule.
  289. Do It Yourself; the method of building, modifying, or repairing things by oneself without the direct aid of experts or professionals.
  290. A messaging protocol specification for exchanging structured information in the implementation of web services in computer networks.
  291. A software architectural style that defines a set of constraints to be used for creating Web services.
  292. A Python Web Server Gateway Interface (WSGI) HTTP server.
  293. An open source automation server.
  294. A promise-based HTTP client for the browser and node.js.
  295. A library for Python to create GUIs for desktop applications.
  296. A software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted.
  297. A file that contains a reference to another file or directory in the form of an absolute or relative path and that affects pathname resolution.
  298. Software Development Kit; a collection of software development tools in one installable package.
  299. A free and open-source Python library used for scientific computing and technical computing.
  300. Optical Character Recognition; the mechanical or electronic conversion of images of typed, handwritten or printed text into machine-encoded text.
  301. A free and open-source software suite for editing and converting raster image files.
  302. A shell script for cleaning image files of text.
  303. An optical character recognition tool for Python.
  304. A proprietary issue tracking product that allows bug tracking and agile project management.
  305. A diagram that shows the relationships of entity sets stored in a database.
  306. Python's standard GUI framework.
  307. An interactive command-line interface for Oracle Database.
  308. A method for finding the minimum of a function of several variables.
  309. A reverse proxy server and web cache.
  310. An open-source monitoring system.
  311. A configuration management tool.
  312. An approach to managing and provisioning computer data centers through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools.
  313. An open-source software provisioning, configuration management, and application-deployment tool.
  314. A web-based graphical user interface for Ansible.
  315. A methodology that combines software development with information technology operations.
  316. A set of practices that combines software development (Dev) and IT operations (Ops) with a focus on security (Sec).
  317. Continuous Delivery; a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time.
  318. The use of computers to control the entire production process.
  319. A database of Israeli citizens.
  320. An optimization method that's used to train deep learning models.
  321. A statistical process for estimating the relationships among variables.
  322. A subfield of linguistics, computer science, and artificial intelligence concerned with the interactions between computers and human language.
  323. A statistical procedure that is used to reduce the dimensionality of a data set.
  324. A machine learning algorithm for visualization developed by Laurens van der Maaten and Geoffrey Hinton.
  325. A pooling operation designed to replace fully connected layers in classical CNNs.
  326. A subset of machine learning based on artificial neural networks with representation learning.
  327. A computer vision program created by Google engineer Alexander Mordvintsev which uses a convolutional neural network to find and enhance patterns in images via algorithmic pareidolia, thus creating a dream-like psychedelic appearance in the deliberately over-processed images.
  328. A free and open-source front-end component framework or language.
  329. A special type of file system that was popular in early versions of MS-DOS and Windows.
  330. A full virtualization solution for Linux on x86 hardware containing virtualization extensions.
  331. A bare-metal hypervisor.
  332. A bare-metal hypervisor that is installed on a server and allows you to run multiple virtual machines.
  333. An application resource management software.
  334. Digital attached storage; a digital storage system directly attached to a server or workstation, without a network in between.
  335. Redundant Array of Independent Disks; a data storage virtualization technology that combines multiple physical disk drive components into one or more logical units for the purposes of data redundancy, performance improvement, or both.
  336. A data structure that a computer uses to organize and access data on a storage device.
  337. Network-attached storage; a file-level computer data storage server connected to a computer network providing data access to a heterogeneous group of clients.
  338. Storage area network; a computer network which provides access to consolidated, block-level data storage.
  339. The on-demand availability of computer system resources, especially data storage and computing power, without direct active management by the user.
  340. Physical-to-Virtual; the process of migrating a physical server's operating system, applications, and data from a physical server to a virtual machine.
  341. Virtual-to-Virtual; the process of migrating a virtual machine from one virtualization platform to another.
  342. A field that treats ways to analyze, systematically extract information from, or otherwise deal with data sets that are too large or complex to be dealt with by traditional data-processing application software.
  343. Volume, Velocity, and Variety; the three defining properties or dimensions of big data.
  344. The various tools and technologies that are used to store, process, and analyze big data.
  345. A software company that provides a software platform for data engineering, data warehousing, machine learning and analytics that runs in the cloud or on premises.
  346. A collection of open-source software utilities that facilitates using a network of many computers to solve problems involving massive amounts of data and computation.
  347. An open-source cluster manager.
  348. Yet Another Resource Negotiator; a component of Hadoop that is responsible for allocating system resources to the various applications running in a Hadoop cluster and scheduling tasks to be executed on different cluster nodes.
  349. An open-source enterprise-search platform, written in Java.
  350. A high-level platform for creating programs that run on Apache Hadoop.
  351. An open-source, distributed, general-purpose cluster-computing framework.
  352. A distributed event streaming platform.
  353. A distributed stream processing computation framework written predominantly in the Clojure programming language.
  354. A centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
  355. Hadoop Distributed File System; a distributed, scalable, and portable file-system written in Java for the Hadoop framework.
  356. A node in a Hadoop cluster that is responsible for storing data.
  357. A node in a Hadoop cluster that is responsible for managing the file system namespace and regulating access to files by clients.
  358. A programming model and an associated implementation for processing and generating big data sets with a parallel, distributed algorithm on a cluster.
  359. A data warehouse software project built on top of Apache Hadoop for providing data query and analysis.
  360. A set of tools and technologies for working with big data.
  361. A computer data storage that manages data as objects, as opposed to other storage architectures like file systems which manage data as a file hierarchy, and block storage which manages data as blocks within sectors and tracks.
  362. A re-implementation of the SMB networking protocol.
  363. A distributed file system protocol allowing a user on a client computer to access files over a computer network much like local storage is accessed.
  364. A graph database management system.
  365. An open-source non-relational distributed database modeled after Google's Bigtable and written in Java.
  366. A data structure on a Unix-style file system that describes a filesystem object such as a file or a directory.
  367. A copy-on-write filesystem for Linux.
  368. A file system that is distributed over several file servers or locations.
  369. A scalable network filesystem.
  370. A gradual decay of storage media.
  371. A limit that is set by a system administrator that restricts certain aspects of file system usage on modern operating systems.
  372. The replication of data to geographically remote sites.
  373. A record of the characteristics of a file system, including its size, block size, and the location of the inode table.
  374. A scalable network-attached storage file system.
  375. A distributed storage and network file system.
  376. A POSIX-compliant network file system built on top of Ceph.
  377. Logical Unit Number; a number used to identify a logical unit, which is a device addressed by the SCSI protocol or by Storage Area Network protocols that encapsulate SCSI, such as Fibre Channel or iSCSI.
  378. Internet Small Computer Systems Interface; an Internet Protocol-based storage networking standard for linking data storage facilities.
  379. A transport protocol that predominantly transports SCSI commands over Fibre Channel networks.
  380. A computer network technology that allows Fibre Channel to run on top of Ethernet networks.
  381. A computer bus interface that connects host bus adapters to mass storage devices such as hard disk drives, optical drives, and solid-state drives.
  382. A high-speed data transfer protocol providing in-order, lossless delivery of raw block data.
  383. A storage device that is connected to a network.
  384. NetApp's proprietary operating system used in their storage systems.
  385. A pool of storage that is protected from unauthorized access.
  386. Infrastructure as a Service; a cloud computing service model where a vendor provides users access to computing resources such as servers, storage and networking.
  387. Platform as a Service; a cloud computing model where a third-party provider delivers hardware and software tools to users over the internet.
  388. Software as a Service; a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted.
  389. Anything as a Service; a cloud computing model that provides access to a wide range of services over the internet.
  390. An open standard cloud computing platform for all clouds.
  391. A web service that provides secure, resizable compute capacity in the cloud.
  392. A cloud computing service.
  393. A computer instruction set that allows a computer's central processing unit to access data with a smaller number of instructions.
  394. A family of reduced instruction set computing architectures for computer processors, configured for various environments.
  395. A computer architecture where single instructions can execute several low-level operations.
  396. A family of instruction set architectures for computer processors.
  397. A family of IBM mainframe systems.
  398. A condition where the time it takes to complete a computation is determined principally by the speed of the central processor.
  399. A condition where the time it takes to complete a computation is determined principally by the period spent waiting for input/output operations to be completed.
  400. The 64-bit version of the Intel Itanium architecture.
  401. A parallel computing platform and application programming interface model created by Nvidia.
  402. Inexpensive and widely available computer hardware.
  403. A computer network composed of many networked loosely coupled computers that act together to perform large tasks.
  404. A network of computers that work together to perform a task.
  405. An open standard for secure, reliable, and scalable smart grid applications.
  406. A banking Trojan.
  407. A botnet that is primarily involved in sending spam e-mail.
  408. A type of malware that is written in the same macro language as the software it infects.
  409. A programming language and integrated development environment from Microsoft.
  410. A computer security exploit technique that allows an attacker to execute code in the presence of security defenses such as non-executable memory and code signing.
  411. A forensic technique for analyzing the SRUM database in Windows.
  412. A model for information security.
  413. A method of injecting a malicious DLL into a running process.
  414. A suite of tools for Windows that includes a number of utilities for system administration and troubleshooting.
  415. A framework for understanding the steps an attacker takes to compromise a system.
  416. A stealthy threat actor that gains unauthorized access to a computer network and remains undetected for an extended period.
  417. A symmetric-key algorithm for the encryption of digital data.
  418. A symmetric-key block cipher, which applies the DES cipher algorithm three times to each data block.
  419. A symmetric block cipher chosen by the U.S. government to protect classified information.
  420. A device or software application that monitors a network or systems for malicious activity or policy violations.
  421. A network security/threat prevention technology that examines network traffic flows to detect and prevent vulnerability exploits.
  422. A query language for WMI.
  423. A protocol based on the Domain Name System (DNS) packet format that allows both IPv4 and IPv6 hosts to perform name resolution for hosts on the same local link.
  424. A networking protocol that allows applications on different computers to communicate with each other.
  425. A network protocol that provides shared access to files, printers, and serial ports between nodes on a network.
  426. The practice of merging all developer working copies to a shared mainline several times a day.
  427. A hosted continuous integration service used to build and test software projects hosted at GitHub.
  428. A text file that contains the definition of a Jenkins Pipeline.
  429. A programming language for the Java platform.
  430. A web server for the Windows NT family of operating systems.
  431. A web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.
  432. A command-line interface for managing and automating VMware vSphere.
  433. The process of storing the state of a process or thread so that it can be restored and resume execution at a later point.
  434. The process of managing and provisioning computer data centers through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools.
  435. An open source software for configuration management, remote execution, and monitoring.
  436. A software configuration management tool.
  437. A configuration management tool written in Ruby and Erlang.
  438. A human-readable data-serialization language.
  439. A supervised learning model that predicts a class label from a set of input features.
  440. An approach to analyzing data sets to summarize their main characteristics, often with visual methods.
  441. A generative statistical model that allows sets of observations to be explained by unobserved groups that explain why some parts of the data are similar.
  442. An algorithm for traversing or searching tree or graph data structures.
  443. An API for HTML and XML documents.
  444. A PC emulator in JavaScript.
  445. A graphical desktop-sharing system that uses the Remote Frame Buffer protocol to remotely control another computer.
  446. A Linux distribution based on Debian with a focus on security, privacy, and development.
  447. A family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems.
  448. The amount of processing that a computer does at a given time.
  449. A methodology and group of technologies for the delivery of voice communications and multimedia sessions over Internet Protocol networks.
  450. A signaling protocol used for initiating, maintaining, and terminating real-time sessions that include voice, video and messaging applications.
  451. A decentralized type of wireless network.
  452. A self-configuring network of mobile devices connected by wireless links.
  453. For a particular purpose only.
  454. A command that is executed on a remote server.
  455. A network protocol analyzer.
  456. A memory management scheme by which a computer stores and retrieves data from secondary storage for use in main memory.
  457. A file on a hard disk that Windows uses as if it were RAM.
  458. A type of interrupt, raised by hardware when a running program accesses a memory page that is not currently mapped by the memory management unit into the virtual address space of a process.
  459. A page of memory that is selected to be replaced from main memory to make room for a new page.
  460. A memory space that is an abstraction of physical memory.
  461. A Linux kernel parameter that controls the relative weight given to swapping out of runtime memory, as opposed to dropping pages from the system page cache.
  462. A memory cache that is used to reduce the time taken to access a user memory location.
  463. A feature in Linux that allows the kernel to manage large pages of memory.
  464. An optimization strategy used in computer programming.
  465. A security vulnerability in the Linux kernel's implementation of the copy-on-write mechanism.
  466. The seventh edition of the Unix operating system.
  467. A software mechanism in FreeBSD for partitioning a computer system into several independent, smaller systems.
  468. A virtual private server implementation that was created by adding operating-system-level virtualization capabilities to the Linux kernel.
  469. An operating-system-level virtualization method for running multiple isolated Linux systems on a control host using a single Linux kernel.
  470. A set of platform as a service products that use OS-level virtualization to deliver software in packages called containers.
  471. A file system that is currently mounted and accessible.
  472. A set of reference markers for data at a particular point in time.
  473. A spare hard drive that is powered on and connected to the system, ready for use.
  474. A spare hard drive that is powered off and not connected to the system.
  475. An abstract indicator used to access a file or other input/output resource, such as a pipe or network socket.
  476. The set of data that is accessible to a program.
  477. The state of a computer's hardware at a specific point in time.
  478. A mechanism which allows processes to communicate with each other and synchronize their actions.
  479. A combined file system and logical volume manager designed by Sun Microsystems.
  480. The object storage system that underlies Ceph.
  481. A file system developed by Microsoft.
  482. A file system introduced by Microsoft in 2006 and optimized for flash memory such as USB flash drives and SD cards.
  483. A system in which components are organized in a tree-like structure.
  484. An open-source, distributed file system for the cloud.
  485. A local storage management for Linux.
  486. A distributed object storage system for QEMU.
  487. A distributed file system.
  488. One of the first commercial operating systems.
  489. A system for limiting the amount of disk space a user can occupy.
  490. A specialized data compression technique for eliminating duplicate copies of repeating data.
  491. The process of modifying, encoding or converting the bits structure of data in such a way that it consumes less space on disk.
  492. A method for optimizing the efficiency with which the available space is utilized in storage area networks.
  493. A fault-tolerance and performance-enhancement technique that defines more than one physical path between the CPU in a computer system and its mass-storage devices.
  494. A storage system that has multiple paths from the host to the storage device.
  495. A form of storage virtualization that separates the storage hardware from the software that manages it.
  496. A performance measurement used to characterize computer storage devices like hard disk drives, solid state drives, and storage area networks.
  497. The amount of data that can be transferred from a storage device to a host in a given amount of time.
  498. A RAID system that is implemented entirely in software.
  499. A RAID system that is implemented in the system's BIOS.
  500. A RAID system that is implemented in a dedicated hardware controller.
  501. A method of data protection in which data is broken into fragments, expanded and encoded with redundant data pieces and stored across a set of different locations or storage media.
  502. A method of provisioning storage in a storage area network.
  503. A method of making a LUN available to some hosts and unavailable to others.
  504. A nickname given to an organization that on three occasions has posted a set of puzzles to recruit codebreakers from the public.
  505. A command shell for interactive computing in multiple programming languages.
  506. A programming language that is a superset of the Python programming language, designed to give C-like performance with code that is written mostly in Python.
  507. A subtopic of natural language processing in artificial intelligence that deals with machine reading comprehension.
  508. The process of converting a natural language query into a formal representation of its meaning.
  509. A software library written for the Python programming language for data manipulation and analysis.
  510. A free software machine learning library for the Python programming language.
  511. A computer program that is used for parsing and structuring text data.
  512. An abstraction layer on top of a more concrete file system.
  513. A software interface for Unix and Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code.
  514. A cloud-based file system.
  515. An approach to building and running applications that exploits the advantages of the cloud computing delivery model.
  516. A service that allows customers to use cloud-based solutions to build, host and use their own blockchain applications, smart contracts and functions on the blockchain.
  517. A project that aims to provide a production-ready cloud deployment of OpenStack.
  518. A tool for testing OpenStack deployments.
  519. A family of containerization software products from Red Hat.
  520. A networking approach that uses software-based controllers or application programming interfaces to communicate with underlying hardware infrastructure and direct traffic on a network.
  521. The maintenance of, and the assurance of the accuracy and consistency of, data over its entire life-cycle.
  522. A method of guessing a password by systematically trying all possible combinations of letters, numbers, and symbols.
  523. A simple calling convention for web servers to forward requests to web applications or frameworks written in the Python programming language.
  524. A free and open-source web browser that enables anonymous communication.
  525. A technique for creating a connection from a private network to a public network.
  526. A software framework developed by Microsoft that runs primarily on Microsoft Windows.
  527. A server-side web application framework written in Ruby.
  528. A lean method to manage and improve work across human systems.
  529. A lightweight agile framework for managing and sustaining complex projects.
  530. A hybrid of Scrum and Kanban.
  531. Data that provides information about other data.
  532. A set of symbols that are used to identify and refer to objects of various kinds.
  533. The use of natural language processing, text analysis, computational linguistics, and biometrics to systematically identify, extract, quantify, and study affective states and subjective information.
  534. A suite of libraries and programs for symbolic and statistical natural language processing for English written in the Python programming language.
  535. A group of words that are considered to be synonyms.
  536. A protocol for human interface devices.
  537. A self-balancing tree data structure that maintains sorted data and allows searches, sequential access, insertions, and deletions in logarithmic time.
  538. A feature of some file systems that allows a single file system to be partitioned into multiple logical volumes.
  539. A parallel distributed file system, generally used for large-scale cluster computing.
  540. A software-defined storage solution from VMware.
  541. A cloud computing execution model in which the cloud provider runs the server, and dynamically manages the allocation of machine resources.
  542. A free and open-source web framework written using Node.js.
  543. Network traffic that exits a network.
  544. Network traffic that enters a network.
  545. A set of tools and services that can be used together or on their own, to help front-end web and mobile developers build scalable full stack applications, powered by AWS.
  546. A cloud computing service that provides access to quantum computers.
  547. A disaster recovery solution from VMware.
  548. A Linux kernel feature that limits, accounts for, and isolates the resource usage of a collection of processes.
  549. A mount that allows several filesystems to be mounted at one time in a single directory.
  550. A union mount filesystem for Linux.
  551. A boot loader from the GNU Project.
  552. A boot loader for Linux and other Unix-like operating systems.
  553. A special type of boot sector at the very beginning of partitioned computer mass storage devices.
  554. A type of boot sector stored on a hard disk, floppy disk, or similar data storage device that contains machine code to be loaded into random-access memory by a computer system's built-in firmware.
  555. A standard for the layout of partition tables of a physical computer storage device.
  556. A computer program that is responsible for booting a computer.
  557. Red Hat Enterprise Linux; a Linux distribution developed by Red Hat for the commercial market.
  558. A fatal error from which the operating system cannot safely recover.
  559. A mode of operation in Linux where a minimal environment is loaded to allow the user to perform certain administrative tasks.
  560. The different modes of operation of a Linux system.
  561. A file containing the contents of a computer's memory at a specific point in time.
  562. An open-source software utility used on Unix-like computer systems for forwarding log messages in an IP network.
  563. A standard for message logging.
  564. A Linux kernel daemon for logging kernel messages.
  565. A Unix daemon that logs information from various parts of a system.
  566. A process of archiving old log files and creating new ones.
  567. A software routine that hardware invokes in response to an interrupt.
  568. A data structure used by the x86 architecture to implement an interrupt vector table.
  569. A signal sent to a processor to request its attention.
  570. A non-fatal error in the Linux kernel.
  571. The programmatic way in which a computer program requests a service from the kernel of the operating system on which it is executed.
  572. A header file in the C standard library.
  573. A software suite that combines tiny versions of many common UNIX utilities into a single small executable.
  574. A free and open-source Unix-like operating system.
  575. A cryptographic method of storing data at rest in an encrypted form.
  576. A software library that provides an interface for user-space programs to export a virtual filesystem to the Linux kernel.
  577. A computer program or a set of programs that operates or controls a particular type of device that is attached to a computer.
  578. A RAID system that combines multiple RAID levels.
  579. An object storage gateway for Ceph.
  580. A Trojan horse that is used to steal banking information.
  581. An attack technique that involves injecting a Cascading Style Sheets (CSS) code into a web page to change its appearance.
  582. A type of SQL injection attack that asks the database true or false questions and determines the answer based on the applications response.
  583. A technique used to gain information about a remote system.
  584. A general-purpose, compiled imperative programming language that is especially suited to numeric computation and scientific computing.
  585. A general-purpose, multi-paradigm, compiled programming language developed by Apple Inc.
  586. A general-purpose, concurrent, functional programming language, and a garbage-collected runtime system.
  587. An implementation of the Python programming language targeting the .NET Framework.
  588. A JavaScript mechanism where variables and function declarations are moved to the top of their scope before code execution.
  589. A technique of evaluating function with multiple arguments, into sequence of functions with single argument.
  590. A string of characters that unambiguously identifies a particular resource.
  591. A web application framework that is minimal, providing only the essential features needed to build a web application.
  592. A free and open-source utility used for writing image files such as .iso and .img files, as well as zipped folders onto storage media to create live SD cards and USB flash drives.
  593. The use of computers to store, retrieve, transmit, and manipulate data, or information.
  594. An application that is designed as a single, indivisible unit.
  595. A software architecture in which an application is designed as a single, indivisible unit.
  596. A software architecture in which an application is designed as a collection of loosely coupled services.
  597. A rule that states that a team should be small enough to be fed by two pizzas.
  598. A file format for representing electronic documents.
  599. A rule or pattern that specifies how a certain input sequence should be mapped to a replacement output sequence according to a defined procedure.
  600. A software architecture in which an application is designed as a collection of small services.
  601. A software architecture in which an application is designed as a collection of large services.
  602. A software architecture in which an application is designed as a collection of services that communicate with each other.
  603. A free and open-source media player software application.
  604. A collection of computer programs that are packaged together.
  605. An abstract model that organizes elements of data and standardizes how they relate to one another and to the properties of real-world entities.
  606. A data organization, management, and storage format that enables efficient access and modification.
  607. A model that describes the structure of a database.
  608. A model that describes the structure of a system in terms of objects, their attributes, and the relationships between them.
  609. A system that translates from one language to another.
  610. A data model in which the primary data structure is a network of nodes and links.
  611. A data model that is based on the principles of associative memory.
  612. A supply chain arrangement where a supplier of goods is responsible for generating orders and maintaining the inventory level of the consumer.
  613. A Python-based x86 emulator.
  614. A cross-language, cross-platform application programming interface for rendering 2D and 3D vector graphics.
  615. A tree representation of the abstract syntactic structure of source code written in a programming language.
  616. The process of making applications more secure by finding, fixing, and enhancing the security of apps.
  617. A type of machine learning in which an algorithm is trained on a labeled dataset.
  618. An artificial recurrent neural network architecture used in the field of deep learning.
  619. A gating mechanism in recurrent neural networks, introduced in 2014.
  620. A class of artificial neural networks where connections between nodes form a directed graph along a temporal sequence.
  621. The process of reducing the number of random variables under consideration by obtaining a set of principal variables.
  622. A method used to make artificial neural networks faster and more stable through normalization of the input layer by re-centering and re-scaling.
  623. A genetic algorithm for the generation of evolving artificial neural networks.
  624. A metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms.
  625. A method of computing the derivative of a composite function.
  626. An ensemble learning method for classification, regression and other tasks that operates by constructing a multitude of decision trees at training time.
  627. A Naive Bayes classifier for multinomial models.
  628. A classification method that generalizes logistic regression to multiclass problems, i.e. with more than two possible discrete outcomes.
  629. A method of stretching a widescreen image to fit a standard aspect ratio.
  630. The ability of electrical equipment and systems to function acceptably in their electromagnetic environment, by limiting the unintentional generation, propagation and reception of electromagnetic energy.
  631. The disruption of operation of an electronic device when it is in the vicinity of an electromagnetic field in the radio frequency spectrum that is caused by another electronic device.
  632. A video compression standard.
  633. A series of small single-board computers.
  634. An integrated circuit that integrates all components of a computer or other electronic system.
  635. A chip that is used in mobile devices.
  636. A chip that is used for wireless communication.
  637. The different ways that wireless devices can connect to each other.
  638. A method of updating the software on a device wirelessly.
  639. A system that automates the deployment, scaling, and management of containerized applications.
  640. A container orchestration tool for Docker.
  641. A cloud computing model that provides a platform for developers to build and run applications without having to manage the underlying infrastructure.
  642. A cloud computing environment that uses a mix of on-premises, private cloud and third-party, public cloud services with orchestration between the two platforms.
  643. An open-source container-orchestration system for automating computer application deployment, scaling, and management.
  644. A set of standard software drivers that allow Java applications to communicate with databases.
  645. A model that describes the communication between different levels of a network.