算法和数据结构
1. 复杂度和简单排序算法时间复杂度 常数时间操作:与样本的数据量没有关系,每次都是固定时间内完成的操作 时间复杂度:bigO,在表达式中f(N)中只要高阶项,不要高阶项系数以及低阶项,得到时间复杂度O(f(N)) 评价一个算法流程的好坏: 时间复杂度 常数项时间(不同数据样本)
Shell实验
这个实验需要我们在tsh.c中补充相关代码实现一个shell程序(废话ing)那么根据README文档中的顺序进行补齐 添加相关的宏定义和头文件 12345#define _POSIX_C_SOURCE 199309L#define _XOPEN_SOURCE 500#include <sys/select.h>#include <sys/time.h> eval 解析和解释命令行的主例程 1. 实现内容 若用户请求的是内置命令(quit、jobs、bg 或 fg)则立即执行。否则,创建一个子进程并在该子进程的上下文中运行该任务 若任务在前台运行,等待其终止后再返回 每个子进程必须具有唯一的进程组ID,这样在键盘上输入ctrl-c(ctrl-z)时,后台运行的子进程就不会从内核接收SIGINT(SIGTSTP)信号 2. 代码实现12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758//...
NEMU_PA3
第一次没过破防了决定直接一部到胃一起写必做一和选做一 1. 概述 根据指导书可知,我们需要实现一级高速缓存和二级告诉缓存,其中l2会多一个脏标签的处理 公式:C=B* E *S (E缓存块 B字节 S组 C总大小) l1: E=8 B=64 C=64*1024 S=128 l2: E=8 B=64 C=4*1024 *1024 S=4096 Address: tag: t bits set index: s bits block offset: b bits l1: b=6 s=7 l2: b=6 s=12 2. 实现 定义高速缓存的结构(nemu/include/memory/cache.h) 12345678910111213141516171819202122232425262728293031323334#include <stdint.h>#define CACHE_b 6 ...
本地部署AI
Windows环境 下载windows版的ollama,安装ollama官网 打开cmd,输入ollama,出现如下即为安装成功 返回ollama官网,下载deepseek-r1 有显卡可以选择7b,无独显选择1.5b 复制上方代码:(以7b为例) 1ollama run deepseek-r1:7b 可以直接通过终端对话 安装cherry studio实现图形化(x64)Cherry Studio官网 打开Cherry Studio,打开设置,选择ollama,打开开关并添加deepseek 再回到对话首页即可使用
SQL注入攻击
概述 在服务器向数据库进行数据查询时,不输入正常的数据,输入代码,使数据查询变成代码执行 sql语言(部分): 选取表格中所有内容 1select * from allusers 选取指定的用户名和密码 1where username = 'QingMaxLim' And passwd = 'passwd' where关键字 SQL语句遇到where关键词时,会判断条件是真是假 某个神奇的指令 1DROP DATABASE TABLICE --删除整个数据库 5.SQL合并两个表格的内容: 1select * from table1 Union select * from table2 报错与注释 多’ 1where username = 'QingMaxLim'' And passwd = 'passwd' 执行时将’’中的视为字符数据,而不是操作符,此条语句报错,服务器可能将SQL报错信息直接返回给用户2. ‘后有– 1where username = '...
buuctf-web-wp
[极客大挑战2019]EasySQL12admin' or 1=1#123456 ‘#’是注释符,相当于 1SELECT * FROM users WHERE username='admin' or 1=1 --' AND password='123' [极客大挑战2019]Havefun1查看网页源代码,有注释 1234567 <!--$cat=$_GET['cat']; // 从URL的GET参数中获取名为'cat'的值echo $cat; // 输出这个值if($cat=='dog'){ // 如果获取到的值等于字符串'dog' echo 'Syc{cat_cat_cat_cat}'; // 就输出这个看起来像flag的字符串}--> 在url中添加get参数为cat=dog [ACTF2020新生赛]...
ubuntu+dwm试水
安装1. 1sudo apt install apt-src 在软件更新器中勾选源代码选项 123456sudo sumkdir srcpkgscd srcpkgsapt-src updateapt-src install dwmls 1234cd dwm-6.1cd debiancd desktopls 退回srcpkgs目录 1234apt-src build dwmdpkg -i dwm_6.1-5_amd64.debapt install htophtop 退出htop5. log out,然后在登陆界面选择dwm
Cookie,Session,Token
http无状态协议 cookie 服务端产生内容,发送浏览器保存本地,cookie可以被来回传递,主要用于记录用户的会话状态、身份验证、跟踪用户的行为 优点: 在浏览器和服务器间来回传递,适用于跟踪用户行为 可以手动设置过期时间,灵活调节存储时间 缺点: 每次请求都携带cookie数据,增加流量浪费性能 在http中明文传输不够安全,容易被篡改 存储容量小,一般为4KB 应用场景:在客户端和服务器之间共享数据 + 长期存储 session(会话) 开始:浏览器访问服务器 结束:比较模糊 不同网站对与用户的会话都设定了时间(结束会话)以及唯一的ID(session ID) 一般保存在数据库中 服务器把session ID和会话结束时间发送给浏览器(cookie) localStorage(类似sessionStorage) html5引入,web API 允许在浏览器中长期存储键值对数据,不随http请求发送到服务器 优点: 存储容量较大,一般为5M 存储的数据在客户端浏览器可以永久保存,不担心丢失 操作方便,API友好,能通过JS直接访问 缺点: 一网站只...
gdb用法
关于写计组作业的一点总结 1.启动1gdb test1 2.一些基本命令123456789101112b main # 断点info b # 查看断点delete # 删除断点run ans.txt # 运行next # n 单步执行(不进入函数)stepi # s 单步执行(进入函数)p # 打印backtrace # 查看调用栈c # continue 继续运行finish # 结束当前函数,返回函数调用点kill # 杀死当前的调试进程disas function # 反汇编function函数 3.其他命令1layout asm
网络编程
挖个坑先,欸嘿~ 计算机网络简述计算机网络概述分组交换 通过标有地址的分组进行路由选择传送数据,使通信通道仅在传送期间被占用的一种交换方式分组的组成 每个分组都由 首部 和 数据段 组成 交换方式 存储转发 节点收到分组,先暂时存储下来,在检查首部,按首部中的目的地址,找到合适的节点转发出去 特点: 1.以分组作为传输单位 2.独立选择转发路由 3.逐段占用,动态分配传输带宽 多级结构Internet TCP/IP协议 (计算机网络的世界语)分层结构 为了使各种不同计算机之间可以互联。ARPANet指定了一套计算机通信协议,即TCP/IP协议(族) 为了减少协议设计的复杂性,大多数网络模型均采用分层的方式来组织 1.每一层利用下一层提供的服务来为上一层提供服务 2.本层服务的实现细节对上层屏蔽 TCP/IP协议的四层 应用层:应用程序间沟通的层 FTP(文件传输),Telnet(远程),HTTP(超文本)等 传输层:提供进程间的数据传送服务,负责传送数据,提供应用程序端到端的逻辑通信 TCP,UDP 网络层:提供基本的数据封包传送功能,最大可...









