|
Roger,
I've looked at all your posts and images and they are all over the place... The KERNEL_SECURITY_CHECK_FAILURE is probably due to a KPP violation. But your other screenshot shows a win32k exception... and your new screenshot shows corrupt files on disk.
Of course I don't know for sure... but I would highly suspect a hardware failure. If I were you I would stress test your RAM with the open source tool Memtest86+[^].
The KPP violation is a very strong indicator of a bad stick of RAM.
Best Wishes,
-David Delaune
Scientiæ de conservata veritate.
|
|
|
|
|
Randor wrote: Of course I don't know for sure... but I would highly suspect a hardware failure. If I were you I would stress test your RAM with the open source tool Memtest86+[^].
Just saying but if you can't boot the machine to run the test another way:
try starting up with just one stick in, then try the other stick also by itself.
(yes even though it's DDR PC's can run single stick.)
also side note: back to your older post
"... The computer cannot tell the difference from one boot-up to another. I don't get it"
sometimes progs like firefox immediately check for updates on first start of the day
so 2nd time reboot (mins to only a few hours later) won't run the update check
Message Signature
(Click to edit ->)
|
|
|
|
|
Randor
I'm typing this from Ubuntu. I wiped my entire machine (deactivated my purchased win10 home) and installed ubuntu to see if things will run or fail.
Thanks very much for checking this out. I really appreciate your time.
Randor wrote: The KPP violation is a very strong indicator of a bad stick of RAM.
I thought this too, because I know when you get this kind of random crashing that it is often RAM.
I recently opened up the machine and insured they were re-seated properly -- just to make sure.
I also ran the Built-in RAM test and it completed and said all was well.
Now that I am on Linux/Ubuntu with the NVidia drivers installed, I want to see how the machine fares.
We will see. Thanks again for your input and I will let you know.
|
|
|
|
|
I am fairly certain your issue is not Windows 10 fault, but something that is not integrating properly with Windows 10. I did not read your whole post as it is obnoxiously long.
I use Windows 10 on my home and work machines, no issues. Our entire Dev team uses Windows 10 with no issues.
|
|
|
|
|
Slacker007 wrote: did not read your whole post as it is obnoxiously long.
I resemble that remark!!!
I'm running Ubuntu with NVidia drivers with no problems at all. We will see how long this lasts.
But I can tell already that it is far more stable.
And I do wonder what the utility I ran on Win10 meant about the corrupted files. That's probably the normal state for win10 1903 or something.
|
|
|
|
|
bummer, dude
«One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali
|
|
|
|
|
why do this?
for(int i = 0;i<arr.Length;i++)
{
if(arr[i]==valueToFind)
{
break;
}
}
instead of
for(int i = 0;i<arr.Length;i++)
{
if(arr[i]==valueToFind)
{
i=arr.Length;
}
}
hengh?? why you still use break?
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
|
if it matters enough to be a purist about it, then i think it matters. if it doesn't matter to you, you're not a purist about it.
bow before my tautology!
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
I bow before thee my Goodwife CodeWitch.
I'm not a purist in this matter, but I still agree with Griff though.
|
|
|
|
|
I do as well, but then i have no qualms about any out of band control flow statements except throw.
It's all in how and where you use them, IMO.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
Throw doesn't belong to the control flow.
Oh, maybe I'm a bit purist after all.
|
|
|
|
|
i mean, i agree that it shouldn't, but it causes control flow changes and can be used that way.
but like i said, i agree. Just because you can do something, doesn't mean you should.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
I've seen MS themselves doing it.
Sometimes when external code that you don't have control over lacks certain functionality, it might be your only choice. (been there, done that. )
|
|
|
|
|
right? that's why i *never* throw!
kidding!
but in seriousness I take great pains to prevent the users of my code from having to catch exceptions on failure if they don't want them.
Like I'll provide TryXXXX to complement XXXX
Pck: Code Roundup and Quick Start Guide[^]
In PCK I have an elaborate error handling system whereby it finds errors and continues processing only (optionally) throwing an exception at the end with ALL the errors it encountered.
Otherwise they're reported as "messages" with different severity/errorlevels
probably the most elaborate exception handling i've had to do in managed code.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
Because break is a lot clearer - and less likely to cause problems later if the for loop end condition gets modified.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
rather my point. sometimes you need a good break, continue, or even a goto (though the latter i typically reserve for generated state machines)
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
I love goto. Lets go-back-to VB. I've made use of gotos to a great extent during my VB times.
like, On Error: GoTo the magical origin of the universe.
An equally 'powerful' instruction - JMP. But JMP is never ashamed of being JMP, cuz it's assembly. You can go roam anywhere you want, it's got the license.
|
|
|
|
|
ugh, VB. I use goto in some of my code.
Perfectly acceptable place to use GOTO - generated state machine code:
public static bool AcceptsByte(Grimoire.ParseContext pc)
{
pc.EnsureStarted();
if (-1 == pc.Current) return false;
if ((48 == pc.Current))
{
pc.Advance();
goto AcceptsByte_s1;
}
if ((49 == pc.Current))
{
pc.Advance();
goto AcceptsByte_s2;
}
if ((50 == pc.Current))
{
pc.Advance();
goto AcceptsByte_s4;
}
if ((51 <= pc.Current && 57 >= pc.Current))
{
pc.Advance();
goto AcceptsByte_s3;
}
return false;
AcceptsByte_s1:
if (-1 == pc.Current) return true;
return -1 == pc.Advance();
AcceptsByte_s2:
if (-1 == pc.Current) return true;
if ((48 <= pc.Current && 57 >= pc.Current))
{
pc.Advance();
goto AcceptsByte_s3;
}
return -1 == pc.Advance();
AcceptsByte_s3:
if (-1 == pc.Current) return true;
if ((48 <= pc.Current && 57 >= pc.Current))
{
pc.Advance();
goto AcceptsByte_s1;
}
return -1 == pc.Advance();
AcceptsByte_s4:
if (-1 == pc.Current) return true;
if ((48 <= pc.Current && 52 >= pc.Current))
{
pc.Advance();
goto AcceptsByte_s3;
}
if ((53 == pc.Current))
{
pc.Advance();
goto AcceptsByte_s5;
}
if ((54 <= pc.Current && 57 >= pc.Current))
{
pc.Advance();
goto AcceptsByte_s1;
}
return -1 == pc.Advance();
AcceptsByte_s5:
if (-1 == pc.Current) return true;
if ((48 <= pc.Current && 52 >= pc.Current))
{
pc.Advance();
goto AcceptsByte_s1;
}
return -1 == pc.Advance();
}
but then I wouldn't write that code by hand. Too error prone.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
Yep, goto on a lengthier code is definitely not meant for the human eyes.
|
|
|
|
|
what's cool about that code though? It's directly translatable from visual graphs of the state objects it represents.
I use graphviz to visualize them, and you can see right in the graph where the code matches up. It's beautiful - a 1:1 translation.
So the code actually is human readable, you just need the map (the visual graph) for it.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
Quote: but then I wouldn't write that code by hand. Too error prone.
Isn't this exactly the point? All code gets compiled/interpreted/translated to jmps eventually.
The goals of the written code should be correctness, understandability and simplicity.
Leave the gotos and the clever techniques to the compiler.
|
|
|
|
|
You trust your compiler?? Wow!
|
|
|
|
|
I'll optimize when i need to. that doesn't always make the code readable.
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
|
|
|
|
|
The reality is that with modern code, it's so far removed from the underlying machine language that gets executed that there's no point trying optimisations at the level of a break vs setting the iterator.
Optimisations nowadays are at architectural levels - managing tight loops, using appropriate data structures, parallelisation, resource access.
|
|
|
|