我读过的那些技术书籍(英文为主)

Linux 系统编程


The Linux Programming Interface: A Linux and UNIX System Programming Handbook



笔者 Linux system programming 方面最钟爱的书,甚至胜过下面的 APUE, 书评后面不上


Advanced Programming in the UNIX Environment



笔者看的是第二部,英文版第三版还没出,这本书就不多说了,被誉为 Bible 的书,不过笔者更喜欢上面的 TLPI

Publication Date: May 24, 2013 | ISBN-10: 0321637739 | ISBN-13: 978-0321637734 | Edition: 3


Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition)


APUE 一样,被誉为 Bible 的书


Linux kernel


Professional Linux Kernel Architecture


个人感觉这本书的深度恰到好处,比下面的 Linux Kernel Development (3rd Edition)  写得深入,但比 Understanding the Linux Kernel, Third Edition 通俗易懂,kernel方面最喜爱的书籍


Linux Kernel Development (3rd Edition)



kernel 入门书籍,相当与 kernel 的 introduction, 个人觉得书名更适合叫 Introduction to Linux Kernel, 哈哈


Understanding the Linux Kernel, Third Edition


kernel 拔高书籍,有点难消化


其它书籍


Hadoop: The Definitive Guide


Hadoop 方面的 Bible, 大二下学期时读的,当时基础还不全面,没怎么理解,有机会再拜读


Web Application Architecture: Principles, Protocols and Practices


将 Web 架构的,入门级的书,不过知识覆盖面很广,开阔视野很有帮助


Git Community Book

Git 入门书籍



说明

1、上面的书籍基本上是领域的 No.1 的书籍,也是笔者读的比较过的书;

2、本文写得比较仓促,信息不是很完整,后面陆续完善

3、还有一些其它书籍,后面也陆续补上

4、这些书网上都有文字版,如果找不到可以留评论向笔者索要


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Publisher: Wrox Page : 1371 This book discusses the concepts, structure, and implementation of the Linux kernel. In particular, the individual chapters cover the following topics: ❑ Chapter 1 provides an overview of the Linux kernel and describes the big picture that is investigated more closely in the following chapters. ❑ Chapter 2 talks about the basics of multitasking, scheduling, and process management, and investigates how these fundamental techniques and abstractions are implemented. ❑ Chapter 3 discusses how physical memory is managed. Both the interaction with hardware and the in-kernel distribution of RAM via the buddy system and the slab allocator are covered. ❑ Chapter 4 proceeds to describe how userland processes experience virtual memory, and the comprehensive data structures and actions required from the kernel to implement this view. ❑ Chapter 5 introduces the mechanisms required to ensure proper operation of the kernel on multiprocessor systems. Additionally, it covers the related question of how processes can communicate with each other. ❑ Chapter 6 walks you through the means for writing device drivers that are required to add support for new hardware to the kernel. ❑ Chapter 7 explains how modules allow for dynamically adding new functionality to the kernel. ❑ Chapter 8 discusses the virtual filesystem, a generic layer of the kernel that allows for supporting a wide range of different filesystems, both physical and virtual. ❑ Chapter 9 describes the extended filesystem family, that is, the Ext2 and Ext3 filesystems that are the standard workhorses of many Linux installations. ❑ Chapter 10 goes on to discuss procfs and sysfs, two filesystems that are not designed to store information, but to present meta-information about the kernel to userland. Additionally, a number of means to ease writing filesystems are presented. ❑ Chapter 11 shows how extended attributes and access control lists that can help to improve system security are implemented. ❑ Chapter 12 discusses the networking implementation of the kernel, with a specific focus on IPv4, TCP, UDP, and netfilter. ❑ Chapter 13 introduces how systems calls that are the standard way to request a kernel action from userland are implemented. ❑ Chapter 14 analyzes how kernel activities are triggered with interrupts, and presents means of deferring work to a later point in time. ❑ Chapter 15 shows how the kernel handles all time-related requirements, both with low and high resolution. ❑ Chapter 16 talks about speeding up kernel operations with the help of the page and buffer caches. ❑ Chapter 17 discusses how cached data in memory are synchronized with their sources on persistent storage devices. ❑ Chapter 18 introduces how page reclaim and swapping work.
### 回答1: 以下是一个简单的图书管理系统数据分析代码框架,你可以根据需要进行修改和完善: ```python import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns # 读取数据 books = pd.read_csv("books.csv") borrow_records = pd.read_csv("borrow_records.csv") # 处理数据 # 统计每种类型的书籍数量 book_counts = books.groupby("type")["book_id"].count().reset_index(name="count") # 统计每个读者的借书量 borrow_counts = borrow_records.groupby("reader_id")["book_id"].count().reset_index(name="count") # 统计每种类型的书籍的平均借阅次数 mean_borrows = borrow_records.merge(books, on="book_id").groupby("type")["borrow_times"].mean().reset_index(name="mean_borrow_times") # 可视化分析结果 # 绘制每种类型的书籍数量柱状图 plt.figure(figsize=(10, 6)) sns.barplot(x="type", y="count", data=book_counts) plt.title("Number of Books by Type") plt.xlabel("Type") plt.ylabel("Count") plt.show() # 绘制读者借书量直方图 plt.figure(figsize=(10, 6)) sns.histplot(borrow_counts["count"], bins=20) plt.title("Distribution of Borrow Counts") plt.xlabel("Borrow Count") plt.ylabel("Reader Count") plt.show() # 绘制每种类型的书籍平均借阅次数柱状图 plt.figure(figsize=(10, 6)) sns.barplot(x="type", y="mean_borrow_times", data=mean_borrows) plt.title("Mean Borrow Times by Type") plt.xlabel("Type") plt.ylabel("Mean Borrow Times") plt.show() ``` 上述代码框架包括了数据读取、数据处理和可视化分析三个步骤。你可以根据实际情况修改数据读取和处理的代码,例如添加数据清洗、合并等操作。同时,你也可以根据需要添加更多的可视化分析方法。 ### 回答2: 图书管理系统数据分析的主要目标是根据图书馆的图书借阅、归还、购买和库存等数据提供有关图书借阅行为、图书流通情况、用户需求等方面的分析报告。下面是一个简单的图书管理系统数据分析代码的示例: ```python import pandas as pd import matplotlib.pyplot as plt # 读取图书借阅记录数据 borrow_data = pd.read_csv('borrow_records.csv') # 统计每本图书的借阅次数 book_borrow_count = borrow_data['book_id'].value_counts() # 统计每个用户的借阅记录数 user_borrow_count = borrow_data['user_id'].value_counts() # 绘制图书借阅次数的柱状图 book_borrow_count.plot(kind='bar', figsize=(10, 6)) plt.xlabel('Book ID') plt.ylabel('Borrow Count') plt.title('Borrow Count of Books') plt.show() # 绘制用户借阅记录数的柱状图 user_borrow_count.plot(kind='bar', figsize=(10, 6)) plt.xlabel('User ID') plt.ylabel('Borrow Count') plt.title('Borrow Count of Users') plt.show() # 找出借阅次数最多的前5本图书 top_5_books = book_borrow_count.head(5) print("Top 5 books with the most borrow counts:") print(top_5_books) # 找出借阅记录数最多的前5位用户 top_5_users = user_borrow_count.head(5) print("Top 5 users with the most borrow records:") print(top_5_users) # 根据图书借阅记录,统计每个月的借阅次数 borrow_data['borrow_date'] = pd.to_datetime(borrow_data['borrow_date']) borrow_data['month'] = borrow_data['borrow_date'].dt.month monthly_borrow_count = borrow_data.groupby('month')['book_id'].count() # 绘制每个月借阅次数的折线图 monthly_borrow_count.plot(kind='line', figsize=(10, 6)) plt.xlabel('Month') plt.ylabel('Borrow Count') plt.title('Monthly Borrow Count') plt.show() ``` 这段代码通过读取包含图书借阅记录的CSV文件,使用Pandas库对数据进行处理和分析,并使用Matplotlib库绘制相关图表。代码中包括了统计图书借阅次数、用户借阅记录数、找出借阅次数最多的图书和用户、以及根据借阅记录统计每个月的借阅次数等功能的实现。你可以根据实际需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值