OS_feature

操作系统的特征:

  • 并发:
    - 两个或多个事件同一时间间隔内发生。宏观上同时发生微观上交替发生
    - 易混淆概念: 并行: 两个或多个同一时刻发生
    操作系统的并发性指计算机系统中同时存在着多个运行的程序。
    一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行
    事实上,操作系统是伴随着“多道程序技术”而出现的。因此**,操作系统和程序并发是一起诞生的**。
  • 共享:
    • 资源共享,系统中的资源可供内存中多个并发执行的进程共同使用。
      两种资源共享方式:
      • 互斥共享:
        • 系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源
      • 同时共享:
        • **允许一个时间段内,由多个进程“同时”访问
        • “同时”往往是宏观上的,交替访问(分时共享)
          eg:
        • 互斥: QQ 和微信视频,
        • 同时: QQ发送文件A,同时微信发送文件B。宏观上同时发送文件,说明两个进程在访问硬盘资源。
  • 虚拟:
    • 把物理上的实体变为若干个逻辑上的对应物。物理实体是实际存在的,逻辑上的对应物是用户感受到的。
      补充:一个程序需要放入内存并给他分配CPU才能执行
    • 某些程序运行内存远超4G,而我电脑只有4G内存,为何他们可以同时在我电脑上运行?
      原因:这是虚拟存储技术。采用的是“空分复用技术”
    • 多个程序一起运行
      原因:虚拟处理器技术。“时分复用”:微观上处理机在各个微小时间段内交替为各个进程服务。
  • 异步:
    • 多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底,以不可预知的速度向前推进,这就是进程的异步性。

关系:

并发和共享为两个最基本的特征,互为存在条件
- 两个进程正在并发执行(并发性) 如果失去并发性,系统只有一个程序在运行,则共享性失去存在的意义
- 需要共享访问硬盘资源(共享性) 如果失去共享性,QQ和微信不能同时访问硬盘资源,无法同时发送文件
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
def evaluate(self, datloader_Test): Image_Feature_ALL = [] Image_Name = [] Sketch_Feature_ALL = [] Sketch_Name = [] start_time = time.time() self.eval() for i_batch, sampled_batch in enumerate(datloader_Test): sketch_feature, positive_feature = self.test_forward(sampled_batch) Sketch_Feature_ALL.extend(sketch_feature) #草图特征 模型的 Sketch_Name.extend(sampled_batch['sketch_path']) #草图名 for i_num, positive_name in enumerate(sampled_batch['positive_path']): #遍历正例图像 if positive_name not in Image_Name: Image_Name.append(positive_name) Image_Feature_ALL.append(positive_feature[i_num]) rank = torch.zeros(len(Sketch_Name)) Image_Feature_ALL = torch.stack(Image_Feature_ALL) Image_Feature_ALL = Image_Feature_ALL.view(Image_Feature_ALL.size(0), -1) for num, sketch_feature in enumerate(Sketch_Feature_ALL): s_name = Sketch_Name[num] sketch_query_name = os.path.basename(s_name) # 提取草图路径中的文件名作为查询名称 position_query = -1 for i, image_name in enumerate(Image_Name): if sketch_query_name in os.path.basename(image_name): # 提取图像路径中的文件名进行匹配 position_query = i break if position_query != -1: sketch_feature = sketch_feature.view(1, -1) distance = F.pairwise_distance(sketch_feature, Image_Feature_ALL) target_distance = F.pairwise_distance(sketch_feature, Image_Feature_ALL[position_query].view(1, -1)) rank[num] = distance.le(target_distance).sum() top1 = rank.le(1).sum().item() / rank.shape[0] top10 = rank.le(10).sum().item() / rank.shape[0] print('Time to Evaluate: {}'.format(time.time() - start_time)) return top1, top10
07-16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值