From 19d406c2dc55be76836adec5f02d4f701757ddf0 Mon Sep 17 00:00:00 2001 From: Elijah Melton Date: Sun, 12 Jan 2025 18:00:03 -0800 Subject: [PATCH] sync changes: - A idx/file_to_keywords.json - A idx/keyword_to_files.json - M scripts/build.py --- idx/file_to_keywords.json | 1 + idx/keyword_to_files.json | 1 + scripts/build.py | 2 + scripts/keywords.py | 116 ++++++++++++++++++++ site/idx/file_to_keywords.json | 1 + site/idx/keyword_to_files.json | 1 + site/index.html | 12 +- site/scripts/build.py | 2 + site/scripts/keywords.py | 116 ++++++++++++++++++++ site/test.html | 195 +++++++++++++++++++++++++++++++++ test.md | 2 + 11 files changed, 443 insertions(+), 6 deletions(-) create mode 100644 idx/file_to_keywords.json create mode 100644 idx/keyword_to_files.json create mode 100644 scripts/keywords.py create mode 100644 site/idx/file_to_keywords.json create mode 100644 site/idx/keyword_to_files.json create mode 100644 site/scripts/keywords.py create mode 100644 site/test.html create mode 100644 test.md diff --git a/idx/file_to_keywords.json b/idx/file_to_keywords.json new file mode 100644 index 0000000..156fd9b --- /dev/null +++ b/idx/file_to_keywords.json @@ -0,0 +1 @@ +{"requirements.txt": [["markdown", 1.0]], "test.md": [["directory", 0.7531]], "distributed-systems/dynamo-db.md": [["dynamo", 0.4902], ["storage", 0.4294], ["amazon", 0.3672], ["versioning", 0.3414], ["consistency", 0.2888]], "distributed-systems/disconnected-operation.md": [["synchronization", 0.4542], ["cloud", 0.3663], ["reconnection", 0.3533], ["versioning", 0.3343], ["writes", 0.3293]], "distributed-systems/bigtable.md": [["bigtable", 0.5412], ["mapreduce", 0.4804], ["storage", 0.4401], ["database", 0.3543], ["locality", 0.2955]], "distributed-systems/RPC.md": [["compiler", 0.3408], ["executes", 0.3339], ["rpc", 0.3243], ["tcp", 0.3176], ["nfs", 0.3108]], "distributed-systems/paxos-intro.md": [["paxos", 0.535], ["replication", 0.4036], ["protocol", 0.3413], ["proposer", 0.3117], ["algorithm", 0.3044]], "distributed-systems/clocks.md": [["clocks", 0.5469], ["latency", 0.49], ["ntp", 0.4015], ["synchronized", 0.3572], ["scheduling", 0.3458]], "distributed-systems/consistent-global-state.md": [["distributed", 0.477], ["processes", 0.3502], ["communicate", 0.3423], ["observer", 0.3402], ["asynchronous", 0.3233]], "distributed-systems/ordering-events-in-distributed-systems.md": [["ordering", 0.438], ["synchronization", 0.419], ["protocols", 0.3675], ["events", 0.3661], ["transitive", 0.3556]], "distributed-systems/mutual-exclusion.md": [["queue", 0.466], ["locking", 0.3798], ["distributed", 0.361], ["exclusion", 0.3354], ["ordering", 0.2852]], "distributed-systems/managing-critical-state.md": [["availability", 0.4744], ["consistency", 0.4555], ["replication", 0.4459], ["mapreduce", 0.3795], ["acid", 0.2994]], "distributed-systems/non-blocking-two-phase-commit.md": [["locking", 0.4176], ["concurrently", 0.4075], ["rpcs", 0.3862], ["paxos", 0.3762], ["commit", 0.3353]], "distributed-systems/scaling-web-services.md": [["servers", 0.4431], ["scalable", 0.4266], ["tier", 0.424], ["microservices", 0.3577], ["architectures", 0.3545]], "distributed-systems/sharding.md": [["shards", 0.494], ["hashing", 0.4583], ["sharding", 0.4205], ["buckets", 0.3689], ["hotspots", 0.2619]], "distributed-systems/primary-backup.md": [["replication", 0.5389], ["availability", 0.4884], ["consistency", 0.3964], ["vms", 0.3926], ["redis", 0.355]], "distributed-systems/two-phase-commit.md": [["locking", 0.4], ["commit", 0.3831], ["consistency", 0.3553], ["atomicity", 0.3455], ["phase", 0.3169]], "distributed-systems/load-balancing.md": [["paxos", 0.4446], ["queueing", 0.4206], ["utilization", 0.361], ["shards", 0.351], ["scaling", 0.3257]], "distributed-systems/paxos-made-simple.md": [["paxos", 0.4603], ["consensus", 0.3711], ["p1a", 0.3458], ["proposers", 0.3263], ["nodes", 0.3086]], "distributed-systems/google-file-system.md": [["filesystems", 0.5367], ["gfs", 0.5088], ["concurrency", 0.3567], ["workloads", 0.3519], ["writes", 0.3345]], "distributed-systems/distributed-cache-coherence.md": [["caching", 0.5308], ["distributed", 0.3876], ["maintaining", 0.3788], ["leases", 0.367], ["linearizable", 0.2866]], "distributed-systems/paxos-architecture.md": [["paxos", 0.5411], ["leases", 0.3247], ["overhead", 0.2923], ["architectures", 0.2855], ["synchronized", 0.229]], "distributed-systems/consistency.md": [["consistency", 0.5472], ["concurrency", 0.4489], ["serializability", 0.293], ["storage", 0.2776], ["kv", 0.2253]], "ds-backup/RPC.md": [["compiler", 0.3408], ["executes", 0.3339], ["rpc", 0.3243], ["tcp", 0.3176], ["nfs", 0.3108]], "ds-backup/paxos-intro.md": [["paxos", 0.535], ["replication", 0.4036], ["protocol", 0.3413], ["proposer", 0.3117], ["algorithm", 0.3044]], "ds-backup/clocks.md": [["clocks", 0.5469], ["latency", 0.49], ["ntp", 0.4015], ["synchronized", 0.3572], ["scheduling", 0.3458]], "ds-backup/consistent-global-state.md": [["distributed", 0.477], ["processes", 0.3502], ["communicate", 0.3423], ["observer", 0.3402], ["asynchronous", 0.3233]], "ds-backup/ordering-events-in-distributed-systems.md": [["ordering", 0.438], ["synchronization", 0.419], ["protocols", 0.3675], ["events", 0.3661], ["transitive", 0.3556]], "ds-backup/mutual-exclusion.md": [["queue", 0.466], ["locking", 0.3798], ["distributed", 0.361], ["exclusion", 0.3354], ["ordering", 0.2852]], "ds-backup/managing-critical-state.md": [["availability", 0.4744], ["consistency", 0.4555], ["replication", 0.4459], ["mapreduce", 0.3795], ["acid", 0.2994]], "ds-backup/scaling-web-services.md": [["servers", 0.4431], ["scalable", 0.4266], ["tier", 0.424], ["microservices", 0.3577], ["architectures", 0.3545]], "ds-backup/primary-backup.md": [["replication", 0.5389], ["availability", 0.4884], ["consistency", 0.3964], ["vms", 0.3926], ["redis", 0.355]], "ds-backup/paxos-made-simple.md": [["paxos", 0.4603], ["consensus", 0.3711], ["p1a", 0.3458], ["proposers", 0.3263], ["nodes", 0.3086]], "digital-design/karnaugh-maps.md": [["verilog", 0.4887], ["karnaugh", 0.3782], ["adjacencies", 0.3006], ["trigger", 0.2939], ["map", 0.2869]], "digital-design/waveform-diagram.md": [["verilog", 0.4661], ["bits", 0.2895], ["delay", 0.2775], ["waveform", 0.2696], ["bus", 0.2197]], "digital-design/sequential-logic.md": [["registers", 0.4246], ["sequential", 0.3561], ["flops", 0.3489], ["sl", 0.295], ["synchronizing", 0.2687]], "digital-design/combinational-logic.md": [["combinational", 0.4503], ["boolean", 0.4151], ["logic", 0.3916], ["passenger", 0.3791], ["tables", 0.3037]], "digital-design/quartus-workflow.md": [["modelsim", 0.3923], ["runlab", 0.3784], ["testbench", 0.3522], ["verilog", 0.3363], ["waveform", 0.3]], "digital-design/system-verilog.md": [["verilog", 0.6229], ["systemverilog", 0.4332], ["modules", 0.277], ["wires", 0.2574], ["programmatically", 0.2337]], "natural-language-processing/multinomial-logistic-regression.md": [["classify", 0.4559], ["logistic", 0.4155], ["labels", 0.4098], ["multinomial", 0.4039], ["vocabulary", 0.2549]], "systems-research/hints-for-computer-system-design.md": [["cache", 0.4524], ["hardware", 0.2596], ["function", 0.2528], ["delta", 0.1998], ["adaptive", 0.1857]], "systems-research/how-to-read-a-paper.md": [["reading", 0.4828], ["papers", 0.4279], ["pass", 0.2984], ["annotate", 0.2918], ["keshav", 0.2454]], "systems-research/strong-inference.md": [["science64_strong_inference", 0.6038], ["hypotheses", 0.4319], ["effective", 0.3194], ["scientists", 0.2934], ["analyze", 0.2859]], "systems-research/paper-review-template.md": [["template", 0.464], ["tags", 0.3679], ["papers", 0.3226], ["reviewing", 0.3111], ["summary", 0.2804]], "algorithms/BFS.md": [["algorithm", 0.4728], ["graphs", 0.4419], ["breadth", 0.4355], ["level_order_traversal", 0.3579], ["discover", 0.2853]], "algorithms/DAGs.md": [["topological_sort", 0.4968], ["ordering", 0.3782], ["graphs", 0.3637], ["acyclic", 0.3044], ["dags", 0.2995]], "algorithms/DFS.md": [["dfs_recursive", 0.445], ["trees", 0.3899], ["depth", 0.3583], ["traversal", 0.3479], ["edges", 0.2846]], "algorithms/graphs-intro.md": [["adjacency", 0.5552], ["build_adjacency_matrix", 0.5426], ["graphs", 0.5334], ["vertex", 0.5032], ["build_adjacency_list", 0.4955]], "algorithms/divide-and-conquer.md": [["algorithms", 0.4644], ["recursively", 0.3732], ["conquering", 0.3468], ["dividing", 0.3384], ["bisection", 0.2942]], "algorithms/stable-matching.md": [["stable_matchings", 0.5675], ["find_stable_matchings", 0.5646], ["matchings", 0.5556], ["algorithms", 0.3434], ["students", 0.3151]], "algorithms/bipartite-graphs.md": [["bipartite", 0.4921], ["graphs", 0.3732], ["coloring", 0.3309], ["scheduling", 0.3048], ["v_2", 0.2096]], "algorithms/induction.md": [["induction", 0.4424], ["inductive", 0.3609], ["proofs", 0.3013], ["pigeonhole", 0.2988], ["mathematics", 0.2012]], "algorithms/approximation-algorithms.md": [["algorithms", 0.4483], ["approximations", 0.395], ["covers", 0.3137], ["vertex", 0.2774], ["satisfiability", 0.2773]], "algorithms/linear-programming.md": [["hyperplanes", 0.3816], ["optimization", 0.3593], ["polytopes", 0.3324], ["bmatrix", 0.2313], ["lps", 0.2131]], "algorithms/dynamic-programming.md": [["scheduling", 0.5168], ["knapsack_rec", 0.4175], ["algorithms", 0.408], ["max_weighted_interval_subset", 0.363], ["runtime", 0.3328]], "algorithms/connected-components.md": [["breadth", 0.4321], ["adjacency", 0.4223], ["traversal", 0.364], ["algorithms", 0.359], ["connected_components", 0.3547]], "algorithms/runtime.md": [["efficiency", 0.3949], ["asymptotic", 0.381], ["complexity", 0.3608], ["notation", 0.358], ["n_0", 0.2598]], "algorithms/greedy-algorithms.md": [["interval_scheduling", 0.6847], ["scheduling", 0.5847], ["partition_intervals", 0.5152], ["greedy", 0.3418], ["algorithm", 0.3018]], "algorithms/network-flows.md": [["algorithms", 0.4258], ["edges", 0.3879], ["flow", 0.3425], ["routing", 0.3341], ["partitioning", 0.3139]], "algorithms/tree-intro.md": [["trees", 0.4087], ["induction", 0.3125], ["vertex", 0.2939], ["edge", 0.2337], ["acyclic", 0.2218]], "performance-engineering/efficiently-implementing-state-pattern-JVM.md": [["concurrent", 0.4253], ["implementations", 0.3786], ["jvm", 0.284], ["transitions", 0.2832], ["documentstate", 0.227]], "networks/reference.md": [["networks", 0.4549], ["systems", 0.4386], ["textbook", 0.4211], ["systemsapproach", 0.3592], ["html", 0.1629]], "networks/sockets.md": [["sock_stream", 0.5397], ["sock_dgram", 0.5343], ["socket", 0.532], ["ipproto_tcp", 0.5097], ["server_port", 0.4879]], "scripts/simple.md": [["l4", 0.5046], ["content", 0.4861], ["l3", 0.4503], ["l1", 0.4362], ["title", 0.4085]], "machine-learning-for-big-data/intro-mapreduce-spark.md": [["mapreduce", 0.5108], ["dataflow", 0.42], ["cluster", 0.412], ["hdfs", 0.387], ["computing", 0.3716]], "linear-algebra/cheatsheet.md": [["vectors", 0.5098], ["geometric", 0.3263], ["v_3", 0.307], ["interpretation", 0.2628], ["projections", 0.2618]], "linear-algebra/python-cheatsheet.md": [["cross_product", 0.4152], ["numpy", 0.4074], ["v_sum", 0.3619], ["is_orthonormal_matrix", 0.3488], ["l2_norm", 0.3211]], "linear-algebra/elementry-linear-algebra.md": [["bmatrix", 0.3734], ["ax", 0.2736], ["systems", 0.2671], ["b_m", 0.243], ["equations", 0.2267]], "operating-systems/reference.md": [["processes", 0.4715], ["concurrency", 0.4636], ["kernels", 0.4384], ["storage", 0.4218], ["osppv2", 0.2646]], "tmp/pairing-algorithm.md": [["pairing", 0.3901], ["calculate_pairs", 0.3447], ["algorithm", 0.297], ["student_i", 0.2927], ["bmatrix", 0.2884]], "natural-language-processing/reading/information-retrieval.md": [["retrieval", 0.5093], ["indexing", 0.4538], ["searches", 0.4492], ["documents", 0.3901], ["ir", 0.3764]], "signal-conditioning/lecture-notes/lecture-1.md": [["swap", 0.4059], ["device", 0.3304], ["reusable", 0.3164], ["energy", 0.3123], ["cost", 0.2405]], "signal-conditioning/lecture-notes/lecture-5.md": [["circuits", 0.4448], ["resistance", 0.3097], ["algorithm", 0.2522], ["theorem", 0.2447], ["thevenin", 0.2351]], "signal-conditioning/lecture-notes/lecture-4.md": [["dissipation", 0.3455], ["circuit", 0.3226], ["r_2", 0.3053], ["resistance", 0.2859], ["node", 0.2203]], "signal-conditioning/lecture-notes/lecture-3.md": [["resistances", 0.5463], ["resistance", 0.5411], ["resistors", 0.4816], ["dissipated", 0.3126], ["watts", 0.2838]], "signal-conditioning/lecture-notes/lecture-2.md": [["electricity", 0.5323], ["electrons", 0.4643], ["current", 0.4361], ["amperes", 0.4282], ["circuits", 0.3952]], "signal-conditioning/lecture-notes/lecture-6.md": [["inductors", 0.4783], ["capacitance", 0.362], ["ac", 0.2987], ["jq", 0.212], ["imaginary", 0.1793]], "algorithms/patterns/BFS.md": [["breadth", 0.5243], ["algorithm", 0.4236], ["bfs", 0.3999], ["graph", 0.371], ["search", 0.2912]], "algorithms/patterns/sliding-window.md": [["algorithm", 0.3782], ["contiguous", 0.3383], ["subarray", 0.3372], ["sliding", 0.3177], ["window", 0.2965]], "algorithms/problems/graphs-and-trees.md": [["trees", 0.4067], ["induction", 0.3292], ["graphs", 0.3185], ["leaf", 0.2984], ["edge", 0.228]], "algorithms/practice/4.md": [["algorithm", 0.381], ["intervals", 0.3741], ["classrooms", 0.3504], ["allocated", 0.3347], ["disjoint", 0.3143]], "networks/0-foundation/information-theory.md": [["bandwidth", 0.5855], ["transmit", 0.4057], ["wireless", 0.402], ["frequencies", 0.3279], ["shannon", 0.2864]], "networks/0-foundation/3-performance.md": [["bandwidth", 0.6557], ["throughput", 0.5869], ["latency", 0.5295], ["performance", 0.4724], ["bits", 0.3718]], "networks/0-foundation/1-network-components-and-protocols.md": [["network", 0.5043], ["802", 0.4945], ["protocols", 0.434], ["nodes", 0.428], ["interfaces", 0.3331]], "networks/0-foundation/2-physical-layer.md": [["modulator", 0.4846], ["coding", 0.4081], ["decode", 0.4004], ["analog", 0.3573], ["signals", 0.3484]], "networks/3-network/ARP.md": [["arp", 0.5963], ["protocols", 0.3984], ["ip", 0.3206], ["mac", 0.2397], ["bonjour", 0.2246]], "networks/3-network/routing.md": [["routing", 0.4634], ["forwarding", 0.424], ["routers", 0.3861], ["packets", 0.3355], ["updateroutingtable", 0.3045]], "networks/3-network/internetworking.md": [["routing", 0.4111], ["internetworking", 0.3868], ["packets", 0.3646], ["ipv4", 0.3417], ["qos", 0.3031]], "networks/3-network/networking-services.md": [["networking", 0.4879], ["packets", 0.4438], ["bandwidth", 0.3681], ["multiplexing", 0.3483], ["qos", 0.2803]], "networks/3-network/DHCP.md": [["dhcp", 0.6157], ["protocol", 0.4097], ["ip", 0.3915], ["udp", 0.3537], ["configuration", 0.2797]], "networks/3-network/ICMP.md": [["traceroute", 0.6086], ["ping", 0.565], ["icmp", 0.4716], ["routing", 0.4485], ["packets", 0.4112]], "networks/3-network/motivation.md": [["network", 0.3695], ["routing", 0.3683], ["protocol", 0.3584], ["qos", 0.2973], ["scaling", 0.2794]], "networks/3-network/global-internet.md": [["routers", 0.4611], ["bgp", 0.4375], ["ospf", 0.4293], ["infrastructure", 0.4168], ["protocols", 0.3737]], "networks/3-network/BGP.md": [["bgp", 0.6095], ["routes", 0.5347], ["traffic", 0.4734], ["protocol", 0.3916], ["interconnected", 0.3689]], "networks/2-direct-links/framing.md": [["protocol", 0.5077], ["byte", 0.4491], ["ddcmp", 0.3752], ["sdlc", 0.3633], ["frames", 0.3449]], "networks/2-direct-links/retransmission.md": [["delay", 0.4484], ["retransmission", 0.4009], ["arq", 0.4006], ["acknowledged_frames", 0.3765], ["rtt", 0.3685]], "networks/2-direct-links/errors.md": [["hamming_encode", 0.4146], ["bits", 0.3571], ["detect", 0.301], ["redundancy", 0.3005], ["internet_checksum", 0.2947]], "networks/2-direct-links/wireless.md": [["802", 0.5291], ["protocols", 0.3144], ["collisions", 0.2815], ["nodes", 0.2589], ["maca", 0.2535]], "networks/2-direct-links/multiple-access.md": [["multiplexing", 0.5238], ["gsm", 0.4066], ["bandwidth", 0.3953], ["fdm", 0.3668], ["centralized", 0.3613]], "networks/2-direct-links/switching.md": [["bridgemap", 0.4838], ["ethernet", 0.4562], ["bridge_tab_size", 0.4099], ["switches", 0.3524], ["macaddr", 0.268]], "networks/5-application/HTTP.md": [["http", 0.5373], ["server", 0.3515], ["fetching", 0.3419], ["tcp", 0.3418], ["requests", 0.328]], "networks/5-application/overview.md": [["udp", 0.5663], ["tcp", 0.5575], ["applications", 0.4433], ["skype", 0.3614], ["layer", 0.3105]], "networks/5-application/CDNs.md": [["cdns", 0.5281], ["caches", 0.4743], ["proxy", 0.4266], ["dns", 0.4249], ["servers", 0.4195]], "networks/5-application/DNS.md": [["dns", 0.5449], ["nameservers", 0.4568], ["resolver", 0.4033], ["hierarchy", 0.3758], ["namespaces", 0.3511]], "networks/4-transport/TCP.md": [["tcp", 0.5387], ["protocol", 0.4391], ["retransmits", 0.3451], ["timeout", 0.3398], ["rtt_", 0.2979]], "networks/4-transport/UDP.md": [], "networks/4-transport/ACK-clocking.md": [["tcp", 0.5277], ["congestion", 0.4405], ["buffers", 0.3912], ["ack", 0.3731], ["pipelining", 0.3679]], "networks/4-transport/transport-overview.md": [["packets", 0.4972], ["transport", 0.4917], ["bytestreams", 0.4896], ["layer", 0.3937], ["segments", 0.3834]], "networks/4-transport/flow-control.md": [["throughput", 0.4293], ["packets", 0.3929], ["rtt", 0.3429], ["buffer", 0.3187], ["recall", 0.2538]], "networks/1-physical/coding-and-modulation.md": [["coding", 0.4514], ["modulation", 0.3841], ["receiver", 0.3716], ["nrz", 0.3263], ["01001", 0.2614]], "networks/1-physical/media.md": [["interference", 0.4884], ["wireless", 0.4451], ["shielding", 0.4205], ["microwave", 0.3436], ["fiber", 0.2675]], "teaching/modern-java/lambdas-and-streams.md": [["java", 0.3967], ["arraylist", 0.3834], ["lambdas", 0.3518], ["admins", 0.3407], ["boolean", 0.2882]], "teaching/modern-java/collections-and-records.md": [["java", 0.4542], ["collections", 0.4182], ["arrays", 0.383], ["implements", 0.3622], ["immutable", 0.3408]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt": [["pip", 0.624], ["pip3", 0.6106], ["console_scripts", 0.4093], ["cli", 0.2769], ["_internal", 0.2544]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/top_level.txt": [["pip", 1.0]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt": [["pip", 0.547], ["copyright", 0.5025], ["software", 0.3944], ["documentation", 0.3752], ["liable", 0.336]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt": [["abuissa", 0.3252], ["korolev", 0.2923], ["tavares", 0.2697], ["paulus", 0.2528], ["ayers", 0.2204]], "nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt": [["cachecontrol", 0.4394], ["resolvelib", 0.4316], ["msgpack", 0.3929], ["setuptools", 0.3228], ["truststore", 0.321]], "cheatsheets/circuits/components.md": [["oscillations", 0.313], ["dc", 0.2524], ["phase", 0.2245], ["inductance", 0.2118], ["radians", 0.2077]], "cheatsheets/circuits/electricity.md": [["electricity", 0.5212], ["circuits", 0.4328], ["potentials", 0.3581], ["resistance", 0.3482], ["flow", 0.2897]], "cheatsheets/java-spring-boot/reference.md": [["springbootapplication", 0.5599], ["bean", 0.4083], ["enableautoconfiguration", 0.3669], ["restcontroller", 0.363], ["annotations", 0.3298]], "cheatsheets/java-spring-boot/running.md": [["gradlew", 0.4169], ["intellij", 0.3445], ["spring", 0.3265], ["deploying", 0.2303], ["quickstart", 0.2287]], "cheatsheets/algorithms/graphs.md": [["graphs", 0.435], ["breadth", 0.3974], ["tree", 0.3897], ["bipartite", 0.3084], ["v_1", 0.2712]], "cheatsheets/algorithms/divide-and-conquer.md": [["approximation", 0.2907], ["log_b", 0.2738], ["root", 0.2453], ["recurrence", 0.2307], ["bisect", 0.202]], "cheatsheets/algorithms/intervals.md": [["scheduling", 0.485], ["greedy", 0.4102], ["optimal", 0.3426], ["intervals", 0.2924], ["lemma", 0.2222]], "operating-systems/lecture-notes/processes.md": [["processes", 0.4879], ["execution", 0.4321], ["runtime", 0.4099], ["stack", 0.4073], ["memory", 0.385]], "operating-systems/lecture-notes/kernel-abstraction.md": [["privileges", 0.4612], ["hardware", 0.366], ["modes", 0.3648], ["interrupt", 0.3087], ["mips", 0.2672]], "operating-systems/lecture-notes/paging.md": [["fragmentation", 0.4367], ["paging", 0.4291], ["allocated", 0.3976], ["processes", 0.297], ["virtual", 0.2803]], "operating-systems/lecture-notes/windows-objects-handles-refcounts.md": [["handles", 0.3813], ["processes", 0.3698], ["objects", 0.3397], ["references", 0.3281], ["kernel", 0.2762]], "operating-systems/lecture-notes/components.md": [["processes", 0.5255], ["memory", 0.4231], ["processor", 0.4137], ["os", 0.3881], ["multiprogramming", 0.3395]], "operating-systems/lecture-notes/io-systems-secondary-storage.md": [["hardware", 0.4162], ["storage", 0.377], ["ethernet", 0.3738], ["busses", 0.3696], ["hierarchy", 0.2643]], "operating-systems/lecture-notes/page-faults.md": [["pages", 0.4183], ["processes", 0.3845], ["faults", 0.354], ["interrupt", 0.283], ["pte", 0.2688]], "operating-systems/lecture-notes/tlb.md": [["tlb", 0.3583], ["buffer", 0.3449], ["x86", 0.3316], ["tables", 0.3052], ["mapped", 0.2703]], "operating-systems/lecture-notes/file-systems.md": [["writefile", 0.4241], ["flushfilebuffers", 0.4046], ["unix", 0.3887], ["storage", 0.3797], ["getfilesize", 0.3171]], "operating-systems/lecture-notes/windows-rtz.md": [["rtlcopymemory", 0.3911], ["rtlzeromemory", 0.3787], ["bugs", 0.3727], ["registers", 0.3434], ["interrupt", 0.2872]], "operating-systems/lecture-notes/handle-tables.md": [["processes", 0.4576], ["scheduling", 0.4434], ["task_struct", 0.4104], ["cpu", 0.3998], ["queue", 0.3427]], "operating-systems/lecture-notes/windows-memory-management.md": [["pages", 0.4494], ["memory", 0.43], ["paging", 0.4147], ["processes", 0.2811], ["maintained", 0.2578]], "operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md": [["processes", 0.5279], ["_processor", 0.4375], ["executable", 0.4148], ["os", 0.4074], ["kernel_open", 0.3745]], "operating-systems/v1-kernels-and-processes/1-introductions.md": [["virtualization", 0.6254], ["os", 0.4491], ["processes", 0.4253], ["processors", 0.4226], ["interface", 0.3097]], "operating-systems/v1-kernels-and-processes/3-the-programming-interface.md": [["syscalls", 0.5249], ["createprocess", 0.485], ["processes", 0.4723], ["fork", 0.4294], ["_interpreter_", 0.3485]], "operating-systems/section-notes/lab-3-questions.md": [["malloc", 0.4515], ["heap", 0.4212], ["processes", 0.4072], ["allocation", 0.3956], ["shell", 0.3644]], "operating-systems/section-notes/section-1.md": [["gdb", 0.4961], ["debugging", 0.4614], ["pointer", 0.3976], ["printf", 0.3762], ["uninitialized", 0.3354]], "operating-systems/v4-persistent-storage/11-file-systems-overview.md": [["filesystem", 0.5186], ["ntfs", 0.5058], ["files", 0.4059], ["bytes", 0.3387], ["dram", 0.2802]], "operating-systems/v4-persistent-storage/13-files-and-directories.md": [["directories", 0.4725], ["storage", 0.4539], ["ntfs", 0.4176], ["indexing", 0.3202], ["defragmentation", 0.3169]], "operating-systems/v2-concurrency/7-queueing-theory.md": [["queueing", 0.5586], ["scheduling", 0.4168], ["processes", 0.4011], ["utilization", 0.3903], ["arrivals", 0.3719]], "operating-systems/v2-concurrency/7-multiprocessor-scheduling.md": [["multiprocessors", 0.5418], ["hyperthreading", 0.4885], ["mfqs", 0.4449], ["processors", 0.4318], ["queues", 0.376]], "operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md": [["concurrentqueue", 0.5281], ["wait_lock", 0.4809], ["locks", 0.477], ["synchronization", 0.4292], ["atomic_t", 0.3829]], "operating-systems/v2-concurrency/4-concurrency-and-threads.md": [["multithreading", 0.6239], ["concurrency", 0.6021], ["processors", 0.5024], ["thread_yield", 0.4748], ["processes", 0.4329]], "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md": [["scheduling", 0.5887], ["workloads", 0.444], ["uniprocessor", 0.4126], ["multithreading", 0.3868], ["fifo", 0.3196]], "tmp/bench/spec.md": [["dimension_in", 0.3554], ["lisp", 0.3417], ["sweccathon", 0.3331], ["argv_1", 0.3076], ["benchmarking", 0.2516]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md": [["scalable", 0.4239], ["performance", 0.4007], ["databases", 0.3986], ["maintainability", 0.3932], ["processes", 0.3273]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md": [["serialized", 0.4834], ["encodings", 0.445], ["schemas", 0.4345], ["implementations", 0.4005], ["dataflow", 0.3446]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md": [["relational", 0.5655], ["nosql", 0.551], ["database", 0.5108], ["mongodb", 0.4897], ["vertex_id", 0.3281]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md": [["databases", 0.4782], ["storage", 0.4478], ["indexes", 0.4049], ["logs", 0.3333], ["olap", 0.3125]], "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md": [["replication", 0.6379], ["distributed", 0.4633], ["availability", 0.444], ["syncronous", 0.4195], ["consistency", 0.3675]], "designing-data-intensive-applications/part-2-distributed-data/preface.md": [["scalable", 0.4581], ["distributed", 0.4189], ["cpus", 0.3523], ["architecture", 0.3172], ["vm", 0.3086]], "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md": [["mapreduce", 0.5768], ["batch", 0.4316], ["processes", 0.4216], ["pipeline", 0.3603], ["unix", 0.3575]]} \ No newline at end of file diff --git a/idx/keyword_to_files.json b/idx/keyword_to_files.json new file mode 100644 index 0000000..4da147f --- /dev/null +++ b/idx/keyword_to_files.json @@ -0,0 +1 @@ +{"markdown": ["requirements.txt"], "directory": ["test.md"], "dynamo": ["distributed-systems/dynamo-db.md"], "storage": ["distributed-systems/dynamo-db.md", "distributed-systems/bigtable.md", "distributed-systems/consistency.md", "operating-systems/reference.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md", "operating-systems/lecture-notes/file-systems.md", "operating-systems/v4-persistent-storage/13-files-and-directories.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "amazon": ["distributed-systems/dynamo-db.md"], "versioning": ["distributed-systems/dynamo-db.md", "distributed-systems/disconnected-operation.md"], "consistency": ["distributed-systems/dynamo-db.md", "distributed-systems/managing-critical-state.md", "distributed-systems/primary-backup.md", "distributed-systems/two-phase-commit.md", "distributed-systems/consistency.md", "ds-backup/managing-critical-state.md", "ds-backup/primary-backup.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "synchronization": ["distributed-systems/disconnected-operation.md", "distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md", "operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "cloud": ["distributed-systems/disconnected-operation.md"], "reconnection": ["distributed-systems/disconnected-operation.md"], "writes": ["distributed-systems/disconnected-operation.md", "distributed-systems/google-file-system.md"], "bigtable": ["distributed-systems/bigtable.md"], "mapreduce": ["distributed-systems/bigtable.md", "distributed-systems/managing-critical-state.md", "ds-backup/managing-critical-state.md", "machine-learning-for-big-data/intro-mapreduce-spark.md", "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "database": ["distributed-systems/bigtable.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "locality": ["distributed-systems/bigtable.md"], "compiler": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "executes": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "rpc": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "tcp": ["distributed-systems/RPC.md", "ds-backup/RPC.md", "networks/5-application/HTTP.md", "networks/5-application/overview.md", "networks/4-transport/TCP.md", "networks/4-transport/ACK-clocking.md"], "nfs": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "paxos": ["distributed-systems/paxos-intro.md", "distributed-systems/non-blocking-two-phase-commit.md", "distributed-systems/load-balancing.md", "distributed-systems/paxos-made-simple.md", "distributed-systems/paxos-architecture.md", "ds-backup/paxos-intro.md", "ds-backup/paxos-made-simple.md"], "replication": ["distributed-systems/paxos-intro.md", "distributed-systems/managing-critical-state.md", "distributed-systems/primary-backup.md", "ds-backup/paxos-intro.md", "ds-backup/managing-critical-state.md", "ds-backup/primary-backup.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "protocol": ["distributed-systems/paxos-intro.md", "ds-backup/paxos-intro.md", "networks/3-network/DHCP.md", "networks/3-network/motivation.md", "networks/3-network/BGP.md", "networks/2-direct-links/framing.md", "networks/4-transport/TCP.md"], "proposer": ["distributed-systems/paxos-intro.md", "ds-backup/paxos-intro.md"], "algorithm": ["distributed-systems/paxos-intro.md", "ds-backup/paxos-intro.md", "algorithms/BFS.md", "algorithms/greedy-algorithms.md", "tmp/pairing-algorithm.md", "signal-conditioning/lecture-notes/lecture-5.md", "algorithms/patterns/BFS.md", "algorithms/patterns/sliding-window.md", "algorithms/practice/4.md"], "clocks": ["distributed-systems/clocks.md", "ds-backup/clocks.md"], "latency": ["distributed-systems/clocks.md", "ds-backup/clocks.md", "networks/0-foundation/3-performance.md"], "ntp": ["distributed-systems/clocks.md", "ds-backup/clocks.md"], "synchronized": ["distributed-systems/clocks.md", "distributed-systems/paxos-architecture.md", "ds-backup/clocks.md"], "scheduling": ["distributed-systems/clocks.md", "ds-backup/clocks.md", "algorithms/bipartite-graphs.md", "algorithms/dynamic-programming.md", "algorithms/greedy-algorithms.md", "cheatsheets/algorithms/intervals.md", "operating-systems/lecture-notes/handle-tables.md", "operating-systems/v2-concurrency/7-queueing-theory.md", "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "distributed": ["distributed-systems/consistent-global-state.md", "distributed-systems/mutual-exclusion.md", "distributed-systems/distributed-cache-coherence.md", "ds-backup/consistent-global-state.md", "ds-backup/mutual-exclusion.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md", "designing-data-intensive-applications/part-2-distributed-data/preface.md"], "processes": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md", "operating-systems/reference.md", "operating-systems/lecture-notes/processes.md", "operating-systems/lecture-notes/paging.md", "operating-systems/lecture-notes/windows-objects-handles-refcounts.md", "operating-systems/lecture-notes/components.md", "operating-systems/lecture-notes/page-faults.md", "operating-systems/lecture-notes/handle-tables.md", "operating-systems/lecture-notes/windows-memory-management.md", "operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md", "operating-systems/v1-kernels-and-processes/1-introductions.md", "operating-systems/v1-kernels-and-processes/3-the-programming-interface.md", "operating-systems/section-notes/lab-3-questions.md", "operating-systems/v2-concurrency/7-queueing-theory.md", "operating-systems/v2-concurrency/4-concurrency-and-threads.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md", "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "communicate": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md"], "observer": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md"], "asynchronous": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md"], "ordering": ["distributed-systems/ordering-events-in-distributed-systems.md", "distributed-systems/mutual-exclusion.md", "ds-backup/ordering-events-in-distributed-systems.md", "ds-backup/mutual-exclusion.md", "algorithms/DAGs.md"], "protocols": ["distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md", "networks/0-foundation/1-network-components-and-protocols.md", "networks/3-network/ARP.md", "networks/3-network/global-internet.md", "networks/2-direct-links/wireless.md"], "events": ["distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md"], "transitive": ["distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md"], "queue": ["distributed-systems/mutual-exclusion.md", "ds-backup/mutual-exclusion.md", "operating-systems/lecture-notes/handle-tables.md"], "locking": ["distributed-systems/mutual-exclusion.md", "distributed-systems/non-blocking-two-phase-commit.md", "distributed-systems/two-phase-commit.md", "ds-backup/mutual-exclusion.md"], "exclusion": ["distributed-systems/mutual-exclusion.md", "ds-backup/mutual-exclusion.md"], "availability": ["distributed-systems/managing-critical-state.md", "distributed-systems/primary-backup.md", "ds-backup/managing-critical-state.md", "ds-backup/primary-backup.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "acid": ["distributed-systems/managing-critical-state.md", "ds-backup/managing-critical-state.md"], "concurrently": ["distributed-systems/non-blocking-two-phase-commit.md"], "rpcs": ["distributed-systems/non-blocking-two-phase-commit.md"], "commit": ["distributed-systems/non-blocking-two-phase-commit.md", "distributed-systems/two-phase-commit.md"], "servers": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md", "networks/5-application/CDNs.md"], "scalable": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md", "designing-data-intensive-applications/part-2-distributed-data/preface.md"], "tier": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md"], "microservices": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md"], "architectures": ["distributed-systems/scaling-web-services.md", "distributed-systems/paxos-architecture.md", "ds-backup/scaling-web-services.md"], "shards": ["distributed-systems/sharding.md", "distributed-systems/load-balancing.md"], "hashing": ["distributed-systems/sharding.md"], "sharding": ["distributed-systems/sharding.md"], "buckets": ["distributed-systems/sharding.md"], "hotspots": ["distributed-systems/sharding.md"], "vms": ["distributed-systems/primary-backup.md", "ds-backup/primary-backup.md"], "redis": ["distributed-systems/primary-backup.md", "ds-backup/primary-backup.md"], "atomicity": ["distributed-systems/two-phase-commit.md"], "phase": ["distributed-systems/two-phase-commit.md", "cheatsheets/circuits/components.md"], "queueing": ["distributed-systems/load-balancing.md", "operating-systems/v2-concurrency/7-queueing-theory.md"], "utilization": ["distributed-systems/load-balancing.md", "operating-systems/v2-concurrency/7-queueing-theory.md"], "scaling": ["distributed-systems/load-balancing.md", "networks/3-network/motivation.md"], "consensus": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md"], "p1a": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md"], "proposers": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md"], "nodes": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md", "networks/0-foundation/1-network-components-and-protocols.md", "networks/2-direct-links/wireless.md"], "filesystems": ["distributed-systems/google-file-system.md"], "gfs": ["distributed-systems/google-file-system.md"], "concurrency": ["distributed-systems/google-file-system.md", "distributed-systems/consistency.md", "operating-systems/reference.md", "operating-systems/v2-concurrency/4-concurrency-and-threads.md"], "workloads": ["distributed-systems/google-file-system.md", "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "caching": ["distributed-systems/distributed-cache-coherence.md"], "maintaining": ["distributed-systems/distributed-cache-coherence.md"], "leases": ["distributed-systems/distributed-cache-coherence.md", "distributed-systems/paxos-architecture.md"], "linearizable": ["distributed-systems/distributed-cache-coherence.md"], "overhead": ["distributed-systems/paxos-architecture.md"], "serializability": ["distributed-systems/consistency.md"], "kv": ["distributed-systems/consistency.md"], "verilog": ["digital-design/karnaugh-maps.md", "digital-design/waveform-diagram.md", "digital-design/quartus-workflow.md", "digital-design/system-verilog.md"], "karnaugh": ["digital-design/karnaugh-maps.md"], "adjacencies": ["digital-design/karnaugh-maps.md"], "trigger": ["digital-design/karnaugh-maps.md"], "map": ["digital-design/karnaugh-maps.md"], "bits": ["digital-design/waveform-diagram.md", "networks/0-foundation/3-performance.md", "networks/2-direct-links/errors.md"], "delay": ["digital-design/waveform-diagram.md", "networks/2-direct-links/retransmission.md"], "waveform": ["digital-design/waveform-diagram.md", "digital-design/quartus-workflow.md"], "bus": ["digital-design/waveform-diagram.md"], "registers": ["digital-design/sequential-logic.md", "operating-systems/lecture-notes/windows-rtz.md"], "sequential": ["digital-design/sequential-logic.md"], "flops": ["digital-design/sequential-logic.md"], "sl": ["digital-design/sequential-logic.md"], "synchronizing": ["digital-design/sequential-logic.md"], "combinational": ["digital-design/combinational-logic.md"], "boolean": ["digital-design/combinational-logic.md", "teaching/modern-java/lambdas-and-streams.md"], "logic": ["digital-design/combinational-logic.md"], "passenger": ["digital-design/combinational-logic.md"], "tables": ["digital-design/combinational-logic.md", "operating-systems/lecture-notes/tlb.md"], "modelsim": ["digital-design/quartus-workflow.md"], "runlab": ["digital-design/quartus-workflow.md"], "testbench": ["digital-design/quartus-workflow.md"], "systemverilog": ["digital-design/system-verilog.md"], "modules": ["digital-design/system-verilog.md"], "wires": ["digital-design/system-verilog.md"], "programmatically": ["digital-design/system-verilog.md"], "classify": ["natural-language-processing/multinomial-logistic-regression.md"], "logistic": ["natural-language-processing/multinomial-logistic-regression.md"], "labels": ["natural-language-processing/multinomial-logistic-regression.md"], "multinomial": ["natural-language-processing/multinomial-logistic-regression.md"], "vocabulary": ["natural-language-processing/multinomial-logistic-regression.md"], "cache": ["systems-research/hints-for-computer-system-design.md"], "hardware": ["systems-research/hints-for-computer-system-design.md", "operating-systems/lecture-notes/kernel-abstraction.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md"], "function": ["systems-research/hints-for-computer-system-design.md"], "delta": ["systems-research/hints-for-computer-system-design.md"], "adaptive": ["systems-research/hints-for-computer-system-design.md"], "reading": ["systems-research/how-to-read-a-paper.md"], "papers": ["systems-research/how-to-read-a-paper.md", "systems-research/paper-review-template.md"], "pass": ["systems-research/how-to-read-a-paper.md"], "annotate": ["systems-research/how-to-read-a-paper.md"], "keshav": ["systems-research/how-to-read-a-paper.md"], "science64_strong_inference": ["systems-research/strong-inference.md"], "hypotheses": ["systems-research/strong-inference.md"], "effective": ["systems-research/strong-inference.md"], "scientists": ["systems-research/strong-inference.md"], "analyze": ["systems-research/strong-inference.md"], "template": ["systems-research/paper-review-template.md"], "tags": ["systems-research/paper-review-template.md"], "reviewing": ["systems-research/paper-review-template.md"], "summary": ["systems-research/paper-review-template.md"], "graphs": ["algorithms/BFS.md", "algorithms/DAGs.md", "algorithms/graphs-intro.md", "algorithms/bipartite-graphs.md", "algorithms/problems/graphs-and-trees.md", "cheatsheets/algorithms/graphs.md"], "breadth": ["algorithms/BFS.md", "algorithms/connected-components.md", "algorithms/patterns/BFS.md", "cheatsheets/algorithms/graphs.md"], "level_order_traversal": ["algorithms/BFS.md"], "discover": ["algorithms/BFS.md"], "topological_sort": ["algorithms/DAGs.md"], "acyclic": ["algorithms/DAGs.md", "algorithms/tree-intro.md"], "dags": ["algorithms/DAGs.md"], "dfs_recursive": ["algorithms/DFS.md"], "trees": ["algorithms/DFS.md", "algorithms/tree-intro.md", "algorithms/problems/graphs-and-trees.md"], "depth": ["algorithms/DFS.md"], "traversal": ["algorithms/DFS.md", "algorithms/connected-components.md"], "edges": ["algorithms/DFS.md", "algorithms/network-flows.md"], "adjacency": ["algorithms/graphs-intro.md", "algorithms/connected-components.md"], "build_adjacency_matrix": ["algorithms/graphs-intro.md"], "vertex": ["algorithms/graphs-intro.md", "algorithms/approximation-algorithms.md", "algorithms/tree-intro.md"], "build_adjacency_list": ["algorithms/graphs-intro.md"], "algorithms": ["algorithms/divide-and-conquer.md", "algorithms/stable-matching.md", "algorithms/approximation-algorithms.md", "algorithms/dynamic-programming.md", "algorithms/connected-components.md", "algorithms/network-flows.md"], "recursively": ["algorithms/divide-and-conquer.md"], "conquering": ["algorithms/divide-and-conquer.md"], "dividing": ["algorithms/divide-and-conquer.md"], "bisection": ["algorithms/divide-and-conquer.md"], "stable_matchings": ["algorithms/stable-matching.md"], "find_stable_matchings": ["algorithms/stable-matching.md"], "matchings": ["algorithms/stable-matching.md"], "students": ["algorithms/stable-matching.md"], "bipartite": ["algorithms/bipartite-graphs.md", "cheatsheets/algorithms/graphs.md"], "coloring": ["algorithms/bipartite-graphs.md"], "v_2": ["algorithms/bipartite-graphs.md"], "induction": ["algorithms/induction.md", "algorithms/tree-intro.md", "algorithms/problems/graphs-and-trees.md"], "inductive": ["algorithms/induction.md"], "proofs": ["algorithms/induction.md"], "pigeonhole": ["algorithms/induction.md"], "mathematics": ["algorithms/induction.md"], "approximations": ["algorithms/approximation-algorithms.md"], "covers": ["algorithms/approximation-algorithms.md"], "satisfiability": ["algorithms/approximation-algorithms.md"], "hyperplanes": ["algorithms/linear-programming.md"], "optimization": ["algorithms/linear-programming.md"], "polytopes": ["algorithms/linear-programming.md"], "bmatrix": ["algorithms/linear-programming.md", "linear-algebra/elementry-linear-algebra.md", "tmp/pairing-algorithm.md"], "lps": ["algorithms/linear-programming.md"], "knapsack_rec": ["algorithms/dynamic-programming.md"], "max_weighted_interval_subset": ["algorithms/dynamic-programming.md"], "runtime": ["algorithms/dynamic-programming.md", "operating-systems/lecture-notes/processes.md"], "connected_components": ["algorithms/connected-components.md"], "efficiency": ["algorithms/runtime.md"], "asymptotic": ["algorithms/runtime.md"], "complexity": ["algorithms/runtime.md"], "notation": ["algorithms/runtime.md"], "n_0": ["algorithms/runtime.md"], "interval_scheduling": ["algorithms/greedy-algorithms.md"], "partition_intervals": ["algorithms/greedy-algorithms.md"], "greedy": ["algorithms/greedy-algorithms.md", "cheatsheets/algorithms/intervals.md"], "flow": ["algorithms/network-flows.md", "cheatsheets/circuits/electricity.md"], "routing": ["algorithms/network-flows.md", "networks/3-network/routing.md", "networks/3-network/internetworking.md", "networks/3-network/ICMP.md", "networks/3-network/motivation.md"], "partitioning": ["algorithms/network-flows.md"], "edge": ["algorithms/tree-intro.md", "algorithms/problems/graphs-and-trees.md"], "concurrent": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "implementations": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "jvm": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "transitions": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "documentstate": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "networks": ["networks/reference.md"], "systems": ["networks/reference.md", "linear-algebra/elementry-linear-algebra.md"], "textbook": ["networks/reference.md"], "systemsapproach": ["networks/reference.md"], "html": ["networks/reference.md"], "sock_stream": ["networks/sockets.md"], "sock_dgram": ["networks/sockets.md"], "socket": ["networks/sockets.md"], "ipproto_tcp": ["networks/sockets.md"], "server_port": ["networks/sockets.md"], "l4": ["scripts/simple.md"], "content": ["scripts/simple.md"], "l3": ["scripts/simple.md"], "l1": ["scripts/simple.md"], "title": ["scripts/simple.md"], "dataflow": ["machine-learning-for-big-data/intro-mapreduce-spark.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "cluster": ["machine-learning-for-big-data/intro-mapreduce-spark.md"], "hdfs": ["machine-learning-for-big-data/intro-mapreduce-spark.md"], "computing": ["machine-learning-for-big-data/intro-mapreduce-spark.md"], "vectors": ["linear-algebra/cheatsheet.md"], "geometric": ["linear-algebra/cheatsheet.md"], "v_3": ["linear-algebra/cheatsheet.md"], "interpretation": ["linear-algebra/cheatsheet.md"], "projections": ["linear-algebra/cheatsheet.md"], "cross_product": ["linear-algebra/python-cheatsheet.md"], "numpy": ["linear-algebra/python-cheatsheet.md"], "v_sum": ["linear-algebra/python-cheatsheet.md"], "is_orthonormal_matrix": ["linear-algebra/python-cheatsheet.md"], "l2_norm": ["linear-algebra/python-cheatsheet.md"], "ax": ["linear-algebra/elementry-linear-algebra.md"], "b_m": ["linear-algebra/elementry-linear-algebra.md"], "equations": ["linear-algebra/elementry-linear-algebra.md"], "kernels": ["operating-systems/reference.md"], "osppv2": ["operating-systems/reference.md"], "pairing": ["tmp/pairing-algorithm.md"], "calculate_pairs": ["tmp/pairing-algorithm.md"], "student_i": ["tmp/pairing-algorithm.md"], "retrieval": ["natural-language-processing/reading/information-retrieval.md"], "indexing": ["natural-language-processing/reading/information-retrieval.md", "operating-systems/v4-persistent-storage/13-files-and-directories.md"], "searches": ["natural-language-processing/reading/information-retrieval.md"], "documents": ["natural-language-processing/reading/information-retrieval.md"], "ir": ["natural-language-processing/reading/information-retrieval.md"], "swap": ["signal-conditioning/lecture-notes/lecture-1.md"], "device": ["signal-conditioning/lecture-notes/lecture-1.md"], "reusable": ["signal-conditioning/lecture-notes/lecture-1.md"], "energy": ["signal-conditioning/lecture-notes/lecture-1.md"], "cost": ["signal-conditioning/lecture-notes/lecture-1.md"], "circuits": ["signal-conditioning/lecture-notes/lecture-5.md", "signal-conditioning/lecture-notes/lecture-2.md", "cheatsheets/circuits/electricity.md"], "resistance": ["signal-conditioning/lecture-notes/lecture-5.md", "signal-conditioning/lecture-notes/lecture-4.md", "signal-conditioning/lecture-notes/lecture-3.md", "cheatsheets/circuits/electricity.md"], "theorem": ["signal-conditioning/lecture-notes/lecture-5.md"], "thevenin": ["signal-conditioning/lecture-notes/lecture-5.md"], "dissipation": ["signal-conditioning/lecture-notes/lecture-4.md"], "circuit": ["signal-conditioning/lecture-notes/lecture-4.md"], "r_2": ["signal-conditioning/lecture-notes/lecture-4.md"], "node": ["signal-conditioning/lecture-notes/lecture-4.md"], "resistances": ["signal-conditioning/lecture-notes/lecture-3.md"], "resistors": ["signal-conditioning/lecture-notes/lecture-3.md"], "dissipated": ["signal-conditioning/lecture-notes/lecture-3.md"], "watts": ["signal-conditioning/lecture-notes/lecture-3.md"], "electricity": ["signal-conditioning/lecture-notes/lecture-2.md", "cheatsheets/circuits/electricity.md"], "electrons": ["signal-conditioning/lecture-notes/lecture-2.md"], "current": ["signal-conditioning/lecture-notes/lecture-2.md"], "amperes": ["signal-conditioning/lecture-notes/lecture-2.md"], "inductors": ["signal-conditioning/lecture-notes/lecture-6.md"], "capacitance": ["signal-conditioning/lecture-notes/lecture-6.md"], "ac": ["signal-conditioning/lecture-notes/lecture-6.md"], "jq": ["signal-conditioning/lecture-notes/lecture-6.md"], "imaginary": ["signal-conditioning/lecture-notes/lecture-6.md"], "bfs": ["algorithms/patterns/BFS.md"], "graph": ["algorithms/patterns/BFS.md"], "search": ["algorithms/patterns/BFS.md"], "contiguous": ["algorithms/patterns/sliding-window.md"], "subarray": ["algorithms/patterns/sliding-window.md"], "sliding": ["algorithms/patterns/sliding-window.md"], "window": ["algorithms/patterns/sliding-window.md"], "leaf": ["algorithms/problems/graphs-and-trees.md"], "intervals": ["algorithms/practice/4.md", "cheatsheets/algorithms/intervals.md"], "classrooms": ["algorithms/practice/4.md"], "allocated": ["algorithms/practice/4.md", "operating-systems/lecture-notes/paging.md"], "disjoint": ["algorithms/practice/4.md"], "bandwidth": ["networks/0-foundation/information-theory.md", "networks/0-foundation/3-performance.md", "networks/3-network/networking-services.md", "networks/2-direct-links/multiple-access.md"], "transmit": ["networks/0-foundation/information-theory.md"], "wireless": ["networks/0-foundation/information-theory.md", "networks/1-physical/media.md"], "frequencies": ["networks/0-foundation/information-theory.md"], "shannon": ["networks/0-foundation/information-theory.md"], "throughput": ["networks/0-foundation/3-performance.md", "networks/4-transport/flow-control.md"], "performance": ["networks/0-foundation/3-performance.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md"], "network": ["networks/0-foundation/1-network-components-and-protocols.md", "networks/3-network/motivation.md"], "802": ["networks/0-foundation/1-network-components-and-protocols.md", "networks/2-direct-links/wireless.md"], "interfaces": ["networks/0-foundation/1-network-components-and-protocols.md"], "modulator": ["networks/0-foundation/2-physical-layer.md"], "coding": ["networks/0-foundation/2-physical-layer.md", "networks/1-physical/coding-and-modulation.md"], "decode": ["networks/0-foundation/2-physical-layer.md"], "analog": ["networks/0-foundation/2-physical-layer.md"], "signals": ["networks/0-foundation/2-physical-layer.md"], "arp": ["networks/3-network/ARP.md"], "ip": ["networks/3-network/ARP.md", "networks/3-network/DHCP.md"], "mac": ["networks/3-network/ARP.md"], "bonjour": ["networks/3-network/ARP.md"], "forwarding": ["networks/3-network/routing.md"], "routers": ["networks/3-network/routing.md", "networks/3-network/global-internet.md"], "packets": ["networks/3-network/routing.md", "networks/3-network/internetworking.md", "networks/3-network/networking-services.md", "networks/3-network/ICMP.md", "networks/4-transport/transport-overview.md", "networks/4-transport/flow-control.md"], "updateroutingtable": ["networks/3-network/routing.md"], "internetworking": ["networks/3-network/internetworking.md"], "ipv4": ["networks/3-network/internetworking.md"], "qos": ["networks/3-network/internetworking.md", "networks/3-network/networking-services.md", "networks/3-network/motivation.md"], "networking": ["networks/3-network/networking-services.md"], "multiplexing": ["networks/3-network/networking-services.md", "networks/2-direct-links/multiple-access.md"], "dhcp": ["networks/3-network/DHCP.md"], "udp": ["networks/3-network/DHCP.md", "networks/5-application/overview.md"], "configuration": ["networks/3-network/DHCP.md"], "traceroute": ["networks/3-network/ICMP.md"], "ping": ["networks/3-network/ICMP.md"], "icmp": ["networks/3-network/ICMP.md"], "bgp": ["networks/3-network/global-internet.md", "networks/3-network/BGP.md"], "ospf": ["networks/3-network/global-internet.md"], "infrastructure": ["networks/3-network/global-internet.md"], "routes": ["networks/3-network/BGP.md"], "traffic": ["networks/3-network/BGP.md"], "interconnected": ["networks/3-network/BGP.md"], "byte": ["networks/2-direct-links/framing.md"], "ddcmp": ["networks/2-direct-links/framing.md"], "sdlc": ["networks/2-direct-links/framing.md"], "frames": ["networks/2-direct-links/framing.md"], "retransmission": ["networks/2-direct-links/retransmission.md"], "arq": ["networks/2-direct-links/retransmission.md"], "acknowledged_frames": ["networks/2-direct-links/retransmission.md"], "rtt": ["networks/2-direct-links/retransmission.md", "networks/4-transport/flow-control.md"], "hamming_encode": ["networks/2-direct-links/errors.md"], "detect": ["networks/2-direct-links/errors.md"], "redundancy": ["networks/2-direct-links/errors.md"], "internet_checksum": ["networks/2-direct-links/errors.md"], "collisions": ["networks/2-direct-links/wireless.md"], "maca": ["networks/2-direct-links/wireless.md"], "gsm": ["networks/2-direct-links/multiple-access.md"], "fdm": ["networks/2-direct-links/multiple-access.md"], "centralized": ["networks/2-direct-links/multiple-access.md"], "bridgemap": ["networks/2-direct-links/switching.md"], "ethernet": ["networks/2-direct-links/switching.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md"], "bridge_tab_size": ["networks/2-direct-links/switching.md"], "switches": ["networks/2-direct-links/switching.md"], "macaddr": ["networks/2-direct-links/switching.md"], "http": ["networks/5-application/HTTP.md"], "server": ["networks/5-application/HTTP.md"], "fetching": ["networks/5-application/HTTP.md"], "requests": ["networks/5-application/HTTP.md"], "applications": ["networks/5-application/overview.md"], "skype": ["networks/5-application/overview.md"], "layer": ["networks/5-application/overview.md", "networks/4-transport/transport-overview.md"], "cdns": ["networks/5-application/CDNs.md"], "caches": ["networks/5-application/CDNs.md"], "proxy": ["networks/5-application/CDNs.md"], "dns": ["networks/5-application/CDNs.md", "networks/5-application/DNS.md"], "nameservers": ["networks/5-application/DNS.md"], "resolver": ["networks/5-application/DNS.md"], "hierarchy": ["networks/5-application/DNS.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md"], "namespaces": ["networks/5-application/DNS.md"], "retransmits": ["networks/4-transport/TCP.md"], "timeout": ["networks/4-transport/TCP.md"], "rtt_": ["networks/4-transport/TCP.md"], "congestion": ["networks/4-transport/ACK-clocking.md"], "buffers": ["networks/4-transport/ACK-clocking.md"], "ack": ["networks/4-transport/ACK-clocking.md"], "pipelining": ["networks/4-transport/ACK-clocking.md"], "transport": ["networks/4-transport/transport-overview.md"], "bytestreams": ["networks/4-transport/transport-overview.md"], "segments": ["networks/4-transport/transport-overview.md"], "buffer": ["networks/4-transport/flow-control.md", "operating-systems/lecture-notes/tlb.md"], "recall": ["networks/4-transport/flow-control.md"], "modulation": ["networks/1-physical/coding-and-modulation.md"], "receiver": ["networks/1-physical/coding-and-modulation.md"], "nrz": ["networks/1-physical/coding-and-modulation.md"], "01001": ["networks/1-physical/coding-and-modulation.md"], "interference": ["networks/1-physical/media.md"], "shielding": ["networks/1-physical/media.md"], "microwave": ["networks/1-physical/media.md"], "fiber": ["networks/1-physical/media.md"], "java": ["teaching/modern-java/lambdas-and-streams.md", "teaching/modern-java/collections-and-records.md"], "arraylist": ["teaching/modern-java/lambdas-and-streams.md"], "lambdas": ["teaching/modern-java/lambdas-and-streams.md"], "admins": ["teaching/modern-java/lambdas-and-streams.md"], "collections": ["teaching/modern-java/collections-and-records.md"], "arrays": ["teaching/modern-java/collections-and-records.md"], "implements": ["teaching/modern-java/collections-and-records.md"], "immutable": ["teaching/modern-java/collections-and-records.md"], "pip": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt", "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/top_level.txt", "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "pip3": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "console_scripts": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "cli": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "_internal": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "copyright": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "software": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "documentation": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "liable": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "abuissa": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "korolev": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "tavares": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "paulus": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "ayers": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "cachecontrol": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "resolvelib": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "msgpack": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "setuptools": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "truststore": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "oscillations": ["cheatsheets/circuits/components.md"], "dc": ["cheatsheets/circuits/components.md"], "inductance": ["cheatsheets/circuits/components.md"], "radians": ["cheatsheets/circuits/components.md"], "potentials": ["cheatsheets/circuits/electricity.md"], "springbootapplication": ["cheatsheets/java-spring-boot/reference.md"], "bean": ["cheatsheets/java-spring-boot/reference.md"], "enableautoconfiguration": ["cheatsheets/java-spring-boot/reference.md"], "restcontroller": ["cheatsheets/java-spring-boot/reference.md"], "annotations": ["cheatsheets/java-spring-boot/reference.md"], "gradlew": ["cheatsheets/java-spring-boot/running.md"], "intellij": ["cheatsheets/java-spring-boot/running.md"], "spring": ["cheatsheets/java-spring-boot/running.md"], "deploying": ["cheatsheets/java-spring-boot/running.md"], "quickstart": ["cheatsheets/java-spring-boot/running.md"], "tree": ["cheatsheets/algorithms/graphs.md"], "v_1": ["cheatsheets/algorithms/graphs.md"], "approximation": ["cheatsheets/algorithms/divide-and-conquer.md"], "log_b": ["cheatsheets/algorithms/divide-and-conquer.md"], "root": ["cheatsheets/algorithms/divide-and-conquer.md"], "recurrence": ["cheatsheets/algorithms/divide-and-conquer.md"], "bisect": ["cheatsheets/algorithms/divide-and-conquer.md"], "optimal": ["cheatsheets/algorithms/intervals.md"], "lemma": ["cheatsheets/algorithms/intervals.md"], "execution": ["operating-systems/lecture-notes/processes.md"], "stack": ["operating-systems/lecture-notes/processes.md"], "memory": ["operating-systems/lecture-notes/processes.md", "operating-systems/lecture-notes/components.md", "operating-systems/lecture-notes/windows-memory-management.md"], "privileges": ["operating-systems/lecture-notes/kernel-abstraction.md"], "modes": ["operating-systems/lecture-notes/kernel-abstraction.md"], "interrupt": ["operating-systems/lecture-notes/kernel-abstraction.md", "operating-systems/lecture-notes/page-faults.md", "operating-systems/lecture-notes/windows-rtz.md"], "mips": ["operating-systems/lecture-notes/kernel-abstraction.md"], "fragmentation": ["operating-systems/lecture-notes/paging.md"], "paging": ["operating-systems/lecture-notes/paging.md", "operating-systems/lecture-notes/windows-memory-management.md"], "virtual": ["operating-systems/lecture-notes/paging.md"], "handles": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "objects": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "references": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "kernel": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "processor": ["operating-systems/lecture-notes/components.md"], "os": ["operating-systems/lecture-notes/components.md", "operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md", "operating-systems/v1-kernels-and-processes/1-introductions.md"], "multiprogramming": ["operating-systems/lecture-notes/components.md"], "busses": ["operating-systems/lecture-notes/io-systems-secondary-storage.md"], "pages": ["operating-systems/lecture-notes/page-faults.md", "operating-systems/lecture-notes/windows-memory-management.md"], "faults": ["operating-systems/lecture-notes/page-faults.md"], "pte": ["operating-systems/lecture-notes/page-faults.md"], "tlb": ["operating-systems/lecture-notes/tlb.md"], "x86": ["operating-systems/lecture-notes/tlb.md"], "mapped": ["operating-systems/lecture-notes/tlb.md"], "writefile": ["operating-systems/lecture-notes/file-systems.md"], "flushfilebuffers": ["operating-systems/lecture-notes/file-systems.md"], "unix": ["operating-systems/lecture-notes/file-systems.md", "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "getfilesize": ["operating-systems/lecture-notes/file-systems.md"], "rtlcopymemory": ["operating-systems/lecture-notes/windows-rtz.md"], "rtlzeromemory": ["operating-systems/lecture-notes/windows-rtz.md"], "bugs": ["operating-systems/lecture-notes/windows-rtz.md"], "task_struct": ["operating-systems/lecture-notes/handle-tables.md"], "cpu": ["operating-systems/lecture-notes/handle-tables.md"], "maintained": ["operating-systems/lecture-notes/windows-memory-management.md"], "_processor": ["operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md"], "executable": ["operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md"], "kernel_open": ["operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md"], "virtualization": ["operating-systems/v1-kernels-and-processes/1-introductions.md"], "processors": ["operating-systems/v1-kernels-and-processes/1-introductions.md", "operating-systems/v2-concurrency/7-multiprocessor-scheduling.md", "operating-systems/v2-concurrency/4-concurrency-and-threads.md"], "interface": ["operating-systems/v1-kernels-and-processes/1-introductions.md"], "syscalls": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "createprocess": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "fork": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "_interpreter_": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "malloc": ["operating-systems/section-notes/lab-3-questions.md"], "heap": ["operating-systems/section-notes/lab-3-questions.md"], "allocation": ["operating-systems/section-notes/lab-3-questions.md"], "shell": ["operating-systems/section-notes/lab-3-questions.md"], "gdb": ["operating-systems/section-notes/section-1.md"], "debugging": ["operating-systems/section-notes/section-1.md"], "pointer": ["operating-systems/section-notes/section-1.md"], "printf": ["operating-systems/section-notes/section-1.md"], "uninitialized": ["operating-systems/section-notes/section-1.md"], "filesystem": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "ntfs": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md", "operating-systems/v4-persistent-storage/13-files-and-directories.md"], "files": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "bytes": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "dram": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "directories": ["operating-systems/v4-persistent-storage/13-files-and-directories.md"], "defragmentation": ["operating-systems/v4-persistent-storage/13-files-and-directories.md"], "arrivals": ["operating-systems/v2-concurrency/7-queueing-theory.md"], "multiprocessors": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "hyperthreading": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "mfqs": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "queues": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "concurrentqueue": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "wait_lock": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "locks": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "atomic_t": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "multithreading": ["operating-systems/v2-concurrency/4-concurrency-and-threads.md", "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "thread_yield": ["operating-systems/v2-concurrency/4-concurrency-and-threads.md"], "uniprocessor": ["operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "fifo": ["operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "dimension_in": ["tmp/bench/spec.md"], "lisp": ["tmp/bench/spec.md"], "sweccathon": ["tmp/bench/spec.md"], "argv_1": ["tmp/bench/spec.md"], "benchmarking": ["tmp/bench/spec.md"], "databases": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "maintainability": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md"], "serialized": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "encodings": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "schemas": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "relational": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "nosql": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "mongodb": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "vertex_id": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "indexes": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "logs": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "olap": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "syncronous": ["designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "cpus": ["designing-data-intensive-applications/part-2-distributed-data/preface.md"], "architecture": ["designing-data-intensive-applications/part-2-distributed-data/preface.md"], "vm": ["designing-data-intensive-applications/part-2-distributed-data/preface.md"], "batch": ["designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "pipeline": ["designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"]} \ No newline at end of file diff --git a/scripts/build.py b/scripts/build.py index de059e4..31009ab 100644 --- a/scripts/build.py +++ b/scripts/build.py @@ -47,6 +47,8 @@ class SiteGenerator: "__pycache__", "node_modules", ".github", + "nlp.venv", + "site", "venv", ".venv", } diff --git a/scripts/keywords.py b/scripts/keywords.py new file mode 100644 index 0000000..6056dd8 --- /dev/null +++ b/scripts/keywords.py @@ -0,0 +1,116 @@ +import json +import string +import nltk + +from typing import List +from pathlib import Path +from keybert import KeyBERT + +nltk.download("stopwords") + + +class DataReader: + def __init__(self, root_dir: str = "."): + self.root_dir = Path(root_dir) + self.ROOT = root_dir + self.IGNORED_PATHS = { + ".git", + "__pycache__", + "node_modules", + ".github", + "venv", + ".venv", + "nlp.venv", + "site", + "README.md", + } + + self.SUPPORTED_EXTENSIONS = {".md", ".txt"} + + def read_files(self) -> List[Path]: + return self._walk_directory(self.root_dir) + + def _walk_directory(self, directory: Path): + """Walk through directory while respecting ignored paths""" + for item in directory.rglob("*"): + if not any(ignored in item.parts for ignored in self.IGNORED_PATHS): + if item.is_file() and item.suffix in self.SUPPORTED_EXTENSIONS: + yield item + + +class Normalizer: + def __init__(self): + self.lower_case = True + self.remove_punctuation = False + self.remove_stopwords = True + + self.stop_words = set(nltk.corpus.stopwords.words("english")) + + def normalize_doc(self, doc: str) -> str: + if self.lower_case: + doc = doc.lower() + + if self.remove_punctuation: + doc = str.translate(doc, str.maketrans("", "", string.punctuation)) + + if self.remove_stopwords: + doc = " ".join( + [word for word in doc.split() if word not in self.stop_words] + ) + + return doc + + +def get_kw_path_map(files: List[Path], model: KeyBERT) -> dict: + reader = DataReader() + normalizer = Normalizer() + + keyword_map = {} + + for i, file in enumerate(files): + with open(file) as f: + doc = normalizer.normalize_doc(f.read()) + + keywords = model.extract_keywords( + doc, + keyphrase_ngram_range=(1, 1), + stop_words="english", + use_mmr=True, + diversity=0.3, + ) + + keyword_map["/".join(file.parts)] = keywords + + return keyword_map + + +def aggregate(file_to_keywords: dict) -> dict: + keyword_to_files = {} + for file, keywords in file_to_keywords.items(): + for keyword in keywords: + if keyword[0] not in keyword_to_files: + keyword_to_files[keyword[0]] = [] + keyword_to_files[keyword[0]].append(file) + return keyword_to_files + + +def write_idx_to_json_file(idx: dict, output_path: Path): + if output_path.exists(): + output_path.unlink() + + if not output_path.parent.exists(): + output_path.parent.mkdir(parents=True) + + with open(output_path, "w") as f: + json.dump(idx, f) + + +if __name__ == "__main__": + reader = DataReader() + files = reader.read_files() + model = KeyBERT() + + file_to_kw = get_kw_path_map(files, model) + kw_to_file = aggregate(file_to_kw) + write_idx_to_json_file(file_to_kw, Path("idx/file_to_keywords.json")) + write_idx_to_json_file(kw_to_file, Path("idx/keyword_to_files.json")) diff --git a/site/idx/file_to_keywords.json b/site/idx/file_to_keywords.json new file mode 100644 index 0000000..156fd9b --- /dev/null +++ b/site/idx/file_to_keywords.json @@ -0,0 +1 @@ +{"requirements.txt": [["markdown", 1.0]], "test.md": [["directory", 0.7531]], "distributed-systems/dynamo-db.md": [["dynamo", 0.4902], ["storage", 0.4294], ["amazon", 0.3672], ["versioning", 0.3414], ["consistency", 0.2888]], "distributed-systems/disconnected-operation.md": [["synchronization", 0.4542], ["cloud", 0.3663], ["reconnection", 0.3533], ["versioning", 0.3343], ["writes", 0.3293]], "distributed-systems/bigtable.md": [["bigtable", 0.5412], ["mapreduce", 0.4804], ["storage", 0.4401], ["database", 0.3543], ["locality", 0.2955]], "distributed-systems/RPC.md": [["compiler", 0.3408], ["executes", 0.3339], ["rpc", 0.3243], ["tcp", 0.3176], ["nfs", 0.3108]], "distributed-systems/paxos-intro.md": [["paxos", 0.535], ["replication", 0.4036], ["protocol", 0.3413], ["proposer", 0.3117], ["algorithm", 0.3044]], "distributed-systems/clocks.md": [["clocks", 0.5469], ["latency", 0.49], ["ntp", 0.4015], ["synchronized", 0.3572], ["scheduling", 0.3458]], "distributed-systems/consistent-global-state.md": [["distributed", 0.477], ["processes", 0.3502], ["communicate", 0.3423], ["observer", 0.3402], ["asynchronous", 0.3233]], "distributed-systems/ordering-events-in-distributed-systems.md": [["ordering", 0.438], ["synchronization", 0.419], ["protocols", 0.3675], ["events", 0.3661], ["transitive", 0.3556]], "distributed-systems/mutual-exclusion.md": [["queue", 0.466], ["locking", 0.3798], ["distributed", 0.361], ["exclusion", 0.3354], ["ordering", 0.2852]], "distributed-systems/managing-critical-state.md": [["availability", 0.4744], ["consistency", 0.4555], ["replication", 0.4459], ["mapreduce", 0.3795], ["acid", 0.2994]], "distributed-systems/non-blocking-two-phase-commit.md": [["locking", 0.4176], ["concurrently", 0.4075], ["rpcs", 0.3862], ["paxos", 0.3762], ["commit", 0.3353]], "distributed-systems/scaling-web-services.md": [["servers", 0.4431], ["scalable", 0.4266], ["tier", 0.424], ["microservices", 0.3577], ["architectures", 0.3545]], "distributed-systems/sharding.md": [["shards", 0.494], ["hashing", 0.4583], ["sharding", 0.4205], ["buckets", 0.3689], ["hotspots", 0.2619]], "distributed-systems/primary-backup.md": [["replication", 0.5389], ["availability", 0.4884], ["consistency", 0.3964], ["vms", 0.3926], ["redis", 0.355]], "distributed-systems/two-phase-commit.md": [["locking", 0.4], ["commit", 0.3831], ["consistency", 0.3553], ["atomicity", 0.3455], ["phase", 0.3169]], "distributed-systems/load-balancing.md": [["paxos", 0.4446], ["queueing", 0.4206], ["utilization", 0.361], ["shards", 0.351], ["scaling", 0.3257]], "distributed-systems/paxos-made-simple.md": [["paxos", 0.4603], ["consensus", 0.3711], ["p1a", 0.3458], ["proposers", 0.3263], ["nodes", 0.3086]], "distributed-systems/google-file-system.md": [["filesystems", 0.5367], ["gfs", 0.5088], ["concurrency", 0.3567], ["workloads", 0.3519], ["writes", 0.3345]], "distributed-systems/distributed-cache-coherence.md": [["caching", 0.5308], ["distributed", 0.3876], ["maintaining", 0.3788], ["leases", 0.367], ["linearizable", 0.2866]], "distributed-systems/paxos-architecture.md": [["paxos", 0.5411], ["leases", 0.3247], ["overhead", 0.2923], ["architectures", 0.2855], ["synchronized", 0.229]], "distributed-systems/consistency.md": [["consistency", 0.5472], ["concurrency", 0.4489], ["serializability", 0.293], ["storage", 0.2776], ["kv", 0.2253]], "ds-backup/RPC.md": [["compiler", 0.3408], ["executes", 0.3339], ["rpc", 0.3243], ["tcp", 0.3176], ["nfs", 0.3108]], "ds-backup/paxos-intro.md": [["paxos", 0.535], ["replication", 0.4036], ["protocol", 0.3413], ["proposer", 0.3117], ["algorithm", 0.3044]], "ds-backup/clocks.md": [["clocks", 0.5469], ["latency", 0.49], ["ntp", 0.4015], ["synchronized", 0.3572], ["scheduling", 0.3458]], "ds-backup/consistent-global-state.md": [["distributed", 0.477], ["processes", 0.3502], ["communicate", 0.3423], ["observer", 0.3402], ["asynchronous", 0.3233]], "ds-backup/ordering-events-in-distributed-systems.md": [["ordering", 0.438], ["synchronization", 0.419], ["protocols", 0.3675], ["events", 0.3661], ["transitive", 0.3556]], "ds-backup/mutual-exclusion.md": [["queue", 0.466], ["locking", 0.3798], ["distributed", 0.361], ["exclusion", 0.3354], ["ordering", 0.2852]], "ds-backup/managing-critical-state.md": [["availability", 0.4744], ["consistency", 0.4555], ["replication", 0.4459], ["mapreduce", 0.3795], ["acid", 0.2994]], "ds-backup/scaling-web-services.md": [["servers", 0.4431], ["scalable", 0.4266], ["tier", 0.424], ["microservices", 0.3577], ["architectures", 0.3545]], "ds-backup/primary-backup.md": [["replication", 0.5389], ["availability", 0.4884], ["consistency", 0.3964], ["vms", 0.3926], ["redis", 0.355]], "ds-backup/paxos-made-simple.md": [["paxos", 0.4603], ["consensus", 0.3711], ["p1a", 0.3458], ["proposers", 0.3263], ["nodes", 0.3086]], "digital-design/karnaugh-maps.md": [["verilog", 0.4887], ["karnaugh", 0.3782], ["adjacencies", 0.3006], ["trigger", 0.2939], ["map", 0.2869]], "digital-design/waveform-diagram.md": [["verilog", 0.4661], ["bits", 0.2895], ["delay", 0.2775], ["waveform", 0.2696], ["bus", 0.2197]], "digital-design/sequential-logic.md": [["registers", 0.4246], ["sequential", 0.3561], ["flops", 0.3489], ["sl", 0.295], ["synchronizing", 0.2687]], "digital-design/combinational-logic.md": [["combinational", 0.4503], ["boolean", 0.4151], ["logic", 0.3916], ["passenger", 0.3791], ["tables", 0.3037]], "digital-design/quartus-workflow.md": [["modelsim", 0.3923], ["runlab", 0.3784], ["testbench", 0.3522], ["verilog", 0.3363], ["waveform", 0.3]], "digital-design/system-verilog.md": [["verilog", 0.6229], ["systemverilog", 0.4332], ["modules", 0.277], ["wires", 0.2574], ["programmatically", 0.2337]], "natural-language-processing/multinomial-logistic-regression.md": [["classify", 0.4559], ["logistic", 0.4155], ["labels", 0.4098], ["multinomial", 0.4039], ["vocabulary", 0.2549]], "systems-research/hints-for-computer-system-design.md": [["cache", 0.4524], ["hardware", 0.2596], ["function", 0.2528], ["delta", 0.1998], ["adaptive", 0.1857]], "systems-research/how-to-read-a-paper.md": [["reading", 0.4828], ["papers", 0.4279], ["pass", 0.2984], ["annotate", 0.2918], ["keshav", 0.2454]], "systems-research/strong-inference.md": [["science64_strong_inference", 0.6038], ["hypotheses", 0.4319], ["effective", 0.3194], ["scientists", 0.2934], ["analyze", 0.2859]], "systems-research/paper-review-template.md": [["template", 0.464], ["tags", 0.3679], ["papers", 0.3226], ["reviewing", 0.3111], ["summary", 0.2804]], "algorithms/BFS.md": [["algorithm", 0.4728], ["graphs", 0.4419], ["breadth", 0.4355], ["level_order_traversal", 0.3579], ["discover", 0.2853]], "algorithms/DAGs.md": [["topological_sort", 0.4968], ["ordering", 0.3782], ["graphs", 0.3637], ["acyclic", 0.3044], ["dags", 0.2995]], "algorithms/DFS.md": [["dfs_recursive", 0.445], ["trees", 0.3899], ["depth", 0.3583], ["traversal", 0.3479], ["edges", 0.2846]], "algorithms/graphs-intro.md": [["adjacency", 0.5552], ["build_adjacency_matrix", 0.5426], ["graphs", 0.5334], ["vertex", 0.5032], ["build_adjacency_list", 0.4955]], "algorithms/divide-and-conquer.md": [["algorithms", 0.4644], ["recursively", 0.3732], ["conquering", 0.3468], ["dividing", 0.3384], ["bisection", 0.2942]], "algorithms/stable-matching.md": [["stable_matchings", 0.5675], ["find_stable_matchings", 0.5646], ["matchings", 0.5556], ["algorithms", 0.3434], ["students", 0.3151]], "algorithms/bipartite-graphs.md": [["bipartite", 0.4921], ["graphs", 0.3732], ["coloring", 0.3309], ["scheduling", 0.3048], ["v_2", 0.2096]], "algorithms/induction.md": [["induction", 0.4424], ["inductive", 0.3609], ["proofs", 0.3013], ["pigeonhole", 0.2988], ["mathematics", 0.2012]], "algorithms/approximation-algorithms.md": [["algorithms", 0.4483], ["approximations", 0.395], ["covers", 0.3137], ["vertex", 0.2774], ["satisfiability", 0.2773]], "algorithms/linear-programming.md": [["hyperplanes", 0.3816], ["optimization", 0.3593], ["polytopes", 0.3324], ["bmatrix", 0.2313], ["lps", 0.2131]], "algorithms/dynamic-programming.md": [["scheduling", 0.5168], ["knapsack_rec", 0.4175], ["algorithms", 0.408], ["max_weighted_interval_subset", 0.363], ["runtime", 0.3328]], "algorithms/connected-components.md": [["breadth", 0.4321], ["adjacency", 0.4223], ["traversal", 0.364], ["algorithms", 0.359], ["connected_components", 0.3547]], "algorithms/runtime.md": [["efficiency", 0.3949], ["asymptotic", 0.381], ["complexity", 0.3608], ["notation", 0.358], ["n_0", 0.2598]], "algorithms/greedy-algorithms.md": [["interval_scheduling", 0.6847], ["scheduling", 0.5847], ["partition_intervals", 0.5152], ["greedy", 0.3418], ["algorithm", 0.3018]], "algorithms/network-flows.md": [["algorithms", 0.4258], ["edges", 0.3879], ["flow", 0.3425], ["routing", 0.3341], ["partitioning", 0.3139]], "algorithms/tree-intro.md": [["trees", 0.4087], ["induction", 0.3125], ["vertex", 0.2939], ["edge", 0.2337], ["acyclic", 0.2218]], "performance-engineering/efficiently-implementing-state-pattern-JVM.md": [["concurrent", 0.4253], ["implementations", 0.3786], ["jvm", 0.284], ["transitions", 0.2832], ["documentstate", 0.227]], "networks/reference.md": [["networks", 0.4549], ["systems", 0.4386], ["textbook", 0.4211], ["systemsapproach", 0.3592], ["html", 0.1629]], "networks/sockets.md": [["sock_stream", 0.5397], ["sock_dgram", 0.5343], ["socket", 0.532], ["ipproto_tcp", 0.5097], ["server_port", 0.4879]], "scripts/simple.md": [["l4", 0.5046], ["content", 0.4861], ["l3", 0.4503], ["l1", 0.4362], ["title", 0.4085]], "machine-learning-for-big-data/intro-mapreduce-spark.md": [["mapreduce", 0.5108], ["dataflow", 0.42], ["cluster", 0.412], ["hdfs", 0.387], ["computing", 0.3716]], "linear-algebra/cheatsheet.md": [["vectors", 0.5098], ["geometric", 0.3263], ["v_3", 0.307], ["interpretation", 0.2628], ["projections", 0.2618]], "linear-algebra/python-cheatsheet.md": [["cross_product", 0.4152], ["numpy", 0.4074], ["v_sum", 0.3619], ["is_orthonormal_matrix", 0.3488], ["l2_norm", 0.3211]], "linear-algebra/elementry-linear-algebra.md": [["bmatrix", 0.3734], ["ax", 0.2736], ["systems", 0.2671], ["b_m", 0.243], ["equations", 0.2267]], "operating-systems/reference.md": [["processes", 0.4715], ["concurrency", 0.4636], ["kernels", 0.4384], ["storage", 0.4218], ["osppv2", 0.2646]], "tmp/pairing-algorithm.md": [["pairing", 0.3901], ["calculate_pairs", 0.3447], ["algorithm", 0.297], ["student_i", 0.2927], ["bmatrix", 0.2884]], "natural-language-processing/reading/information-retrieval.md": [["retrieval", 0.5093], ["indexing", 0.4538], ["searches", 0.4492], ["documents", 0.3901], ["ir", 0.3764]], "signal-conditioning/lecture-notes/lecture-1.md": [["swap", 0.4059], ["device", 0.3304], ["reusable", 0.3164], ["energy", 0.3123], ["cost", 0.2405]], "signal-conditioning/lecture-notes/lecture-5.md": [["circuits", 0.4448], ["resistance", 0.3097], ["algorithm", 0.2522], ["theorem", 0.2447], ["thevenin", 0.2351]], "signal-conditioning/lecture-notes/lecture-4.md": [["dissipation", 0.3455], ["circuit", 0.3226], ["r_2", 0.3053], ["resistance", 0.2859], ["node", 0.2203]], "signal-conditioning/lecture-notes/lecture-3.md": [["resistances", 0.5463], ["resistance", 0.5411], ["resistors", 0.4816], ["dissipated", 0.3126], ["watts", 0.2838]], "signal-conditioning/lecture-notes/lecture-2.md": [["electricity", 0.5323], ["electrons", 0.4643], ["current", 0.4361], ["amperes", 0.4282], ["circuits", 0.3952]], "signal-conditioning/lecture-notes/lecture-6.md": [["inductors", 0.4783], ["capacitance", 0.362], ["ac", 0.2987], ["jq", 0.212], ["imaginary", 0.1793]], "algorithms/patterns/BFS.md": [["breadth", 0.5243], ["algorithm", 0.4236], ["bfs", 0.3999], ["graph", 0.371], ["search", 0.2912]], "algorithms/patterns/sliding-window.md": [["algorithm", 0.3782], ["contiguous", 0.3383], ["subarray", 0.3372], ["sliding", 0.3177], ["window", 0.2965]], "algorithms/problems/graphs-and-trees.md": [["trees", 0.4067], ["induction", 0.3292], ["graphs", 0.3185], ["leaf", 0.2984], ["edge", 0.228]], "algorithms/practice/4.md": [["algorithm", 0.381], ["intervals", 0.3741], ["classrooms", 0.3504], ["allocated", 0.3347], ["disjoint", 0.3143]], "networks/0-foundation/information-theory.md": [["bandwidth", 0.5855], ["transmit", 0.4057], ["wireless", 0.402], ["frequencies", 0.3279], ["shannon", 0.2864]], "networks/0-foundation/3-performance.md": [["bandwidth", 0.6557], ["throughput", 0.5869], ["latency", 0.5295], ["performance", 0.4724], ["bits", 0.3718]], "networks/0-foundation/1-network-components-and-protocols.md": [["network", 0.5043], ["802", 0.4945], ["protocols", 0.434], ["nodes", 0.428], ["interfaces", 0.3331]], "networks/0-foundation/2-physical-layer.md": [["modulator", 0.4846], ["coding", 0.4081], ["decode", 0.4004], ["analog", 0.3573], ["signals", 0.3484]], "networks/3-network/ARP.md": [["arp", 0.5963], ["protocols", 0.3984], ["ip", 0.3206], ["mac", 0.2397], ["bonjour", 0.2246]], "networks/3-network/routing.md": [["routing", 0.4634], ["forwarding", 0.424], ["routers", 0.3861], ["packets", 0.3355], ["updateroutingtable", 0.3045]], "networks/3-network/internetworking.md": [["routing", 0.4111], ["internetworking", 0.3868], ["packets", 0.3646], ["ipv4", 0.3417], ["qos", 0.3031]], "networks/3-network/networking-services.md": [["networking", 0.4879], ["packets", 0.4438], ["bandwidth", 0.3681], ["multiplexing", 0.3483], ["qos", 0.2803]], "networks/3-network/DHCP.md": [["dhcp", 0.6157], ["protocol", 0.4097], ["ip", 0.3915], ["udp", 0.3537], ["configuration", 0.2797]], "networks/3-network/ICMP.md": [["traceroute", 0.6086], ["ping", 0.565], ["icmp", 0.4716], ["routing", 0.4485], ["packets", 0.4112]], "networks/3-network/motivation.md": [["network", 0.3695], ["routing", 0.3683], ["protocol", 0.3584], ["qos", 0.2973], ["scaling", 0.2794]], "networks/3-network/global-internet.md": [["routers", 0.4611], ["bgp", 0.4375], ["ospf", 0.4293], ["infrastructure", 0.4168], ["protocols", 0.3737]], "networks/3-network/BGP.md": [["bgp", 0.6095], ["routes", 0.5347], ["traffic", 0.4734], ["protocol", 0.3916], ["interconnected", 0.3689]], "networks/2-direct-links/framing.md": [["protocol", 0.5077], ["byte", 0.4491], ["ddcmp", 0.3752], ["sdlc", 0.3633], ["frames", 0.3449]], "networks/2-direct-links/retransmission.md": [["delay", 0.4484], ["retransmission", 0.4009], ["arq", 0.4006], ["acknowledged_frames", 0.3765], ["rtt", 0.3685]], "networks/2-direct-links/errors.md": [["hamming_encode", 0.4146], ["bits", 0.3571], ["detect", 0.301], ["redundancy", 0.3005], ["internet_checksum", 0.2947]], "networks/2-direct-links/wireless.md": [["802", 0.5291], ["protocols", 0.3144], ["collisions", 0.2815], ["nodes", 0.2589], ["maca", 0.2535]], "networks/2-direct-links/multiple-access.md": [["multiplexing", 0.5238], ["gsm", 0.4066], ["bandwidth", 0.3953], ["fdm", 0.3668], ["centralized", 0.3613]], "networks/2-direct-links/switching.md": [["bridgemap", 0.4838], ["ethernet", 0.4562], ["bridge_tab_size", 0.4099], ["switches", 0.3524], ["macaddr", 0.268]], "networks/5-application/HTTP.md": [["http", 0.5373], ["server", 0.3515], ["fetching", 0.3419], ["tcp", 0.3418], ["requests", 0.328]], "networks/5-application/overview.md": [["udp", 0.5663], ["tcp", 0.5575], ["applications", 0.4433], ["skype", 0.3614], ["layer", 0.3105]], "networks/5-application/CDNs.md": [["cdns", 0.5281], ["caches", 0.4743], ["proxy", 0.4266], ["dns", 0.4249], ["servers", 0.4195]], "networks/5-application/DNS.md": [["dns", 0.5449], ["nameservers", 0.4568], ["resolver", 0.4033], ["hierarchy", 0.3758], ["namespaces", 0.3511]], "networks/4-transport/TCP.md": [["tcp", 0.5387], ["protocol", 0.4391], ["retransmits", 0.3451], ["timeout", 0.3398], ["rtt_", 0.2979]], "networks/4-transport/UDP.md": [], "networks/4-transport/ACK-clocking.md": [["tcp", 0.5277], ["congestion", 0.4405], ["buffers", 0.3912], ["ack", 0.3731], ["pipelining", 0.3679]], "networks/4-transport/transport-overview.md": [["packets", 0.4972], ["transport", 0.4917], ["bytestreams", 0.4896], ["layer", 0.3937], ["segments", 0.3834]], "networks/4-transport/flow-control.md": [["throughput", 0.4293], ["packets", 0.3929], ["rtt", 0.3429], ["buffer", 0.3187], ["recall", 0.2538]], "networks/1-physical/coding-and-modulation.md": [["coding", 0.4514], ["modulation", 0.3841], ["receiver", 0.3716], ["nrz", 0.3263], ["01001", 0.2614]], "networks/1-physical/media.md": [["interference", 0.4884], ["wireless", 0.4451], ["shielding", 0.4205], ["microwave", 0.3436], ["fiber", 0.2675]], "teaching/modern-java/lambdas-and-streams.md": [["java", 0.3967], ["arraylist", 0.3834], ["lambdas", 0.3518], ["admins", 0.3407], ["boolean", 0.2882]], "teaching/modern-java/collections-and-records.md": [["java", 0.4542], ["collections", 0.4182], ["arrays", 0.383], ["implements", 0.3622], ["immutable", 0.3408]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt": [["pip", 0.624], ["pip3", 0.6106], ["console_scripts", 0.4093], ["cli", 0.2769], ["_internal", 0.2544]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/top_level.txt": [["pip", 1.0]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt": [["pip", 0.547], ["copyright", 0.5025], ["software", 0.3944], ["documentation", 0.3752], ["liable", 0.336]], "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt": [["abuissa", 0.3252], ["korolev", 0.2923], ["tavares", 0.2697], ["paulus", 0.2528], ["ayers", 0.2204]], "nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt": [["cachecontrol", 0.4394], ["resolvelib", 0.4316], ["msgpack", 0.3929], ["setuptools", 0.3228], ["truststore", 0.321]], "cheatsheets/circuits/components.md": [["oscillations", 0.313], ["dc", 0.2524], ["phase", 0.2245], ["inductance", 0.2118], ["radians", 0.2077]], "cheatsheets/circuits/electricity.md": [["electricity", 0.5212], ["circuits", 0.4328], ["potentials", 0.3581], ["resistance", 0.3482], ["flow", 0.2897]], "cheatsheets/java-spring-boot/reference.md": [["springbootapplication", 0.5599], ["bean", 0.4083], ["enableautoconfiguration", 0.3669], ["restcontroller", 0.363], ["annotations", 0.3298]], "cheatsheets/java-spring-boot/running.md": [["gradlew", 0.4169], ["intellij", 0.3445], ["spring", 0.3265], ["deploying", 0.2303], ["quickstart", 0.2287]], "cheatsheets/algorithms/graphs.md": [["graphs", 0.435], ["breadth", 0.3974], ["tree", 0.3897], ["bipartite", 0.3084], ["v_1", 0.2712]], "cheatsheets/algorithms/divide-and-conquer.md": [["approximation", 0.2907], ["log_b", 0.2738], ["root", 0.2453], ["recurrence", 0.2307], ["bisect", 0.202]], "cheatsheets/algorithms/intervals.md": [["scheduling", 0.485], ["greedy", 0.4102], ["optimal", 0.3426], ["intervals", 0.2924], ["lemma", 0.2222]], "operating-systems/lecture-notes/processes.md": [["processes", 0.4879], ["execution", 0.4321], ["runtime", 0.4099], ["stack", 0.4073], ["memory", 0.385]], "operating-systems/lecture-notes/kernel-abstraction.md": [["privileges", 0.4612], ["hardware", 0.366], ["modes", 0.3648], ["interrupt", 0.3087], ["mips", 0.2672]], "operating-systems/lecture-notes/paging.md": [["fragmentation", 0.4367], ["paging", 0.4291], ["allocated", 0.3976], ["processes", 0.297], ["virtual", 0.2803]], "operating-systems/lecture-notes/windows-objects-handles-refcounts.md": [["handles", 0.3813], ["processes", 0.3698], ["objects", 0.3397], ["references", 0.3281], ["kernel", 0.2762]], "operating-systems/lecture-notes/components.md": [["processes", 0.5255], ["memory", 0.4231], ["processor", 0.4137], ["os", 0.3881], ["multiprogramming", 0.3395]], "operating-systems/lecture-notes/io-systems-secondary-storage.md": [["hardware", 0.4162], ["storage", 0.377], ["ethernet", 0.3738], ["busses", 0.3696], ["hierarchy", 0.2643]], "operating-systems/lecture-notes/page-faults.md": [["pages", 0.4183], ["processes", 0.3845], ["faults", 0.354], ["interrupt", 0.283], ["pte", 0.2688]], "operating-systems/lecture-notes/tlb.md": [["tlb", 0.3583], ["buffer", 0.3449], ["x86", 0.3316], ["tables", 0.3052], ["mapped", 0.2703]], "operating-systems/lecture-notes/file-systems.md": [["writefile", 0.4241], ["flushfilebuffers", 0.4046], ["unix", 0.3887], ["storage", 0.3797], ["getfilesize", 0.3171]], "operating-systems/lecture-notes/windows-rtz.md": [["rtlcopymemory", 0.3911], ["rtlzeromemory", 0.3787], ["bugs", 0.3727], ["registers", 0.3434], ["interrupt", 0.2872]], "operating-systems/lecture-notes/handle-tables.md": [["processes", 0.4576], ["scheduling", 0.4434], ["task_struct", 0.4104], ["cpu", 0.3998], ["queue", 0.3427]], "operating-systems/lecture-notes/windows-memory-management.md": [["pages", 0.4494], ["memory", 0.43], ["paging", 0.4147], ["processes", 0.2811], ["maintained", 0.2578]], "operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md": [["processes", 0.5279], ["_processor", 0.4375], ["executable", 0.4148], ["os", 0.4074], ["kernel_open", 0.3745]], "operating-systems/v1-kernels-and-processes/1-introductions.md": [["virtualization", 0.6254], ["os", 0.4491], ["processes", 0.4253], ["processors", 0.4226], ["interface", 0.3097]], "operating-systems/v1-kernels-and-processes/3-the-programming-interface.md": [["syscalls", 0.5249], ["createprocess", 0.485], ["processes", 0.4723], ["fork", 0.4294], ["_interpreter_", 0.3485]], "operating-systems/section-notes/lab-3-questions.md": [["malloc", 0.4515], ["heap", 0.4212], ["processes", 0.4072], ["allocation", 0.3956], ["shell", 0.3644]], "operating-systems/section-notes/section-1.md": [["gdb", 0.4961], ["debugging", 0.4614], ["pointer", 0.3976], ["printf", 0.3762], ["uninitialized", 0.3354]], "operating-systems/v4-persistent-storage/11-file-systems-overview.md": [["filesystem", 0.5186], ["ntfs", 0.5058], ["files", 0.4059], ["bytes", 0.3387], ["dram", 0.2802]], "operating-systems/v4-persistent-storage/13-files-and-directories.md": [["directories", 0.4725], ["storage", 0.4539], ["ntfs", 0.4176], ["indexing", 0.3202], ["defragmentation", 0.3169]], "operating-systems/v2-concurrency/7-queueing-theory.md": [["queueing", 0.5586], ["scheduling", 0.4168], ["processes", 0.4011], ["utilization", 0.3903], ["arrivals", 0.3719]], "operating-systems/v2-concurrency/7-multiprocessor-scheduling.md": [["multiprocessors", 0.5418], ["hyperthreading", 0.4885], ["mfqs", 0.4449], ["processors", 0.4318], ["queues", 0.376]], "operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md": [["concurrentqueue", 0.5281], ["wait_lock", 0.4809], ["locks", 0.477], ["synchronization", 0.4292], ["atomic_t", 0.3829]], "operating-systems/v2-concurrency/4-concurrency-and-threads.md": [["multithreading", 0.6239], ["concurrency", 0.6021], ["processors", 0.5024], ["thread_yield", 0.4748], ["processes", 0.4329]], "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md": [["scheduling", 0.5887], ["workloads", 0.444], ["uniprocessor", 0.4126], ["multithreading", 0.3868], ["fifo", 0.3196]], "tmp/bench/spec.md": [["dimension_in", 0.3554], ["lisp", 0.3417], ["sweccathon", 0.3331], ["argv_1", 0.3076], ["benchmarking", 0.2516]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md": [["scalable", 0.4239], ["performance", 0.4007], ["databases", 0.3986], ["maintainability", 0.3932], ["processes", 0.3273]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md": [["serialized", 0.4834], ["encodings", 0.445], ["schemas", 0.4345], ["implementations", 0.4005], ["dataflow", 0.3446]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md": [["relational", 0.5655], ["nosql", 0.551], ["database", 0.5108], ["mongodb", 0.4897], ["vertex_id", 0.3281]], "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md": [["databases", 0.4782], ["storage", 0.4478], ["indexes", 0.4049], ["logs", 0.3333], ["olap", 0.3125]], "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md": [["replication", 0.6379], ["distributed", 0.4633], ["availability", 0.444], ["syncronous", 0.4195], ["consistency", 0.3675]], "designing-data-intensive-applications/part-2-distributed-data/preface.md": [["scalable", 0.4581], ["distributed", 0.4189], ["cpus", 0.3523], ["architecture", 0.3172], ["vm", 0.3086]], "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md": [["mapreduce", 0.5768], ["batch", 0.4316], ["processes", 0.4216], ["pipeline", 0.3603], ["unix", 0.3575]]} \ No newline at end of file diff --git a/site/idx/keyword_to_files.json b/site/idx/keyword_to_files.json new file mode 100644 index 0000000..4da147f --- /dev/null +++ b/site/idx/keyword_to_files.json @@ -0,0 +1 @@ +{"markdown": ["requirements.txt"], "directory": ["test.md"], "dynamo": ["distributed-systems/dynamo-db.md"], "storage": ["distributed-systems/dynamo-db.md", "distributed-systems/bigtable.md", "distributed-systems/consistency.md", "operating-systems/reference.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md", "operating-systems/lecture-notes/file-systems.md", "operating-systems/v4-persistent-storage/13-files-and-directories.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "amazon": ["distributed-systems/dynamo-db.md"], "versioning": ["distributed-systems/dynamo-db.md", "distributed-systems/disconnected-operation.md"], "consistency": ["distributed-systems/dynamo-db.md", "distributed-systems/managing-critical-state.md", "distributed-systems/primary-backup.md", "distributed-systems/two-phase-commit.md", "distributed-systems/consistency.md", "ds-backup/managing-critical-state.md", "ds-backup/primary-backup.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "synchronization": ["distributed-systems/disconnected-operation.md", "distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md", "operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "cloud": ["distributed-systems/disconnected-operation.md"], "reconnection": ["distributed-systems/disconnected-operation.md"], "writes": ["distributed-systems/disconnected-operation.md", "distributed-systems/google-file-system.md"], "bigtable": ["distributed-systems/bigtable.md"], "mapreduce": ["distributed-systems/bigtable.md", "distributed-systems/managing-critical-state.md", "ds-backup/managing-critical-state.md", "machine-learning-for-big-data/intro-mapreduce-spark.md", "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "database": ["distributed-systems/bigtable.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "locality": ["distributed-systems/bigtable.md"], "compiler": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "executes": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "rpc": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "tcp": ["distributed-systems/RPC.md", "ds-backup/RPC.md", "networks/5-application/HTTP.md", "networks/5-application/overview.md", "networks/4-transport/TCP.md", "networks/4-transport/ACK-clocking.md"], "nfs": ["distributed-systems/RPC.md", "ds-backup/RPC.md"], "paxos": ["distributed-systems/paxos-intro.md", "distributed-systems/non-blocking-two-phase-commit.md", "distributed-systems/load-balancing.md", "distributed-systems/paxos-made-simple.md", "distributed-systems/paxos-architecture.md", "ds-backup/paxos-intro.md", "ds-backup/paxos-made-simple.md"], "replication": ["distributed-systems/paxos-intro.md", "distributed-systems/managing-critical-state.md", "distributed-systems/primary-backup.md", "ds-backup/paxos-intro.md", "ds-backup/managing-critical-state.md", "ds-backup/primary-backup.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "protocol": ["distributed-systems/paxos-intro.md", "ds-backup/paxos-intro.md", "networks/3-network/DHCP.md", "networks/3-network/motivation.md", "networks/3-network/BGP.md", "networks/2-direct-links/framing.md", "networks/4-transport/TCP.md"], "proposer": ["distributed-systems/paxos-intro.md", "ds-backup/paxos-intro.md"], "algorithm": ["distributed-systems/paxos-intro.md", "ds-backup/paxos-intro.md", "algorithms/BFS.md", "algorithms/greedy-algorithms.md", "tmp/pairing-algorithm.md", "signal-conditioning/lecture-notes/lecture-5.md", "algorithms/patterns/BFS.md", "algorithms/patterns/sliding-window.md", "algorithms/practice/4.md"], "clocks": ["distributed-systems/clocks.md", "ds-backup/clocks.md"], "latency": ["distributed-systems/clocks.md", "ds-backup/clocks.md", "networks/0-foundation/3-performance.md"], "ntp": ["distributed-systems/clocks.md", "ds-backup/clocks.md"], "synchronized": ["distributed-systems/clocks.md", "distributed-systems/paxos-architecture.md", "ds-backup/clocks.md"], "scheduling": ["distributed-systems/clocks.md", "ds-backup/clocks.md", "algorithms/bipartite-graphs.md", "algorithms/dynamic-programming.md", "algorithms/greedy-algorithms.md", "cheatsheets/algorithms/intervals.md", "operating-systems/lecture-notes/handle-tables.md", "operating-systems/v2-concurrency/7-queueing-theory.md", "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "distributed": ["distributed-systems/consistent-global-state.md", "distributed-systems/mutual-exclusion.md", "distributed-systems/distributed-cache-coherence.md", "ds-backup/consistent-global-state.md", "ds-backup/mutual-exclusion.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md", "designing-data-intensive-applications/part-2-distributed-data/preface.md"], "processes": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md", "operating-systems/reference.md", "operating-systems/lecture-notes/processes.md", "operating-systems/lecture-notes/paging.md", "operating-systems/lecture-notes/windows-objects-handles-refcounts.md", "operating-systems/lecture-notes/components.md", "operating-systems/lecture-notes/page-faults.md", "operating-systems/lecture-notes/handle-tables.md", "operating-systems/lecture-notes/windows-memory-management.md", "operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md", "operating-systems/v1-kernels-and-processes/1-introductions.md", "operating-systems/v1-kernels-and-processes/3-the-programming-interface.md", "operating-systems/section-notes/lab-3-questions.md", "operating-systems/v2-concurrency/7-queueing-theory.md", "operating-systems/v2-concurrency/4-concurrency-and-threads.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md", "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "communicate": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md"], "observer": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md"], "asynchronous": ["distributed-systems/consistent-global-state.md", "ds-backup/consistent-global-state.md"], "ordering": ["distributed-systems/ordering-events-in-distributed-systems.md", "distributed-systems/mutual-exclusion.md", "ds-backup/ordering-events-in-distributed-systems.md", "ds-backup/mutual-exclusion.md", "algorithms/DAGs.md"], "protocols": ["distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md", "networks/0-foundation/1-network-components-and-protocols.md", "networks/3-network/ARP.md", "networks/3-network/global-internet.md", "networks/2-direct-links/wireless.md"], "events": ["distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md"], "transitive": ["distributed-systems/ordering-events-in-distributed-systems.md", "ds-backup/ordering-events-in-distributed-systems.md"], "queue": ["distributed-systems/mutual-exclusion.md", "ds-backup/mutual-exclusion.md", "operating-systems/lecture-notes/handle-tables.md"], "locking": ["distributed-systems/mutual-exclusion.md", "distributed-systems/non-blocking-two-phase-commit.md", "distributed-systems/two-phase-commit.md", "ds-backup/mutual-exclusion.md"], "exclusion": ["distributed-systems/mutual-exclusion.md", "ds-backup/mutual-exclusion.md"], "availability": ["distributed-systems/managing-critical-state.md", "distributed-systems/primary-backup.md", "ds-backup/managing-critical-state.md", "ds-backup/primary-backup.md", "designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "acid": ["distributed-systems/managing-critical-state.md", "ds-backup/managing-critical-state.md"], "concurrently": ["distributed-systems/non-blocking-two-phase-commit.md"], "rpcs": ["distributed-systems/non-blocking-two-phase-commit.md"], "commit": ["distributed-systems/non-blocking-two-phase-commit.md", "distributed-systems/two-phase-commit.md"], "servers": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md", "networks/5-application/CDNs.md"], "scalable": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md", "designing-data-intensive-applications/part-2-distributed-data/preface.md"], "tier": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md"], "microservices": ["distributed-systems/scaling-web-services.md", "ds-backup/scaling-web-services.md"], "architectures": ["distributed-systems/scaling-web-services.md", "distributed-systems/paxos-architecture.md", "ds-backup/scaling-web-services.md"], "shards": ["distributed-systems/sharding.md", "distributed-systems/load-balancing.md"], "hashing": ["distributed-systems/sharding.md"], "sharding": ["distributed-systems/sharding.md"], "buckets": ["distributed-systems/sharding.md"], "hotspots": ["distributed-systems/sharding.md"], "vms": ["distributed-systems/primary-backup.md", "ds-backup/primary-backup.md"], "redis": ["distributed-systems/primary-backup.md", "ds-backup/primary-backup.md"], "atomicity": ["distributed-systems/two-phase-commit.md"], "phase": ["distributed-systems/two-phase-commit.md", "cheatsheets/circuits/components.md"], "queueing": ["distributed-systems/load-balancing.md", "operating-systems/v2-concurrency/7-queueing-theory.md"], "utilization": ["distributed-systems/load-balancing.md", "operating-systems/v2-concurrency/7-queueing-theory.md"], "scaling": ["distributed-systems/load-balancing.md", "networks/3-network/motivation.md"], "consensus": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md"], "p1a": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md"], "proposers": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md"], "nodes": ["distributed-systems/paxos-made-simple.md", "ds-backup/paxos-made-simple.md", "networks/0-foundation/1-network-components-and-protocols.md", "networks/2-direct-links/wireless.md"], "filesystems": ["distributed-systems/google-file-system.md"], "gfs": ["distributed-systems/google-file-system.md"], "concurrency": ["distributed-systems/google-file-system.md", "distributed-systems/consistency.md", "operating-systems/reference.md", "operating-systems/v2-concurrency/4-concurrency-and-threads.md"], "workloads": ["distributed-systems/google-file-system.md", "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "caching": ["distributed-systems/distributed-cache-coherence.md"], "maintaining": ["distributed-systems/distributed-cache-coherence.md"], "leases": ["distributed-systems/distributed-cache-coherence.md", "distributed-systems/paxos-architecture.md"], "linearizable": ["distributed-systems/distributed-cache-coherence.md"], "overhead": ["distributed-systems/paxos-architecture.md"], "serializability": ["distributed-systems/consistency.md"], "kv": ["distributed-systems/consistency.md"], "verilog": ["digital-design/karnaugh-maps.md", "digital-design/waveform-diagram.md", "digital-design/quartus-workflow.md", "digital-design/system-verilog.md"], "karnaugh": ["digital-design/karnaugh-maps.md"], "adjacencies": ["digital-design/karnaugh-maps.md"], "trigger": ["digital-design/karnaugh-maps.md"], "map": ["digital-design/karnaugh-maps.md"], "bits": ["digital-design/waveform-diagram.md", "networks/0-foundation/3-performance.md", "networks/2-direct-links/errors.md"], "delay": ["digital-design/waveform-diagram.md", "networks/2-direct-links/retransmission.md"], "waveform": ["digital-design/waveform-diagram.md", "digital-design/quartus-workflow.md"], "bus": ["digital-design/waveform-diagram.md"], "registers": ["digital-design/sequential-logic.md", "operating-systems/lecture-notes/windows-rtz.md"], "sequential": ["digital-design/sequential-logic.md"], "flops": ["digital-design/sequential-logic.md"], "sl": ["digital-design/sequential-logic.md"], "synchronizing": ["digital-design/sequential-logic.md"], "combinational": ["digital-design/combinational-logic.md"], "boolean": ["digital-design/combinational-logic.md", "teaching/modern-java/lambdas-and-streams.md"], "logic": ["digital-design/combinational-logic.md"], "passenger": ["digital-design/combinational-logic.md"], "tables": ["digital-design/combinational-logic.md", "operating-systems/lecture-notes/tlb.md"], "modelsim": ["digital-design/quartus-workflow.md"], "runlab": ["digital-design/quartus-workflow.md"], "testbench": ["digital-design/quartus-workflow.md"], "systemverilog": ["digital-design/system-verilog.md"], "modules": ["digital-design/system-verilog.md"], "wires": ["digital-design/system-verilog.md"], "programmatically": ["digital-design/system-verilog.md"], "classify": ["natural-language-processing/multinomial-logistic-regression.md"], "logistic": ["natural-language-processing/multinomial-logistic-regression.md"], "labels": ["natural-language-processing/multinomial-logistic-regression.md"], "multinomial": ["natural-language-processing/multinomial-logistic-regression.md"], "vocabulary": ["natural-language-processing/multinomial-logistic-regression.md"], "cache": ["systems-research/hints-for-computer-system-design.md"], "hardware": ["systems-research/hints-for-computer-system-design.md", "operating-systems/lecture-notes/kernel-abstraction.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md"], "function": ["systems-research/hints-for-computer-system-design.md"], "delta": ["systems-research/hints-for-computer-system-design.md"], "adaptive": ["systems-research/hints-for-computer-system-design.md"], "reading": ["systems-research/how-to-read-a-paper.md"], "papers": ["systems-research/how-to-read-a-paper.md", "systems-research/paper-review-template.md"], "pass": ["systems-research/how-to-read-a-paper.md"], "annotate": ["systems-research/how-to-read-a-paper.md"], "keshav": ["systems-research/how-to-read-a-paper.md"], "science64_strong_inference": ["systems-research/strong-inference.md"], "hypotheses": ["systems-research/strong-inference.md"], "effective": ["systems-research/strong-inference.md"], "scientists": ["systems-research/strong-inference.md"], "analyze": ["systems-research/strong-inference.md"], "template": ["systems-research/paper-review-template.md"], "tags": ["systems-research/paper-review-template.md"], "reviewing": ["systems-research/paper-review-template.md"], "summary": ["systems-research/paper-review-template.md"], "graphs": ["algorithms/BFS.md", "algorithms/DAGs.md", "algorithms/graphs-intro.md", "algorithms/bipartite-graphs.md", "algorithms/problems/graphs-and-trees.md", "cheatsheets/algorithms/graphs.md"], "breadth": ["algorithms/BFS.md", "algorithms/connected-components.md", "algorithms/patterns/BFS.md", "cheatsheets/algorithms/graphs.md"], "level_order_traversal": ["algorithms/BFS.md"], "discover": ["algorithms/BFS.md"], "topological_sort": ["algorithms/DAGs.md"], "acyclic": ["algorithms/DAGs.md", "algorithms/tree-intro.md"], "dags": ["algorithms/DAGs.md"], "dfs_recursive": ["algorithms/DFS.md"], "trees": ["algorithms/DFS.md", "algorithms/tree-intro.md", "algorithms/problems/graphs-and-trees.md"], "depth": ["algorithms/DFS.md"], "traversal": ["algorithms/DFS.md", "algorithms/connected-components.md"], "edges": ["algorithms/DFS.md", "algorithms/network-flows.md"], "adjacency": ["algorithms/graphs-intro.md", "algorithms/connected-components.md"], "build_adjacency_matrix": ["algorithms/graphs-intro.md"], "vertex": ["algorithms/graphs-intro.md", "algorithms/approximation-algorithms.md", "algorithms/tree-intro.md"], "build_adjacency_list": ["algorithms/graphs-intro.md"], "algorithms": ["algorithms/divide-and-conquer.md", "algorithms/stable-matching.md", "algorithms/approximation-algorithms.md", "algorithms/dynamic-programming.md", "algorithms/connected-components.md", "algorithms/network-flows.md"], "recursively": ["algorithms/divide-and-conquer.md"], "conquering": ["algorithms/divide-and-conquer.md"], "dividing": ["algorithms/divide-and-conquer.md"], "bisection": ["algorithms/divide-and-conquer.md"], "stable_matchings": ["algorithms/stable-matching.md"], "find_stable_matchings": ["algorithms/stable-matching.md"], "matchings": ["algorithms/stable-matching.md"], "students": ["algorithms/stable-matching.md"], "bipartite": ["algorithms/bipartite-graphs.md", "cheatsheets/algorithms/graphs.md"], "coloring": ["algorithms/bipartite-graphs.md"], "v_2": ["algorithms/bipartite-graphs.md"], "induction": ["algorithms/induction.md", "algorithms/tree-intro.md", "algorithms/problems/graphs-and-trees.md"], "inductive": ["algorithms/induction.md"], "proofs": ["algorithms/induction.md"], "pigeonhole": ["algorithms/induction.md"], "mathematics": ["algorithms/induction.md"], "approximations": ["algorithms/approximation-algorithms.md"], "covers": ["algorithms/approximation-algorithms.md"], "satisfiability": ["algorithms/approximation-algorithms.md"], "hyperplanes": ["algorithms/linear-programming.md"], "optimization": ["algorithms/linear-programming.md"], "polytopes": ["algorithms/linear-programming.md"], "bmatrix": ["algorithms/linear-programming.md", "linear-algebra/elementry-linear-algebra.md", "tmp/pairing-algorithm.md"], "lps": ["algorithms/linear-programming.md"], "knapsack_rec": ["algorithms/dynamic-programming.md"], "max_weighted_interval_subset": ["algorithms/dynamic-programming.md"], "runtime": ["algorithms/dynamic-programming.md", "operating-systems/lecture-notes/processes.md"], "connected_components": ["algorithms/connected-components.md"], "efficiency": ["algorithms/runtime.md"], "asymptotic": ["algorithms/runtime.md"], "complexity": ["algorithms/runtime.md"], "notation": ["algorithms/runtime.md"], "n_0": ["algorithms/runtime.md"], "interval_scheduling": ["algorithms/greedy-algorithms.md"], "partition_intervals": ["algorithms/greedy-algorithms.md"], "greedy": ["algorithms/greedy-algorithms.md", "cheatsheets/algorithms/intervals.md"], "flow": ["algorithms/network-flows.md", "cheatsheets/circuits/electricity.md"], "routing": ["algorithms/network-flows.md", "networks/3-network/routing.md", "networks/3-network/internetworking.md", "networks/3-network/ICMP.md", "networks/3-network/motivation.md"], "partitioning": ["algorithms/network-flows.md"], "edge": ["algorithms/tree-intro.md", "algorithms/problems/graphs-and-trees.md"], "concurrent": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "implementations": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "jvm": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "transitions": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "documentstate": ["performance-engineering/efficiently-implementing-state-pattern-JVM.md"], "networks": ["networks/reference.md"], "systems": ["networks/reference.md", "linear-algebra/elementry-linear-algebra.md"], "textbook": ["networks/reference.md"], "systemsapproach": ["networks/reference.md"], "html": ["networks/reference.md"], "sock_stream": ["networks/sockets.md"], "sock_dgram": ["networks/sockets.md"], "socket": ["networks/sockets.md"], "ipproto_tcp": ["networks/sockets.md"], "server_port": ["networks/sockets.md"], "l4": ["scripts/simple.md"], "content": ["scripts/simple.md"], "l3": ["scripts/simple.md"], "l1": ["scripts/simple.md"], "title": ["scripts/simple.md"], "dataflow": ["machine-learning-for-big-data/intro-mapreduce-spark.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "cluster": ["machine-learning-for-big-data/intro-mapreduce-spark.md"], "hdfs": ["machine-learning-for-big-data/intro-mapreduce-spark.md"], "computing": ["machine-learning-for-big-data/intro-mapreduce-spark.md"], "vectors": ["linear-algebra/cheatsheet.md"], "geometric": ["linear-algebra/cheatsheet.md"], "v_3": ["linear-algebra/cheatsheet.md"], "interpretation": ["linear-algebra/cheatsheet.md"], "projections": ["linear-algebra/cheatsheet.md"], "cross_product": ["linear-algebra/python-cheatsheet.md"], "numpy": ["linear-algebra/python-cheatsheet.md"], "v_sum": ["linear-algebra/python-cheatsheet.md"], "is_orthonormal_matrix": ["linear-algebra/python-cheatsheet.md"], "l2_norm": ["linear-algebra/python-cheatsheet.md"], "ax": ["linear-algebra/elementry-linear-algebra.md"], "b_m": ["linear-algebra/elementry-linear-algebra.md"], "equations": ["linear-algebra/elementry-linear-algebra.md"], "kernels": ["operating-systems/reference.md"], "osppv2": ["operating-systems/reference.md"], "pairing": ["tmp/pairing-algorithm.md"], "calculate_pairs": ["tmp/pairing-algorithm.md"], "student_i": ["tmp/pairing-algorithm.md"], "retrieval": ["natural-language-processing/reading/information-retrieval.md"], "indexing": ["natural-language-processing/reading/information-retrieval.md", "operating-systems/v4-persistent-storage/13-files-and-directories.md"], "searches": ["natural-language-processing/reading/information-retrieval.md"], "documents": ["natural-language-processing/reading/information-retrieval.md"], "ir": ["natural-language-processing/reading/information-retrieval.md"], "swap": ["signal-conditioning/lecture-notes/lecture-1.md"], "device": ["signal-conditioning/lecture-notes/lecture-1.md"], "reusable": ["signal-conditioning/lecture-notes/lecture-1.md"], "energy": ["signal-conditioning/lecture-notes/lecture-1.md"], "cost": ["signal-conditioning/lecture-notes/lecture-1.md"], "circuits": ["signal-conditioning/lecture-notes/lecture-5.md", "signal-conditioning/lecture-notes/lecture-2.md", "cheatsheets/circuits/electricity.md"], "resistance": ["signal-conditioning/lecture-notes/lecture-5.md", "signal-conditioning/lecture-notes/lecture-4.md", "signal-conditioning/lecture-notes/lecture-3.md", "cheatsheets/circuits/electricity.md"], "theorem": ["signal-conditioning/lecture-notes/lecture-5.md"], "thevenin": ["signal-conditioning/lecture-notes/lecture-5.md"], "dissipation": ["signal-conditioning/lecture-notes/lecture-4.md"], "circuit": ["signal-conditioning/lecture-notes/lecture-4.md"], "r_2": ["signal-conditioning/lecture-notes/lecture-4.md"], "node": ["signal-conditioning/lecture-notes/lecture-4.md"], "resistances": ["signal-conditioning/lecture-notes/lecture-3.md"], "resistors": ["signal-conditioning/lecture-notes/lecture-3.md"], "dissipated": ["signal-conditioning/lecture-notes/lecture-3.md"], "watts": ["signal-conditioning/lecture-notes/lecture-3.md"], "electricity": ["signal-conditioning/lecture-notes/lecture-2.md", "cheatsheets/circuits/electricity.md"], "electrons": ["signal-conditioning/lecture-notes/lecture-2.md"], "current": ["signal-conditioning/lecture-notes/lecture-2.md"], "amperes": ["signal-conditioning/lecture-notes/lecture-2.md"], "inductors": ["signal-conditioning/lecture-notes/lecture-6.md"], "capacitance": ["signal-conditioning/lecture-notes/lecture-6.md"], "ac": ["signal-conditioning/lecture-notes/lecture-6.md"], "jq": ["signal-conditioning/lecture-notes/lecture-6.md"], "imaginary": ["signal-conditioning/lecture-notes/lecture-6.md"], "bfs": ["algorithms/patterns/BFS.md"], "graph": ["algorithms/patterns/BFS.md"], "search": ["algorithms/patterns/BFS.md"], "contiguous": ["algorithms/patterns/sliding-window.md"], "subarray": ["algorithms/patterns/sliding-window.md"], "sliding": ["algorithms/patterns/sliding-window.md"], "window": ["algorithms/patterns/sliding-window.md"], "leaf": ["algorithms/problems/graphs-and-trees.md"], "intervals": ["algorithms/practice/4.md", "cheatsheets/algorithms/intervals.md"], "classrooms": ["algorithms/practice/4.md"], "allocated": ["algorithms/practice/4.md", "operating-systems/lecture-notes/paging.md"], "disjoint": ["algorithms/practice/4.md"], "bandwidth": ["networks/0-foundation/information-theory.md", "networks/0-foundation/3-performance.md", "networks/3-network/networking-services.md", "networks/2-direct-links/multiple-access.md"], "transmit": ["networks/0-foundation/information-theory.md"], "wireless": ["networks/0-foundation/information-theory.md", "networks/1-physical/media.md"], "frequencies": ["networks/0-foundation/information-theory.md"], "shannon": ["networks/0-foundation/information-theory.md"], "throughput": ["networks/0-foundation/3-performance.md", "networks/4-transport/flow-control.md"], "performance": ["networks/0-foundation/3-performance.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md"], "network": ["networks/0-foundation/1-network-components-and-protocols.md", "networks/3-network/motivation.md"], "802": ["networks/0-foundation/1-network-components-and-protocols.md", "networks/2-direct-links/wireless.md"], "interfaces": ["networks/0-foundation/1-network-components-and-protocols.md"], "modulator": ["networks/0-foundation/2-physical-layer.md"], "coding": ["networks/0-foundation/2-physical-layer.md", "networks/1-physical/coding-and-modulation.md"], "decode": ["networks/0-foundation/2-physical-layer.md"], "analog": ["networks/0-foundation/2-physical-layer.md"], "signals": ["networks/0-foundation/2-physical-layer.md"], "arp": ["networks/3-network/ARP.md"], "ip": ["networks/3-network/ARP.md", "networks/3-network/DHCP.md"], "mac": ["networks/3-network/ARP.md"], "bonjour": ["networks/3-network/ARP.md"], "forwarding": ["networks/3-network/routing.md"], "routers": ["networks/3-network/routing.md", "networks/3-network/global-internet.md"], "packets": ["networks/3-network/routing.md", "networks/3-network/internetworking.md", "networks/3-network/networking-services.md", "networks/3-network/ICMP.md", "networks/4-transport/transport-overview.md", "networks/4-transport/flow-control.md"], "updateroutingtable": ["networks/3-network/routing.md"], "internetworking": ["networks/3-network/internetworking.md"], "ipv4": ["networks/3-network/internetworking.md"], "qos": ["networks/3-network/internetworking.md", "networks/3-network/networking-services.md", "networks/3-network/motivation.md"], "networking": ["networks/3-network/networking-services.md"], "multiplexing": ["networks/3-network/networking-services.md", "networks/2-direct-links/multiple-access.md"], "dhcp": ["networks/3-network/DHCP.md"], "udp": ["networks/3-network/DHCP.md", "networks/5-application/overview.md"], "configuration": ["networks/3-network/DHCP.md"], "traceroute": ["networks/3-network/ICMP.md"], "ping": ["networks/3-network/ICMP.md"], "icmp": ["networks/3-network/ICMP.md"], "bgp": ["networks/3-network/global-internet.md", "networks/3-network/BGP.md"], "ospf": ["networks/3-network/global-internet.md"], "infrastructure": ["networks/3-network/global-internet.md"], "routes": ["networks/3-network/BGP.md"], "traffic": ["networks/3-network/BGP.md"], "interconnected": ["networks/3-network/BGP.md"], "byte": ["networks/2-direct-links/framing.md"], "ddcmp": ["networks/2-direct-links/framing.md"], "sdlc": ["networks/2-direct-links/framing.md"], "frames": ["networks/2-direct-links/framing.md"], "retransmission": ["networks/2-direct-links/retransmission.md"], "arq": ["networks/2-direct-links/retransmission.md"], "acknowledged_frames": ["networks/2-direct-links/retransmission.md"], "rtt": ["networks/2-direct-links/retransmission.md", "networks/4-transport/flow-control.md"], "hamming_encode": ["networks/2-direct-links/errors.md"], "detect": ["networks/2-direct-links/errors.md"], "redundancy": ["networks/2-direct-links/errors.md"], "internet_checksum": ["networks/2-direct-links/errors.md"], "collisions": ["networks/2-direct-links/wireless.md"], "maca": ["networks/2-direct-links/wireless.md"], "gsm": ["networks/2-direct-links/multiple-access.md"], "fdm": ["networks/2-direct-links/multiple-access.md"], "centralized": ["networks/2-direct-links/multiple-access.md"], "bridgemap": ["networks/2-direct-links/switching.md"], "ethernet": ["networks/2-direct-links/switching.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md"], "bridge_tab_size": ["networks/2-direct-links/switching.md"], "switches": ["networks/2-direct-links/switching.md"], "macaddr": ["networks/2-direct-links/switching.md"], "http": ["networks/5-application/HTTP.md"], "server": ["networks/5-application/HTTP.md"], "fetching": ["networks/5-application/HTTP.md"], "requests": ["networks/5-application/HTTP.md"], "applications": ["networks/5-application/overview.md"], "skype": ["networks/5-application/overview.md"], "layer": ["networks/5-application/overview.md", "networks/4-transport/transport-overview.md"], "cdns": ["networks/5-application/CDNs.md"], "caches": ["networks/5-application/CDNs.md"], "proxy": ["networks/5-application/CDNs.md"], "dns": ["networks/5-application/CDNs.md", "networks/5-application/DNS.md"], "nameservers": ["networks/5-application/DNS.md"], "resolver": ["networks/5-application/DNS.md"], "hierarchy": ["networks/5-application/DNS.md", "operating-systems/lecture-notes/io-systems-secondary-storage.md"], "namespaces": ["networks/5-application/DNS.md"], "retransmits": ["networks/4-transport/TCP.md"], "timeout": ["networks/4-transport/TCP.md"], "rtt_": ["networks/4-transport/TCP.md"], "congestion": ["networks/4-transport/ACK-clocking.md"], "buffers": ["networks/4-transport/ACK-clocking.md"], "ack": ["networks/4-transport/ACK-clocking.md"], "pipelining": ["networks/4-transport/ACK-clocking.md"], "transport": ["networks/4-transport/transport-overview.md"], "bytestreams": ["networks/4-transport/transport-overview.md"], "segments": ["networks/4-transport/transport-overview.md"], "buffer": ["networks/4-transport/flow-control.md", "operating-systems/lecture-notes/tlb.md"], "recall": ["networks/4-transport/flow-control.md"], "modulation": ["networks/1-physical/coding-and-modulation.md"], "receiver": ["networks/1-physical/coding-and-modulation.md"], "nrz": ["networks/1-physical/coding-and-modulation.md"], "01001": ["networks/1-physical/coding-and-modulation.md"], "interference": ["networks/1-physical/media.md"], "shielding": ["networks/1-physical/media.md"], "microwave": ["networks/1-physical/media.md"], "fiber": ["networks/1-physical/media.md"], "java": ["teaching/modern-java/lambdas-and-streams.md", "teaching/modern-java/collections-and-records.md"], "arraylist": ["teaching/modern-java/lambdas-and-streams.md"], "lambdas": ["teaching/modern-java/lambdas-and-streams.md"], "admins": ["teaching/modern-java/lambdas-and-streams.md"], "collections": ["teaching/modern-java/collections-and-records.md"], "arrays": ["teaching/modern-java/collections-and-records.md"], "implements": ["teaching/modern-java/collections-and-records.md"], "immutable": ["teaching/modern-java/collections-and-records.md"], "pip": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt", "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/top_level.txt", "nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "pip3": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "console_scripts": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "cli": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "_internal": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/entry_points.txt"], "copyright": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "software": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "documentation": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "liable": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/LICENSE.txt"], "abuissa": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "korolev": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "tavares": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "paulus": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "ayers": ["nlp.venv/lib/python3.13/site-packages/pip-24.2.dist-info/AUTHORS.txt"], "cachecontrol": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "resolvelib": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "msgpack": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "setuptools": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "truststore": ["nlp.venv/lib/python3.13/site-packages/pip/_vendor/vendor.txt"], "oscillations": ["cheatsheets/circuits/components.md"], "dc": ["cheatsheets/circuits/components.md"], "inductance": ["cheatsheets/circuits/components.md"], "radians": ["cheatsheets/circuits/components.md"], "potentials": ["cheatsheets/circuits/electricity.md"], "springbootapplication": ["cheatsheets/java-spring-boot/reference.md"], "bean": ["cheatsheets/java-spring-boot/reference.md"], "enableautoconfiguration": ["cheatsheets/java-spring-boot/reference.md"], "restcontroller": ["cheatsheets/java-spring-boot/reference.md"], "annotations": ["cheatsheets/java-spring-boot/reference.md"], "gradlew": ["cheatsheets/java-spring-boot/running.md"], "intellij": ["cheatsheets/java-spring-boot/running.md"], "spring": ["cheatsheets/java-spring-boot/running.md"], "deploying": ["cheatsheets/java-spring-boot/running.md"], "quickstart": ["cheatsheets/java-spring-boot/running.md"], "tree": ["cheatsheets/algorithms/graphs.md"], "v_1": ["cheatsheets/algorithms/graphs.md"], "approximation": ["cheatsheets/algorithms/divide-and-conquer.md"], "log_b": ["cheatsheets/algorithms/divide-and-conquer.md"], "root": ["cheatsheets/algorithms/divide-and-conquer.md"], "recurrence": ["cheatsheets/algorithms/divide-and-conquer.md"], "bisect": ["cheatsheets/algorithms/divide-and-conquer.md"], "optimal": ["cheatsheets/algorithms/intervals.md"], "lemma": ["cheatsheets/algorithms/intervals.md"], "execution": ["operating-systems/lecture-notes/processes.md"], "stack": ["operating-systems/lecture-notes/processes.md"], "memory": ["operating-systems/lecture-notes/processes.md", "operating-systems/lecture-notes/components.md", "operating-systems/lecture-notes/windows-memory-management.md"], "privileges": ["operating-systems/lecture-notes/kernel-abstraction.md"], "modes": ["operating-systems/lecture-notes/kernel-abstraction.md"], "interrupt": ["operating-systems/lecture-notes/kernel-abstraction.md", "operating-systems/lecture-notes/page-faults.md", "operating-systems/lecture-notes/windows-rtz.md"], "mips": ["operating-systems/lecture-notes/kernel-abstraction.md"], "fragmentation": ["operating-systems/lecture-notes/paging.md"], "paging": ["operating-systems/lecture-notes/paging.md", "operating-systems/lecture-notes/windows-memory-management.md"], "virtual": ["operating-systems/lecture-notes/paging.md"], "handles": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "objects": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "references": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "kernel": ["operating-systems/lecture-notes/windows-objects-handles-refcounts.md"], "processor": ["operating-systems/lecture-notes/components.md"], "os": ["operating-systems/lecture-notes/components.md", "operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md", "operating-systems/v1-kernels-and-processes/1-introductions.md"], "multiprogramming": ["operating-systems/lecture-notes/components.md"], "busses": ["operating-systems/lecture-notes/io-systems-secondary-storage.md"], "pages": ["operating-systems/lecture-notes/page-faults.md", "operating-systems/lecture-notes/windows-memory-management.md"], "faults": ["operating-systems/lecture-notes/page-faults.md"], "pte": ["operating-systems/lecture-notes/page-faults.md"], "tlb": ["operating-systems/lecture-notes/tlb.md"], "x86": ["operating-systems/lecture-notes/tlb.md"], "mapped": ["operating-systems/lecture-notes/tlb.md"], "writefile": ["operating-systems/lecture-notes/file-systems.md"], "flushfilebuffers": ["operating-systems/lecture-notes/file-systems.md"], "unix": ["operating-systems/lecture-notes/file-systems.md", "designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "getfilesize": ["operating-systems/lecture-notes/file-systems.md"], "rtlcopymemory": ["operating-systems/lecture-notes/windows-rtz.md"], "rtlzeromemory": ["operating-systems/lecture-notes/windows-rtz.md"], "bugs": ["operating-systems/lecture-notes/windows-rtz.md"], "task_struct": ["operating-systems/lecture-notes/handle-tables.md"], "cpu": ["operating-systems/lecture-notes/handle-tables.md"], "maintained": ["operating-systems/lecture-notes/windows-memory-management.md"], "_processor": ["operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md"], "executable": ["operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md"], "kernel_open": ["operating-systems/v1-kernels-and-processes/2-the-kernel-abstraction.md"], "virtualization": ["operating-systems/v1-kernels-and-processes/1-introductions.md"], "processors": ["operating-systems/v1-kernels-and-processes/1-introductions.md", "operating-systems/v2-concurrency/7-multiprocessor-scheduling.md", "operating-systems/v2-concurrency/4-concurrency-and-threads.md"], "interface": ["operating-systems/v1-kernels-and-processes/1-introductions.md"], "syscalls": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "createprocess": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "fork": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "_interpreter_": ["operating-systems/v1-kernels-and-processes/3-the-programming-interface.md"], "malloc": ["operating-systems/section-notes/lab-3-questions.md"], "heap": ["operating-systems/section-notes/lab-3-questions.md"], "allocation": ["operating-systems/section-notes/lab-3-questions.md"], "shell": ["operating-systems/section-notes/lab-3-questions.md"], "gdb": ["operating-systems/section-notes/section-1.md"], "debugging": ["operating-systems/section-notes/section-1.md"], "pointer": ["operating-systems/section-notes/section-1.md"], "printf": ["operating-systems/section-notes/section-1.md"], "uninitialized": ["operating-systems/section-notes/section-1.md"], "filesystem": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "ntfs": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md", "operating-systems/v4-persistent-storage/13-files-and-directories.md"], "files": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "bytes": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "dram": ["operating-systems/v4-persistent-storage/11-file-systems-overview.md"], "directories": ["operating-systems/v4-persistent-storage/13-files-and-directories.md"], "defragmentation": ["operating-systems/v4-persistent-storage/13-files-and-directories.md"], "arrivals": ["operating-systems/v2-concurrency/7-queueing-theory.md"], "multiprocessors": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "hyperthreading": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "mfqs": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "queues": ["operating-systems/v2-concurrency/7-multiprocessor-scheduling.md"], "concurrentqueue": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "wait_lock": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "locks": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "atomic_t": ["operating-systems/v2-concurrency/5-synchronizing-access-to-shared-objects.md"], "multithreading": ["operating-systems/v2-concurrency/4-concurrency-and-threads.md", "operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "thread_yield": ["operating-systems/v2-concurrency/4-concurrency-and-threads.md"], "uniprocessor": ["operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "fifo": ["operating-systems/v2-concurrency/7-uniprocessor-scheduling.md"], "dimension_in": ["tmp/bench/spec.md"], "lisp": ["tmp/bench/spec.md"], "sweccathon": ["tmp/bench/spec.md"], "argv_1": ["tmp/bench/spec.md"], "benchmarking": ["tmp/bench/spec.md"], "databases": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md", "designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "maintainability": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch1-reliable-scalable-and-maintainable-applications.md"], "serialized": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "encodings": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "schemas": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch4-encoding-and-evolution.md"], "relational": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "nosql": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "mongodb": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "vertex_id": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch2-data-models-and-query-languages.md"], "indexes": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "logs": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "olap": ["designing-data-intensive-applications/part-1-foundations-of-data-systems/ch3-storage-and-retrieval.md"], "syncronous": ["designing-data-intensive-applications/part-2-distributed-data/ch5-replication.md"], "cpus": ["designing-data-intensive-applications/part-2-distributed-data/preface.md"], "architecture": ["designing-data-intensive-applications/part-2-distributed-data/preface.md"], "vm": ["designing-data-intensive-applications/part-2-distributed-data/preface.md"], "batch": ["designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"], "pipeline": ["designing-data-intensive-applications/part-3-derived-data/ch10-batch-processing.md"]} \ No newline at end of file diff --git a/site/index.html b/site/index.html index 18d1b94..f229ad0 100644 --- a/site/index.html +++ b/site/index.html @@ -189,7 +189,7 @@

- 151 + 152 Notes
@@ -205,6 +205,11 @@

Recent

diff --git a/site/scripts/build.py b/site/scripts/build.py index de059e4..31009ab 100644 --- a/site/scripts/build.py +++ b/site/scripts/build.py @@ -47,6 +47,8 @@ class SiteGenerator: "__pycache__", "node_modules", ".github", + "nlp.venv", + "site", "venv", ".venv", } diff --git a/site/scripts/keywords.py b/site/scripts/keywords.py new file mode 100644 index 0000000..6056dd8 --- /dev/null +++ b/site/scripts/keywords.py @@ -0,0 +1,116 @@ +import json +import string +import nltk + +from typing import List +from pathlib import Path +from keybert import KeyBERT + +nltk.download("stopwords") + + +class DataReader: + def __init__(self, root_dir: str = "."): + self.root_dir = Path(root_dir) + self.ROOT = root_dir + self.IGNORED_PATHS = { + ".git", + "__pycache__", + "node_modules", + ".github", + "venv", + ".venv", + "nlp.venv", + "site", + "README.md", + } + + self.SUPPORTED_EXTENSIONS = {".md", ".txt"} + + def read_files(self) -> List[Path]: + return self._walk_directory(self.root_dir) + + def _walk_directory(self, directory: Path): + """Walk through directory while respecting ignored paths""" + for item in directory.rglob("*"): + if not any(ignored in item.parts for ignored in self.IGNORED_PATHS): + if item.is_file() and item.suffix in self.SUPPORTED_EXTENSIONS: + yield item + + +class Normalizer: + def __init__(self): + self.lower_case = True + self.remove_punctuation = False + self.remove_stopwords = True + + self.stop_words = set(nltk.corpus.stopwords.words("english")) + + def normalize_doc(self, doc: str) -> str: + if self.lower_case: + doc = doc.lower() + + if self.remove_punctuation: + doc = str.translate(doc, str.maketrans("", "", string.punctuation)) + + if self.remove_stopwords: + doc = " ".join( + [word for word in doc.split() if word not in self.stop_words] + ) + + return doc + + +def get_kw_path_map(files: List[Path], model: KeyBERT) -> dict: + reader = DataReader() + normalizer = Normalizer() + + keyword_map = {} + + for i, file in enumerate(files): + with open(file) as f: + doc = normalizer.normalize_doc(f.read()) + + keywords = model.extract_keywords( + doc, + keyphrase_ngram_range=(1, 1), + stop_words="english", + use_mmr=True, + diversity=0.3, + ) + + keyword_map["/".join(file.parts)] = keywords + + return keyword_map + + +def aggregate(file_to_keywords: dict) -> dict: + keyword_to_files = {} + for file, keywords in file_to_keywords.items(): + for keyword in keywords: + if keyword[0] not in keyword_to_files: + keyword_to_files[keyword[0]] = [] + keyword_to_files[keyword[0]].append(file) + return keyword_to_files + + +def write_idx_to_json_file(idx: dict, output_path: Path): + if output_path.exists(): + output_path.unlink() + + if not output_path.parent.exists(): + output_path.parent.mkdir(parents=True) + + with open(output_path, "w") as f: + json.dump(idx, f) + + +if __name__ == "__main__": + reader = DataReader() + files = reader.read_files() + model = KeyBERT() + + file_to_kw = get_kw_path_map(files, model) + kw_to_file = aggregate(file_to_kw) + write_idx_to_json_file(file_to_kw, Path("idx/file_to_keywords.json")) + write_idx_to_json_file(kw_to_file, Path("idx/keyword_to_files.json")) diff --git a/site/test.html b/site/test.html new file mode 100644 index 0000000..ebddc7c --- /dev/null +++ b/site/test.html @@ -0,0 +1,195 @@ + + + + + + Test + + + + + +
+ +

Test

+
+ Last modified: 2025-01-12 + +
+
+

Directory

+
+ +
+ + \ No newline at end of file diff --git a/test.md b/test.md new file mode 100644 index 0000000..1ee8fad --- /dev/null +++ b/test.md @@ -0,0 +1,2 @@ +# Directory +