本文整理汇总了Java中gov.nasa.jpf.search.Search.getVM方法的典型用法代码示例。如果您正苦于以下问题:Java Search.getVM方法的具体用法?Java Search.getVM怎么用?Java Search.getVM使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类gov.nasa.jpf.search.Search
的用法示例。
在下文中一共展示了Search.getVM方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getPreemptions
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
int getPreemptions (Search search){
VM vm = search.getVM();
int n=0;
ThreadChoiceGenerator cg = vm.getLastChoiceGeneratorOfType(ThreadChoiceGenerator.class);
while (cg != null){
ThreadChoiceGenerator cgPrev = cg.getPreviousChoiceGeneratorOfType(ThreadChoiceGenerator.class);
if (cg.isSchedulingPoint()) {
System.out.println(" " + cg);
if (cgPrev != null) {
ThreadInfo ti = cg.getNextChoice();
ThreadInfo tiPrev = cgPrev.getNextChoice();
if (tiPrev != ti && cg.contains(tiPrev)) {
n++;
}
}
}
cg = cgPrev;
}
return n;
}
示例2: searchStarted
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
@Override
public void searchStarted(Search search){
Pair<Integer, Integer> init = new Pair<Integer, Integer>(-1, 0);
stack = new Stack<Pair<Integer, Integer>>();
stack.push(init);
contours = new ArrayList<Set<Pair<Integer, Integer>>>();
contours.add(new TreeSet<Pair<Integer,Integer>>());
contours.get(0).add(init);
vm = search.getVM();
initialize(vm);
printHeader();
printStartState("S");
}
示例3: searchStarted
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
@Override
public void searchStarted(Search search){
vm = search.getVM();
initialize(vm);
printHeader();
printStartState("S");
}
示例4: searchStarted
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
public void searchStarted(Search search) {
VM vm = search.getVM();
Config config = search.getConfig();
this.startTime = System.currentTimeMillis();
this.maxTime = config.getInt("jpf.time_limit", -1);
System.out.println("****TIME BOUNDED SEARCH - LIMIT SET TO (SECONDS): " + maxTime + " ****");
this.maxTime = this.maxTime * 1000; //convert to milliseconds
}
示例5: exec
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
private void exec(String name, Search search) {
VM vm = search.getVM();
PCChoiceGenerator choiceGenerator = vm
.getLastChoiceGeneratorOfType(PCChoiceGenerator.class);
if (choiceGenerator != null) {
PathCondition pc = choiceGenerator.getCurrentPC();
if (search.getErrors().size() < 0) {
return;
}
Property property = search.getLastError().getProperty();
if (!property.getErrorMessage().contains(
AssertionError.class.getCanonicalName())) {
pc.header = pc.header.not();
}
/*
* if (property instanceof NoUncaughtExceptionsProperty) {
* NoUncaughtExceptionsProperty noUncaughtExceptionsProperty =
* (NoUncaughtExceptionsProperty) property; String clName =
* noUncaughtExceptionsProperty
* .getUncaughtExceptionInfo().getCauseClassname();
* if(!clName.equals(AssertionError.class.getCanonicalName())) {
*
* } System.out.println(clName); }
*/
//
/*
* if (instruction instanceof IfInstruction) { if
* (((IfInstruction) instruction).getConditionValue()) {
* pc.solve();
*
* } }
*/
pc.solve();
Map<String, Object> varsVals = new HashMap<String, Object>();
pc.header.getVarVals(varsVals);
if (varsVals.containsKey("guess_fix")) {
this.result = varsVals.get("guess_fix");
if (processor.getType().equals(Boolean.class)) {
this.result = this.result.equals(1);
}
}
logger.debug("JPF Result " + this.result);
}
}
示例6: log
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
private boolean log(Search search)
{
VM vm;
Path path;
Transition trans;
ChoiceGenerator cg;
double percent, delta;
long currentState, expectedState, currentTime, expectedTime;
int i, size, processed;
vm = search.getVM();
path = vm.getPath();
size = path.size();
percent = 0.0;
delta = 1.0;
processed = 0;
for (i = 0; i < size; i++)
{
trans = path.get(i);
cg = trans.getChoiceGenerator();
delta /= cg.getTotalNumberOfChoices();
processed = cg.getProcessedNumberOfChoices() - 1;
percent += delta * processed;
}
if (size == 0)
percent = 1.0;
if (m_lastPercent > percent) // Sometimes a state is declared as processed but doesn't show up in the path so the percentage appears to go backwards.
return(false);
m_lastPercent = percent;
currentState = vm.getStateCount();
expectedState = (long) (currentState / percent);
currentTime = System.currentTimeMillis() - m_startTime;
expectedTime = (long) (currentTime / percent);
m_formatter.format("State: %,d / %,d (%g%%) Time: ", currentState, expectedState, 100.0 * percent);
formatTime(expectedTime);
m_buffer.append(" - ");
formatTime(currentTime);
m_buffer.append(" = ");
formatTime(expectedTime - currentTime);
m_out.println(m_buffer.toString());
m_buffer.setLength(0);
return(true);
}
示例7: propertyViolated
import gov.nasa.jpf.search.Search; //导入方法依赖的package包/类
@Override
public void propertyViolated(Search search) {
VM vm = search.getVM();
SystemState ss = vm.getSystemState();
trace = ss.getChoiceGenerators();
}