高效码农

撰写、分享国内外先进的IT技术

高效码农 发布的文章

November 24, 2023

IPC - 简介

您是否想过两个进程如何在一台设备中进行通信?我猜您想到了使用文件 I/O API 的文件[1],是的,这可以工作,但是在将数据写入受监视文件时发出警报会涉及一定程度的复杂性。您也可以想到网络,这也是可行的。但这将涉及选择端口和设置所有网络恶作剧。所以我们消除了文件 I/O 和网络。我们还能如何让两个进程进行通信呢?在讨论“如何”之前,我们先来谈谈“什么”。两个进程通信意味着什么?这叫什么?这...
November 14, 2023

HarmonyOS开发:DevEco Studio通义灵码安装教程

步骤1已安装 DevEco Studio 的情况下:DevEco Studio 菜单下点击 Preferences -》Plugins下载离线包安装1、下载 DevEco Studio 的 zip 安装包;点击下载离线安装包2点击导航-插件,点击设置图标,下拉菜单中单击从本地安装插件, 选择下载的 zip 文件后安装。步骤3重启 DevEco Studio,重启成功后登录阿里云账号,即刻...
November 10, 2023

spring bot 集成 weblogic的客户端 对接JMS

使用场景客户现有weblogic jms 队列服务,需要我们编程对接。开发框架为spring bot maven报错信息:javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.Cla...
October 20, 2023

Python pandas 使用技巧

一、 pd.to_datetime 格式化日期报错:ValueError: time data "2023-10-14T18:44:36-07:00" doesn't match format "%Y-%m-%d %H:%M:%S", at position 0. You might want to try: - passing `format...
September 8, 2023

第五章:计算机中的翻译器

到目前为止,每次我谈到阅读和写作记忆时都有点空洞。例如,ELF 文件指定要加载数据的特定内存地址,那么为什么不同进程尝试使用冲突内存时不会出现问题呢?为什么每个进程似乎都有不同的内存环境?另外,我们到底是怎么到这里的?我们知道这execve是一个用新程序替换当前进程的系统调用,但这并不能解释如何启动多个进程。它绝对没有解释第一个程序是如何运行的——哪只鸡(进程)产下(产卵)所有其他鸡蛋(其他...
September 3, 2023

第四章:ELF

我们现在已经非常了解了execve。在大多数路径的末尾,内核将到达包含要启动的机器代码的最终程序。通常,在实际跳转到代码之前需要一个设置过程 - 例如,程序的不同部分必须加载到内存中的正确位置。每个程序需要不同数量的内存来处理不同的事情,因此我们有标准文件格式来指定如何设置要执行的程序。虽然 Linux 支持许多此类格式,但迄今为止最常见的格式是ELF(可执行和可链接格式)。记号笔在纸上画画...
September 2, 2023

第三章:程序运行

到目前为止,我们已经介绍了 CPU 如何执行从可执行文件加载的机器代码、什么是基于环的安全性以及系统调用如何工作。在本节中,我们将深入了解 Linux 内核,首先了解程序是如何加载和运行的。我们将专门研究 x86-64 上的 Linux。为什么?Linux 是一款功能齐全的生产操作系统,适用于桌面、移动和服务器用例。Linux 是开源的,因此只需阅读其源代码就可以非常容易地进行研究。我将在本...
September 1, 2023

第二章:多任务处理

假设您正在构建一个操作系统,并且希望用户能够同时运行多个程序。不过,您没有精美的多核处理器,因此您的 CPU 一次只能运行一条指令!幸运的是,您是一位非常聪明的操作系统开发人员。您发现可以通过让进程轮流使用 CPU 来伪造并行性。如果您循环遍历这些进程并运行每个进程中的几条指令,那么它们都可以响应,而不会出现任何单个进程占用 CPU 的情况。但是如何从程序代码中夺回控制权来切换进程呢?经过一...
August 31, 2023

第一章:基础知识

在撰写本文时,让我一次又一次感到惊讶的一件事是计算机是多么简单。我仍然很难不让自己感到兴奋,期待比实际存在的更复杂或抽象!如果在继续之前你应该记住一件事,那就是一切看似简单的事情实际上就是那么简单。这种简单性非常美丽,但有时又非常非常令人讨厌。让我们从计算机的核心工作原理开始。计算机是如何设计的计算机的中央处理单元(CPU)负责所有计算。这是大奶酪。沙赞阿拉卡布拉姆。当你启动计算机时,它就会...
August 31, 2023

计算机上运行程序时到底会发生什么

从头开始……我用计算机做了很多事情,但我的知识始终有一个空白:当你在计算机上运行程序时到底会发生什么?我思考了这个差距——我拥有大部分必需的低级知识,但我正在努力将所有内容拼凑在一起。程序真的是直接在 CPU 上执行吗,还是另有原因?我使用过系统调用,但它们是如何工作的?它们到底是什么?多个程序如何同时运行?我崩溃了,开始尽可能多地思考。如果您不上大学,那么综合的系统资源并不多,因此我必须筛...
August 30, 2023

搜索引擎如何工作

第1部分 搜索引擎基础知识 让我们首先探讨什么是搜索引擎、它们为何存在以及它们如何赚钱。 什么是搜索引擎?搜索引擎是可搜索的网络内容数据库。它们由两个主要部分组成: 搜索索引。有关网页的数字信息库。 搜索算法。负责匹配搜索索引结果的计算机程序。搜索引擎的目的是什么?每个搜索引擎都旨在为用户提供最好、最相关的结果。这在一定程度上是他们获得市场份额的方式。搜索引擎如何赚钱?搜索引擎有两种类型的搜...
August 30, 2023

初学者的 Guide to SEO 搜索引擎优化指南

如果你想学习SEO,你来对地方了。这本初学者指南由七章组成,包含了解SEO基础知识并开始排名所需的一切。第1章、搜索引擎如何工作在开始学习SEO之前,您需要了解搜索引擎的工作原理。第2章、SEO 基础知识了解如何为SEO成功设置您的网站,并掌握SEO的四个主要方面。第3章 关键词研究SEO的出发点是了解您的目标客户在搜索什么。第4章、搜索引擎优化内容了解如何创建在搜索引擎中排名的内容。第5章...
August 16, 2023

索引的力量:利用 Pandas 提高数据整理效率

介绍Pandas 是使用最广泛的 Python 数据操作库,它使我们能够有效地访问和操作数据。通过在 Pandas 中有效地理解和利用索引技术,我们可以显着提高数据整理任务的速度和效率。在本文中,我们将探索 Pandas 中的各种索引技术,并将了解如何利用它们来更快地进行数据整理。在 Pandas 中引入索引Pandas 库提供了两个主要对象:Series 和 DataFrame。Panda...