第一篇:虚存管理OS实验[推荐]
实验三 虚存管理
一、实验目的
1.加深对存储管理概念的理解。
2.深入了解Windows内存管理机制。
3.理解内存分配原理,特别是以页面为单位的虚拟内存分配方法。4.掌握页式虚拟存储技术。
5.掌握“最不频繁使用淘汰算法”,即LFU页面淘汰算法。
二、理论基础
1.页式存储管理技术。2.虚拟存储管理技术。
三、实验要求
1.编写程序实现简单的虚存管理。
2.实验具体包括:(1)设计并实现一个虚存管理程序,模拟一个单道程序的页式存储管理,用一个一维数组模拟实存空间,用一个文本文件模拟辅存空间;(2)建立一张一级页表;
(3)编写函数随机产生访存请求,访存操作包括读取、写入、执行等三种类型;(4)编写函数响应访存请求,完成虚地址到实地址的定位及读/写/执行操作,同时判断并处理缺页中断;(5)实现LFU页面淘汰算法。3.实验结束提交书面实验报告。
四、实验环境
1.运行Windows操作系统的PC机一台。
2.PC机上安装Visual C++ 6.0开发工具软件。
五、实验内容
1.2.3.4.建立“Win32 Console Application”工程“vmm”。建立“C/C++ Header File”头文件“vmm.h”,文件内容参见“程序代码”。建立“C++ Source File”源文件“vmm.cpp”,文件内容参见“程序代码”。建立“Text File”文本文件“vmm_auxMem.txt”,模拟辅存空间,文件内容可以输入任意字符(字符数多于512个)。
5.运行程序并认真观察和分析程序的运行结果。
七、程序代码
头文件“vmm.h” #ifndef VMM_H #define VMM_H
/* 模拟辅存的文件路径 */ #define AUXILIARY_MEMORY “vmm_auxMem.txt”
/* 页面大小(字节)*/
#define PAGE_SIZE 4 /* 虚存空间大小(字节)*/ #define VIRTUAL_MEMORY_SIZE(64 * 4)/* 实存空间大小(字节)*/
#define ACTUAL_MEMORY_SIZE(32 * 4)/* 总虚页数 */ #define PAGE_SUM(VIRTUAL_MEMORY_SIZE / PAGE_SIZE)/* 总物理块数 */ #define BLOCK_SUM(ACTUAL_MEMORY_SIZE / PAGE_SIZE)
/* 可读标识位 */ #define READABLE 0x01u /* 可写标识位 */ #define WRITABLE 0x02u /* 可执行标识位 */ #define EXECUTABLE 0x04u
/* 页表项 */ typedef struct { unsigned int blockNum;//物理块号
BOOL filled;//页面装入特征位
BYTE proType;//页面保护类型
BOOL edited;//页面修改标识
unsigned long auxAddr;//外存地址 unsigned long count;//页面使用计数器
} PageTableItem, *Ptr_PageTableItem;
/* 访存请求类型 */ typedef enum {
REQUEST_READ, REQUEST_WRITE,REQUEST_EXECUTE } MemoryAccessRequestType;
/* 访存请求 */ typedef struct { MemoryAccessRequestType reqType;//访存请求类型
unsigned long virAddr;//虚地址 BYTE value;//写请求的值
} MemoryAccessRequest, *Ptr_MemoryAccessRequest;
/* 访存错误代码 */
typedef enum { ERROR_READ_DENY, //该页不可读
ERROR_WRITE_DENY, //该页不可写
ERROR_EXECUTE_DENY, //该页不可执行
ERROR_INVALID_REQUEST, //非法请求类型
ERROR_OVER_BOUNDARY, //地址越界
ERROR_FILE_OPEN_FAILED, //文件打开失败 ERROR_FILE_CLOSE_FAILED, //文件关闭失败 ERROR_FILE_SEEK_FAILED, //文件指针定位失败 ERROR_FILE_READ_FAILED, //文件读取失败 ERROR_FILE_WRITE_FAILED //文件写入失败
} ERROR_CODE;
/* 产生访存请求 */ void do_request();/* 响应访存请求 */ void do_response();/* 处理缺页中断 */ void do_page_fault(Ptr_PageTableItem);/* LFU页面替换 */ void do_LFU(Ptr_PageTableItem);/* 装入页面 */ void do_page_in(Ptr_PageTableItem, unsigned int);/* 写出页面 */ void do_page_out(Ptr_PageTableItem);/* 错误处理 */ void do_error(ERROR_CODE);/* 打印页表相关信息 */ void do_print_info();/* 获取页面保护类型字符串 */ char *get_proType_str(char *, BYTE);#endif
源文件“vmm.cpp” #include
/* 页表 */ PageTableItem pageTable[PAGE_SUM];/* 实存空间 */
BYTE actMem[ACTUAL_MEMORY_SIZE];/* 用文件模拟辅存空间 */ FILE *ptr_auxMem;/* 物理块使用标识 */ bool blockStatus[BLOCK_SUM];/* 访存请求 */ Ptr_MemoryAccessRequest ptr_memAccReq;
/* 初始化环境 */ void do_init(){
srand((unsigned int)time(NULL));for(int i = 0;i < PAGE_SUM;i++){
pageTable[i].filled = false;pageTable[i].edited = false;pageTable[i].count = 0;/* 使用随机数设置该页的保护类型 */ switch(rand()% 7){
case 0: { pageTable[i].proType = READABLE;break;} case 1: { pageTable[i].proType = WRITABLE;break;} case 2: {
} {
} case 4: { pageTable[i].proType = READABLE | EXECUTABLE;pageTable[i].proType = EXECUTABLE;break;case 3:
pageTable[i].proType = READABLE | WRITABLE;break;
break;} case 5: { pageTable[i].proType = WRITABLE | EXECUTABLE;
} case 6: {
} pageTable[i].proType = READABLE | WRITABLE | EXECUTABLE;break;break;default: break;
} /* 设置该页对应的辅存地址,本程序为实现简单采用顺序设置的方式,可替换成其他设置方式,但须注意每个页表项对应的辅存地址均应为PAGE_SIZE的整数倍 */
}
/* 响应请求 */ void do_response(){
} {
} pageTable[i].auxAddr = i * PAGE_SIZE * 2;for(int j = 0;j < BLOCK_SUM;j++)/* 随机选择一些物理块进行页面装入 */ if(rand()% 2 == 0){ do_page_in(&pageTable[j], j);pageTable[j].blockNum = j;pageTable[j].filled = true;blockStatus[j] = true;} else blockStatus[j] = false;Ptr_PageTableItem ptr_pageTabIt;unsigned int pageNum, offAddr;unsigned int actAddr;
/* 检查地址是否越界 */ if(ptr_memAccReq->virAddr < 0 ||
{
} ptr_memAccReq->virAddr >= VIRTUAL_MEMORY_SIZE)do_error(ERROR_OVER_BOUNDARY);return;
/* 计算页号和页内偏移值 */ pageNum = ptr_memAccReq->virAddr / PAGE_SIZE;offAddr = ptr_memAccReq->virAddr % PAGE_SIZE;printf(“页号为:%ut页内偏移为:%un”, pageNum, offAddr);/* 获取对应页表项 */ ptr_pageTabIt = &pageTable[pageNum];
/* 根据特征位决定是否产生缺页中断 */ if(!ptr_pageTabIt->filled){ }
actAddr = ptr_pageTabIt->blockNum * PAGE_SIZE + offAddr;printf(“实地址为:%un”, actAddr);
/* 检查页面访问权限并处理访存请求 */ switch(ptr_memAccReq->reqType){
case REQUEST_READ: //读请求 {
ptr_pageTabIt->count++;if(!(ptr_pageTabIt->proType & READABLE))//页面不可读 { do_error(ERROR_READ_DENY);do_page_fault(ptr_pageTabIt);return;} /* 读取实存中的内容 */ printf(“读操作成功:值为%02Xn”, actMem[actAddr]);break;} case REQUEST_WRITE: //写请求 {
ptr_pageTabIt->count++;if(!(ptr_pageTabIt->proType & WRITABLE))//页面不可写 { do_error(ERROR_WRITE_DENY);
}
return;} /* 向实存中写入请求的内容 */ actMem[actAddr] = ptr_memAccReq->value;ptr_pageTabIt->edited = true;
printf(“写操作成功n”);break;} case REQUEST_EXECUTE: //执行请求 {
ptr_pageTabIt->count++;if(!(ptr_pageTabIt->proType & EXECUTABLE))//页面不可执行 { do_error(ERROR_EXECUTE_DENY);return;}
printf(“执行成功n”);break;} default: //非法请求类型 {
}
do_error(ERROR_INVALID_REQUEST);return;}
/* 处理缺页中断 */ void do_page_fault(Ptr_PageTableItem ptr_pageTabIt){ printf(“产生缺页中断,开始进行调页...n”);
for(unsigned int i = 0;i < BLOCK_SUM;i++){
if(!blockStatus[i]){
/* 读辅存内容,写入到实存 */ do_page_in(ptr_pageTabIt, i);
/* 更新页表内容 */ ptr_pageTabIt->blockNum = i;ptr_pageTabIt->filled = true;ptr_pageTabIt->edited = false;ptr_pageTabIt->count = 0;
}
blockStatus[i] = true;
return;} } /* 没有空闲物理块,进行页面替换 */ do_LFU(ptr_pageTabIt);
/* 根据LFU算法进行页面替换 */ void do_LFU(Ptr_PageTableItem ptr_pageTabIt){
}
/* 将辅存内容写入实存 */ void do_page_in(Ptr_PageTableItem ptr_pageTabIt, unsigned int blockNum)printf(“没有空闲物理块,开始进行LFU页面替换...n”);for(unsigned int i = 0, min = 0xFFFFFFFF, page = 0;i < PAGE_SUM;i++){
if(pageTable[i].count < min){
} min = pageTable[i].count;page = i;} printf(“选择第%u页进行替换n”, page);if(pageTable[page].edited){ /* 页面内容有修改,需要写回至辅存 */ printf(“该页内容有修改,写回至辅存n”);} do_page_out(&pageTable[page]);pageTable[page].filled = false;pageTable[page].count = 0;/* 读辅存内容,写入到实存 */ do_page_in(ptr_pageTabIt, pageTable[page].blockNum);
/* 更新页表内容 */ ptr_pageTabIt->blockNum = pageTable[page].blockNum;ptr_pageTabIt->filled = true;ptr_pageTabIt->edited = false;ptr_pageTabIt->count = 0;printf(“页面替换成功n”);
{
unsigned int readNum;if(fseek(ptr_auxMem, ptr_pageTabIt->auxAddr, SEEK_SET)< 0){ exit(1);} if((readNum = fread(actMem + blockNum * PAGE_SIZE,{ sizeof(BYTE), PAGE_SIZE, ptr_auxMem))< PAGE_SIZE)exit(1);} printf(“调页成功:辅存地址%u-->>物理块%un”, ptr_pageTabIt->auxAddr, blockNum);}
/* 将被替换页面的内容写回辅存 */ void do_page_out(Ptr_PageTableItem ptr_pageTabIt){ unsigned int writeNum;
} if(fseek(ptr_auxMem, ptr_pageTabIt->auxAddr, SEEK_SET)< 0){ exit(1);} if((writeNum = fwrite(actMem + ptr_pageTabIt->blockNum * PAGE_SIZE,sizeof(BYTE), PAGE_SIZE, ptr_auxMem))< PAGE_SIZE){ do_error(ERROR_FILE_WRITE_FAILED);exit(1);} printf(“写回成功:物理块%u-->>辅存地址%un”, ptr_pageTabIt->auxAddr, ptr_pageTabIt->blockNum);
/* 错误处理 */ void do_error(ERROR_CODE code){
switch(code){
case ERROR_READ_DENY: { printf(“访存失败:该地址内容不可读n”);break;} case ERROR_WRITE_DENY:
{ printf(“访存失败:该地址内容不可写n”);break;} case ERROR_EXECUTE_DENY: {
} {
} printf(“访存失败:该地址内容不可执行n”);break;
case ERROR_INVALID_REQUEST: printf(“访存失败:非法访存请求n”);break;case ERROR_OVER_BOUNDARY: { printf(“访存失败:地址越界n”);} { break;case ERROR_FILE_OPEN_FAILED: printf(“系统错误:打开文件失败n”);break;} case ERROR_FILE_CLOSE_FAILED: { printf(“系统错误:关闭文件失败n”);break;} case ERROR_FILE_SEEK_FAILED: {
} printf(“系统错误:文件指针定位失败n”);break;case ERROR_FILE_READ_FAILED: { printf(“系统错误:读取文件失败n”);} {
} break;case ERROR_FILE_WRITE_FAILED: printf(“系统错误:写入文件失败n”);break;
}
} default: { } printf(“未知错误:没有这个错误代码n”);
/* 产生访存请求 */ void do_request(){
}
/* 打印页表 */ void do_print_info(){ /* 随机产生请求地址 */ ptr_memAccReq->virAddr = rand()% VIRTUAL_MEMORY_SIZE;/* 随机产生请求类型 */ switch(rand()% 3){
} case 0: //读请求 {
ptr_memAccReq->reqType = REQUEST_READ;printf(“产生请求:n地址:%ut类型:读取n”, ptr_memAccReq->virAddr);break;} case 1: //写请求 {
} ptr_memAccReq->reqType = REQUEST_WRITE;/* 随机产生待写入的值 */ ptr_memAccReq->value = rand()% 0xFFu;printf(“产生请求:n地址:%ut类型:写入t值:%02Xn”,ptr_memAccReq->virAddr, ptr_memAccReq->value);break;case 2: {
} ptr_memAccReq->reqType = REQUEST_EXECUTE;printf(“产生请求:n地址:%ut类型:执行n”, ptr_memAccReq->virAddr);break;default: break;
} char str[4];printf(“页号t块号t装入t修改t保护t计数t辅存n”);for(unsigned int i = 0;i < PAGE_SUM;i++){ printf(“%ut%ut%ut%ut%st%ut%un”, i,}
pageTable[i].blockNum, pageTable[i].filled,pageTable[i].edited, get_proType_str(str, pageTable[i].proType), pageTable[i].count, pageTable[i].auxAddr);
/* 获取页面保护类型字符串 */ char *get_proType_str(char *str, BYTE type){
} if(type & READABLE)str[0] = 'r';else str[0] = '-';if(type & WRITABLE)else str[1] = '-';if(type & EXECUTABLE)str[2] = 'x';else str[2] = '-';str[3] = ' ';return str;str[1] = 'w';int main(int argc, char* argv[]){
if(!(ptr_auxMem = fopen(AUXILIARY_MEMORY, “r+”))){
}
do_init();do_print_info();do_error(ERROR_FILE_OPEN_FAILED);exit(1);ptr_memAccReq =(Ptr_MemoryAccessRequest)malloc(sizeof(MemoryAccessRequest));/* 在循环中模拟访存请求与处理过程 */
while(true){
}
} do_request();do_response();do_print_info();/* 随机休眠5~10秒 */ Sleep(5000 +(rand()% 5)* 5000);if(fclose(ptr_auxMem)== EOF){
} do_error(ERROR_FILE_CLOSE_FAILED);exit(1);return(0);
八、实验测试(程序运行结果显示)
第二篇:化学实验工作总结(任信存)
2011——2012学第二学期
化学实验室工作总结
——任信存
光阴似箭,一学期的工作快要结束了,本学期化学实验室在学校的领导下,秉承历来的优良传统、努力奋进,实验条件的不断改善,尽可能使实验室的服务功能达到最大化,更好地为教学服务,将本学期的工作总结如下:
一、有序管理
实验室的特点是教学仪器、药品、材料种类繁多,设备复杂,特别是易燃、易爆、毒害品的管理。新调入的器材药品,先检查验收,没问题后再使之进入实验室;标定橱目标签,做到教学仪器、药品存放定位,排列有序,取用方便安全;帮助任课教师准备实验教学仪器、药品,任课教师用完归还时检查核对;在期末认真清点仪器药品,完成了采购下学期所需要的药品和仪器。
二、落实制度
实验室的管理与使用必须严格遵照规章制度,才能使实验室管理的规范化得以实现,才能保障实验室教学的正常进行。本学期新开初三年级,在第一学生实验室张贴试验挂图辅助试验教学。在组织学生上第一节分组实验之前,认真学习各种规章制度。学生在实验中损坏了仪器,进行登记,大大增强学生爱护仪器的意识。在实验过程中要求学生严格遵守《学生实验守则》、《化学实验安全操作规范》,增强学生的安全意识。
三、科学保管 实验室管理的方方面面都应讲科学,用科学,做到科学化管理,仪器药品存放本着上轻、下重、防潮、防压、防晒、防霉、防锈蚀、防虫蛀、整洁美观的原则。要保管好各种仪器、药品,防止各种事故发生。如:
1、将药品分类入橱,对化学试剂的标签及时进行防腐处理。
2、仪器和药品分开存放,金属仪器远离药品。
3、在怕潮湿的药品橱内放置干燥剂。
4、带磨口的 玻璃仪器洗净凉干,在磨口处垫上纸片存放。
5、胶塞、胶管用后洗净阴干,撒上滑石粉、防晒及防止与有机试剂接触。
6、铁制器材使用后保持干燥,及时除锈,图上黄油或少量机油。并经常检查,发现问题及时解决。避免了意外事故的发生。一些有毒、易燃、易爆等危险品分类放入专柜。
四、用心工作
工作中我处处细心,时时留心。
1、做到“五查”:上班后首先检查实验室、准备室的水电是否关闭,门窗是否上锁,确保三室的安全;要经常检查灭火器、防火沙包是否齐备完好;经常检查实验室药品库通风设备是否完好使用;经常检查有毒、有毒、易燃、易爆等危险品是否存放好。
2、做到“四勤一备一及时”即玻璃仪器勤清洗;实验仪器勤保养;仪器、药品摆放勤整理;室内卫生勤打扫;急救药品材料要常备;发现仪器有损坏及时修理。强化“一个意识”。我对每个演示实验、分组实验中可能发生的危险因素考虑周全,在教师、学生实验之前,把实验中应注意的事项加以强调,并采取相应防范措施,以防突发事件发生,时刻把安全意识放到首位。
总之,实验室的工作千头万绪,实验室的管理水平永无止境,作为实验室工作人员,我尽职尽力,多动脑筋,多想办法,多阅读相关杂志,使自己的管理科学、更规范,以便更好地为教学服务。
第三篇:企业仓存管理规定
目的本程序规定了企业仓存管理方面的具体要求,旨在规范企业存货管理工作,提高存货周转水平并防范仓存管理过程中的各种风险。
政策和规定
2.1.1仓库设置
1、企业设置库存商品仓库,由专人进行管理,仓库管理人员负责商品的收入、发出和保管工作,不得兼办采购工作。
2、仓库管理人员对保管物品应分类或分批堆放,以便清查盘点,价值较大的,还应有相应的安全措施。
2.1.2采购货物验收程序
仓库管理人员对外购的物品应做好验收工作,按照合同和发票上载明的规格、数量、质量等要求与实物进行核对,开具“入库单”。“入库单”应载明收入物品的名称、规格、型号、产地、供应商、数量等内容,经仓库管理员、入库人、入库批准人签字方为有效。“入库单”一式四联,交财务部、采购部/行政部、仓库、入库单位各一联。
外购物品如货到但发票未到,也应按上述要求办理入库手续,若超过结账日或该物品已发出发票仍未收到时,由财务部根据合同或协议估价入账,待正式发票收到后,再进行调整。
2.1.3货物发货程序
1、销售货物
仓库管理人员应凭财务部下发的出库通知填制“出库单”,注明物品名称、规格、型号、用户名称和合同编号等内容,交财务部经理和行政部经理审核签字后,办理发货手续;
2、内部领用货物
公司各部门员工领用库存货物,应先填制内部领用申请单,由部门经理审核同意后到仓库办理领用手续,仓库管理人员凭此单办理出库手续,填制“出库单”,并交主管人员签字后交副本给财务部作相应账务处理。
2.1.5换货程序
物品发生退换,需经部门经理批准,采购部门鉴定退换货的原因是否是货物本身的质量问题或是客户用法不当造成,采购部门确定退换货的性质,即:收费或免费后,由财务经理/财务总监审批签字,按照办理相应的收入和发出手续,填制“出库单”或“入库单”时应与原业务发生时的方向一致。
2.1.6盘点
每月末和终了,由财务部监督仓库管理人员对库存物品进行清查盘点,编制盘点报告,并与财务记录进行核对,如发生盘盈或盘亏存货,应及时查明原因后报财务总监和部门副总作相应处理。
2.1.7账务管理
仓库应设立库存物品明细账,对存货按不同名称、规格、型号等进行记录,及时登记收入和发出的数量,结算账面库存,并经常与实物核对。
第四篇:物资收发存管理流程
[键入文字]
物资收发存管理流程
一、要求
建立健全的存货管理基础工作。对各种材料、存货物资的入库、发出、领退、生产耗用,产成品的完工入库等,都必须要有严格的验收、计量及管理,明确各节点工作职责,保证物资及时经济供应。
参照德国ARCA物资编码体系,给所有物资标准统一编码。待公司系统建立时,给物料建立一套完整的编码体系。
二、物资收货流程
1、采购人员、商务人员提前将到货预告信息通知仓库管理员,并在入库前下达《入库通知单》(见附表1)。
2、仓库管理员应及时将到货信息必要时报送生产车间,并申请卸货机具及人力。
3、生产车间收到仓库管理员卸车请求后,应根据到货物资属性、到货时间及数量,妥善安排合适的卸货机具和人力。
4、仓库管理员对到货物资进行数量、质量和随机资料的初步验收,并在《入库通知单》上填写到货实收情况。并通知质量部对入库物资进行验收并出具《来料验收报告》。根据检验情况反馈给仓库管理员,仓库管理员根据实际情况办理入库手续,《来料验收报告》库管及质量部各留存一份。
5、仓库管理员或者验收人员在验收时如发现数量、质量问题,或名称规格、型号不符、包装不良造成物资损坏,要保留原包装,拍照做好记录,及时向采购、商务人员告知,由采购人员或商务人员追溯处理。
6、《入库通知单》一式三份,采购人员或商务人员、仓库管理员、财务部门各一份。
7、仓库管理员把物资分门别类放入仓库摆放整齐。待物料号完善后再对物资进行编码。
8、仓库管理员及时将实际收货信息录入存货台账。
[键入文字]
[键入文字]
三、物资发货流程
1、销售部门、生产车间、售后服务部根据实际需要,填写《出库通知单》到仓库领料。
2、仓库管理员凭《出库通知单》发料,并按实际发货数量填写《出库通知单》(见附表2)一式三份,申请人员、仓库管理员、财务部门各执一份。
3、直接销售的备品,商务人员提供发货信息给仓库管理员,仓库管理员根据发货信息打包及交给快递公司。如需申请人力,请求生产车间协助或相关人员配合。
4、发货品种、数量不得超出《出库通知单》范围。发货完成后,仓库管理员负责将发货信息录入存货台账。
四、物资领出退回流程
1、生产、售后领出多余物资、销售退回物资,要实行退料制度,由退料部门列出清单,写明原因,经部门负责人审核同意后,仓库管理员红笔填写《入库通知单》(见附表3),以示区分,一式三份,退货部门、仓库管理员、财务部门各执一份。
2、仓库管理员及时凭红字《入库通知单》核收实物并办理入库登记。
五、回收旧物资管理流程
因各种原因回收旧物资,经质量部和技术部评估是否可再循环利用,根据评估结果,可再利用的,参照收货流程办理入库手续,专区摆放,并录入利旧存货台账。
六、库存信息的流转
1、申请人填好《入库通知单》、《出库通知单》以邮件形式发送仓库管理员并抄送财务等相关人员。
2、仓库管理员根据收到的申请信息,核对货物信息填写完整《入库通知单》、《出库通知单》并分送相关部门人员。
3、查阅库存数量信息,由申请人和仓库管理员自行沟通。
[键入文字]
[键入文字]
4、仓库管理员应及时更新电子出入库台账信息。
XXXX设备(上海)有限公司 2018年7月18日
[键入文字]
第五篇:企业仓存管理规定
企业仓存管理规定 目的
本程序规定了企业仓存管理方面的具体要求,旨在规范企业存货管理工作,提高存货周转水平并防范仓存管理过程中的各种风险。政策和规定 2.1.1仓库设置
1、企业设置库存商品仓库,由专人进行管理,仓库管理人员负责商品的收入、发出和保管工作,不得兼办采购工作。
2、仓库管理人员对保管物品应分类或分批堆放,以便清查盘点,价值较大的,还应有相应的安全措施。2.1.2采购货物验收程序
仓库管理人员对外购的物品应做好验收工作,按照合同和发票上载明的规格、数量、质量等要求与实物进行核对,开具“入库单”。“入库单”应载明收入物品的名称、规格、型号、产地、供应商、数量等内容,经仓库管理员、入库人、入库批准人签字方为有效。“入库单”一式四联,交财务部、采购部/行政部、仓库、入库单位各一联。
外购物品如货到但发票未到,也应按上述要求办理入库手续,若超过结账日或该物品已发出发票仍未收到时,由财务部根据合同或协议估价入账,待正式发票收到后,再进行调整。2.1.3货物发货程序
1、销售货物
仓库管理人员应凭财务部下发的出库通知填制“出库单”,注明物品名称、规格、型号、用户名称和合同编号等内容,交财务部经理和行政部经理审核签字后,办理发货手续;
2、内部领用货物
公司各部门员工领用库存货物,应先填制内部领用申请单,由部门经理审核同意后到仓库办理领用手续,仓库管理人员凭此单办理出库手续,填制“出库单”,并交主管人员签字后交副本给财务部作相应账务处理。2.1.5换货程序
物品发生退换,需经部门经理批准,采购部门鉴定退换货的原因是否是货物本身的质量问题或是客户用法不当造成,采购部门确定退换货的性质,即:收费或免费后,由财务经理/财务总监审批签字,按照办理相应的收入和发出手续,填制“出库单”或“入库单”时应与原业务发生时的方向一致。2.1.6盘点
每月末和终了,由财务部监督仓库管理人员对库存物品进行清查盘点,编制盘点报告,并与财务记录进行核对,如发生盘盈或盘亏存货,应及时查明原因后报财务总监和部门副总作相应处理。2.1.7账务管理
仓库应设立库存物品明细账,对存货按不同名称、规格、型号等进行记录,及时登记收入和发出的数量,结算账面库存,并经常与实物核对
材料及低值易耗品管理规定
为贯彻执行勤俭办学的方针,加强学院材料、低值易耗品(以下简称物品)的科学管理和合理使用,防止丢失、积压浪费,保证教学、科研和其它工作的顺利进行,特制定本规定。
一、学院的物品应根据统一领导、分工管理、专人负责、合理调配、节约使用的原则加强管理,做到手续简化、管理严格、使用方便。
二、设备处作为学院物品管理的职能部门,负责全院物品分类分户总帐的管理工作和学院教学科研物品的申购、审批、供应、调拨、报损报废及其它管理工作。
三、学院除后勤服务中心、设备处以及教科物品较多的部门可设立物品仓库外,其他部门一般不设专用库房。
四、物品的范围、分类 物品的范围包括学院教学、科研、行政、后勤、生产等方面使用的不属于固定资产范畴的物资,它包括:
1、材料:指金属、非金属的各种原材料、燃料、试剂等;
2、低值品:指不够固定资产标准又不属于材料范围,其耐用期一年以上,可构成独立使用、重复使用的家具及设备,如低值仪器仪表、工具、量具、标本、模型、科教器具和一般器具等;
3、易耗品:指玻璃器皿、元件、零配件、实验小动物等易损耗的物品。
学院物品的一级分类(分类目录附后)应按国家教委的统一规定,不得随意更改。
五、物品的采购
1、材料、低值易耗品的购置,每批次计1000元之内,由购置单位领导审批,每批次计1000元(含1000元)以上,由设备物资管理部门审批。
2、经批准的购置计划,不得随意变动。
3、物品采购进校后,应认真组织验收,及时办理入库手续。验收合格后,凭入库单、发票经使用单位资产管理员签字到设备处或后勤管理处办理登帐手续后,方能到财务处(或财务部门)报帐。
六、物品的管理
1、学院的物品均应按国家教委规定的一级分类进行管理。设备科应建立按一级分类的分户帐及汇总进行有数量有金额的记帐管理;各使用单位及仓库管理人员应建立本单位的二级分类帐和明细帐,及时做好物品的增减记录;学院财务处(或财务部门)办理物品的报帐并按有关的财务规定科目分类设置总帐。
2、各单位应制订物品管理员和仓库保管员的岗位职责。
物品管理人员应严格按学院物品帐册的要求做好登帐工作,并于每年12月份和设备处进行对帐。仓库保管员对所保管的物品应做到科学管理、存放有序、整洁方便、帐物相符。
3、物品领用、借用应根据工作需要由使用人填写领用或借用单,经负责人批准后方能领出。领用单和借用单,作为记帐的依据应妥善保管,如使用人调离或其它原因离开原工作岗位,所借用的物品应予归还或办清手续。
4、易燃、易爆、有毒以及贵重稀缺物品,应按存放要求严加保管,履行领、借用手续,精确记载数量,严格控制其使用、消耗的数量,余、废物品均应按要求妥善处理。
5、各单位长期闲置、多余的物品,设备处可办理调拨、让售,并予以销帐,所收款项应列入学院教学、科研购置经费。
6、物品的丢失、损坏、盘亏,应区分情况,按照学院有关赔偿办法进行处理。
7、对确实失去使用功效的物品,可予以报废。报损、报废的物品应由使用单位填写“物品报废申请单”,由有关单位和人员提出意见,经设备处同意后方可处理。
七、独立进行经济核算的后勤服务中心,可参照本规定按后勤管理处的要求管理本单位的物品。
附:物品一级分类目录 材料
一、黑色金属;
二、有色金属、稀有金属;
三、煤炭及石油产品;
四、木材;
五、水泥;
六、化工原料及试剂;
七、建筑材料。易耗品
一、玻璃仪器及器皿;
二、各种元件、器件、零配件;
三、实验用小动物;
四、劳动保护用品; 五、三类物资。低值品
一、低值仪器、仪表、教具;
二、低值工具和量具;
三、低值文艺、体育用品。
仓库物资管理制度
一、认真贯彻执行国家的经济政策和各项规章制度,遵守财经纪律,任何人不能以权谋私,假公济私,损害国家集体利益。
二、加强计划管理,通过会计核算及正确地反映计划执行情况。每月报计划、由领导批准,方可采购。库存物资额不得超过25~30万元,保证全院供应工作,防止积压。
三、一切物资入库时,必须在规定时间办理验收入库手续。入库前,必须检验数量、质量、规格、型号、合格方可入库。入库的物资设备、说明书资料不齐全或质量、数量、规格不符时,不得入库,由采购人员负责与供货单位联系处理。
四、仓库管理要做到三清、两齐、四号定位和九不,即①三清:规格清、材质清、数量清;②两齐:库容整齐、摆放整齐;③四号定位:按物类或设备的库号、架号、格号、位号存放;④九不:不锈、不潮、不冻、不腐、不霉、不变质、不坏、不漏、不爆。
五、定期编制仓库与设备物资库存情况报表:月、季报仓库的账、卡。一切报表应符合规定,账物相符,并按国家规定的产品目录顺序排列好台账。报表要准确,并与财务相符。
六、物资发放须按计划执行,并且有一定批准手续,不符合手续的不得发放,并保存好原始凭证。
七、各科室使用的一切物资要有专人领取和专人管理,严格物资领用制度,物资出入要有一定手续,建立台账,做到合理使用,杜绝浪费。
八、及时掌握市场信息,根据医院临床、维修等方面的需要和保质、保量、齐全配套、经济合理、保障供应的原则,做好预测和采购的决策。
九、采购工作必须做到坚持原则,掌握标准、执行制度,严格财经纪律,不允许有损公肥私的现象存在,做到无计划不采购,质量规格不明不采购,价格不合理不采购。采购物资做到及时、准确、质量高。
十、库存物资必须按国家规定合理损耗。低值易耗物、仓库报废物资必须每月或每季度一报。经财务、审计等部门查看、审核报分管院长审批后报废,由财务科处理账务。如有损耗,查明原因写出报告,经院长审批后做财务处理。
十一、严格执行仓库岗位责任制,无关人员不准进入库内,库内禁止烟火。因工作玩忽职守造成物资损坏、仓库被盗者,视情节轻重给予严肃处理。
十二、物资出入库必须点数、过称、做到账、卡、物相符。物资不得出现损坏、变质、短缺等现象。
成品库管理规定
发布时间:2006-9-21 11:22:48 作者:未知
发布者:iqcqwww 人气:
380 目的和适用范围
为确保产品在交付到顾客手中之前不受损,杜绝产品在入库、包装、搬运、贮存、防护、交付等过程中的违章作业。确保库内财产及人身安全,特制定本管理程序。适用于产品从入库到交付全过程的控制。2 工作职责
2.1库长主持库内的全面工作,负责建立全成品的入库、出库手续,严把质量关;负责核查仓库帐、卡、物的实际情况,及时杜绝差、错、漏;负责对产品的入库与出库做到心中有数,积极配合生产部门及经营部门的工作。
2.2 保管员负责凭终检认可单和当月计划入库产品,杜绝一切非正式手续和未经终检合格的物品入库;负责组织包装工人,对产品进行清洗包装及监控;负责产品先进先出的原则,保持产品在有效期内交付给顾客。
2.3会计负责与财务帐帐相符,负责库内帐、卡、物相符管理,以确保日清月结,提供月度报表。
2.4 保管员负责对包装物及包装、搬运、贮存全过程的检验。3 程序内容
3.1产品的入库,严格凭产品最终检验认可单及当月计划数办理入库。入库时,保管员必须亲临现场,认真验收终检员发出的合格证明报告,(包括成品最终检验认可单、合格证、总成检验报告等)。若上述合格证明齐全、完整,数量文实相符,方可办理入库交接手续。并及时上帐、上卡,确保产品准确入库。
3.2 产品的包装:产品的包装箱必须凭质量部的检验手续入库,包装箱不符合技术质量要求的,成品库管理人员必须禁止使用。
3.3 包装过程:产品入库后,由库内管理人员调派包装工人对产品进行清洗包装,包装工包装产品时必须按技术中心制定的包装工艺流程进行。随产品的附件、合格证、说明书及三包服务卡等应放在箱内进行包装,不得漏装、误装。3.4 产品的转运及装卸:严格按照产品搬运工作制度执行,库内管理人员及包装工人应知道不同产品的特性,选择不同的吊具及搬运方法,采用相适应的搬运设备工具,以防损坏产品及包装箱。
3.5 产品的码放:库内管理人员应依据本库的实际库容及库存量灵活管理仓库的码放,达到道路畅通,分品种、规格、型号、码放成块成形。各种产品的码放标准:盆角齿18层,减总4层,减壳5层,差壳6层,行齿8层,侧齿6层,轴承座6层,油封座6层,角齿突元6层,主轴突元6层,差总5层,其它小件包装(每个箱体高度在30mm以下)5层。桥类的每堆限码台数(不得超过)大桥20台,小桥前桥40台,小桥后桥24台。禁止超过以上规定数量,严防超高倒塌或重压受损。各种产品码放时,严禁出现人为倒塌现象。每个产品分品种型号,每堆码放达到以上规定的数量后,按产品的型号、数量挂上标识。
3.6 防护:仓库管理人员必须做到产品“三清”(数量清、质量清、帐卡清)、“五无”(无差错、无灰尘、无丢失、无损坏、无锈蚀)。产品在库内按程序运转时,禁止落地(不包括桥类)。每天工作前,库内管理人员组织包装工人对库内行车进行试运行,对吊具作检查,打包机由操作工每天进行5-10分钟的保养,在库内出现的产品受损现象除严格执行“不合格品的控制程序”外,还必须进行事故的“四不放过”教育(事故原因不查清不放过,当事人不受教育不放过,事故隐患整改措施不制定不放过,措施不落实不放过)。产品在防护期,保管员应定期对产品检查,在超防护期前对产品重新进行防护。3.7 交付
3.7.1所有产品的交付,先在营销公司开票,后到财务部付款(或上往来帐),再凭发票提货联(必须有财务专章及财务经办人章)到成品库提货。产品交付时,保管员必须亲临现场组织交付,禁止由客户自己取货,保管员应对产品按提货单的品名、规格、型号、数量予以核点,不得多发、少发、错发,违者予以全额赔偿。产品交付完毕后,由发货人和提货人(或托运代办人)在提货联上签字,及时调整标牌数量,填写成品发货记录单,并同步上帐。3.7.2 根据客户要求需要代办托运的,凭有效的发票提货联,由销售计划员填写代办托运单,交成品库保管员及时发货,发货程序按3.7.1执行。
3.7.3 托运代办人在发运地点,必须按代办托运单的所有明细项目,如实交接,填写承运方的单据(按品名、型号、数量、重量填写),确保承运部门把产品完全准确地交付到客户手中。