|
[讨论]论坛里有没有做芯片研发的
茅山小僧 我也想从良换行,不想搞逆向了,老哥芳龄几何啊,我感觉自己老了,没勇气换 在下年已27,想换年龄不是问题,有动摇之心就趁早
最后于 2020-7-20 17:28
被哇咔咔zs编辑
,原因:
|
|
|
|
[讨论]论坛里有没有做芯片研发的
库尔 我也在往pcb方向和神经网络算法那块挖掘。感觉pcb就是做个手脚,真正厉害的是神经网络之类的算法(对开发人员很有用,但是客户不怎么买单)。但是往神经网络那块挖掘感觉就目前而言这东西难商业落地。pcb一 ...在下还没了解过pcb是哪方面 和FPGA有什么关系 |
|
[讨论]论坛里有没有做芯片研发的
若鸟 我这刚想开发转逆向呢,请问大佬退出逆向的理由是啥呢? 以下仅仅个人经历所悟: 从2010自学C++起,学习汇编逆向、驱动开发到现在,虽然在1线有房有车了 想换个轻松点的方式,哪怕不轻松也不想像现在的做后台难出头
最后于 2020-7-20 15:49
被哇咔咔zs编辑
,原因:
|
|
|
|
[讨论]论坛里有没有做芯片研发的
amzilun 我觉得有编程基础可以去搞数字集成电路,模拟集成电路需要电路的知识太多了。学学VHDL,verilog语言,搞搞FPGA编程啥的也挺好 有C\C++ 汇编逆向和Win驱动开发经验,正往FPGA方向(目前学习verilog语言中)学习,不知道走错路了没有。
最后于 2020-7-20 15:11
被哇咔咔zs编辑
,原因:
|
|
[讨论]论坛里有没有做芯片研发的
limee 楼主,我搞过单片机。是电子系毕业的,2005左右想搞的PCB软件,就注册到了看雪论坛。搞芯片的话,目前光刻机是个难度很高高的工作。一台光刻机需要8亿人民币左右。我国的芯片和国外至少有20年,所以兄弟要 ...好的 谢谢,我也正在看《数字设计与verilog实现》 |
|
|
|
[求助][求助]ZwQueryDirectoryFile 枚举文件失败
简直太奇怪了 看我的注释 BOOLEAN MyQueryFileAndFileFolder(wchar_t *pszDirectoryName) { HANDLE hFile = NULL; OBJECT_ATTRIBUTES objectAttributes = { 0 }; IO_STATUS_BLOCK iosb = { 0 }; NTSTATUS status = STATUS_SUCCESS; UNICODE_STRING ustrPath; wchar_t wszBuffer[MAX_PATH*2]; // 获取文件句柄 swprintf(wszBuffer, sizeof(wszBuffer), L"\\??\\%s", pszDirectoryName); ((pRtlInitUnicodeString)(&ustrPath, wszBuffer)); InitializeObjectAttributes(&objectAttributes, &ustrPath, OBJ_CASE_INSENSITIVE, NULL, NULL); status = pZwCreateFile(&hFile, GENERIC_READ, &objectAttributes, &iosb, NULL, FILE_ATTRIBUTE_NORMAL, FILE_SHARE_READ | FILE_SHARE_WRITE, FILE_OPEN, FILE_DIRECTORY_FILE, NULL, 0); if (!NT_SUCCESS(status)) { // KdPrint(("ZwCreateFile", status)); return FALSE; } // 遍历文件 // 注意此处的大小!!!一定要申请足够内存,否则后面ExFreePool会蓝屏 ULONG ulLength = (2 * 4096 + sizeof(FILE_BOTH_DIR_INFORMATION)) * 0x2000; PFILE_BOTH_DIR_INFORMATION pDir = (PFILE_BOTH_DIR_INFORMATION)new char [ulLength]; // 保存pDir的首地址,用来释放内存使用!!! PFILE_BOTH_DIR_INFORMATION pBeginAddr = pDir; // 获取信息 status = pZwQuerydirectoryFile(hFile, NULL, NULL, NULL, &iosb, pDir, ulLength, FileBothDirectoryInformation, FALSE, NULL, FALSE); if (!NT_SUCCESS(status)) { delete pDir; CloseHandle(hFile); return FALSE; } // 遍历 UNICODE_STRING ustrTemp; UNICODE_STRING ustrOne; UNICODE_STRING ustrTwo; pRtlInitUnicodeString(&ustrOne, L"."); pRtlInitUnicodeString(&ustrTwo, L".."); WCHAR wcFileName[1024] = { 0 }; Sleep(500); //+了这句就正常打印出来,删掉的话,下面就无法打印 执行一次就跳出循环了 while (TRUE) { // 判断是否是上级目录或是本目录 RtlZeroMemory(wcFileName, 1024); RtlCopyMemory(wcFileName, pDir->FileName, pDir->FileNameLength); pRtlInitUnicodeString(&ustrTemp, wcFileName); if ((0 != pRtlCompareUnicodeString(&ustrTemp, &ustrOne, TRUE)) && (0 != pRtlCompareUnicodeString(&ustrTemp, &ustrTwo, TRUE))) { if (pDir->FileAttributes & FILE_ATTRIBUTE_DIRECTORY) { // 目录 // KdPrint(("[DIRECTORY]\t%wZ\n", &ustrTemp)); OutputDebugStringW(ustrTemp.Buffer); } else { // 文件 // KdPrint(("[FILE]\t\t%wZ\n", &ustrTemp)); OutputDebugStringA("111"); OutputDebugStringW(ustrTemp.Buffer); } } // 遍历完毕 if (0 == pDir->NextEntryOffset) { // KdPrint(("\n[QUERY OVER]\n\n")); break; } // pDir指向的地址改变了,所以下面ExFreePool(pDir)会出错!!!所以,必须保存首地址 pDir = (PFILE_BOTH_DIR_INFORMATION)((PUCHAR)pDir + pDir->NextEntryOffset); } // 释放内存, 关闭文件句柄 delete pBeginAddr; CloseHandle(hFile); return TRUE; }
最后于 2019-12-27 02:09
被哇咔咔zs编辑
,原因:
|
|
[求助]ZwQueryDirectoryFile 枚举文件失败
麻烦管理删了这贴谢谢,我发起悬赏了 |
|
|
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值